我的源代码是这样的:
TEST.CPP:
void func(){
throw "abc";
}
int main(){
try{
func();
}
catch(...){
}
}
>我用clang编译代码
clang -S -emit-llvm test.cpp
>然后用lli解决它:
lli -force-interpreter test.ll
然后坠毁:
terminating with uncaught exception of type
char const*
我正在使用macbook(llvm3.6).
最佳答案 答案是肯定的.
>使用clang而不是clang编译C代码
>删除选项-force-interpreter
>添加选项-jit-enable-eh
我修改了一下你的测试:
#include <stdio.h>
void func(){
throw "test";
}
int main(){
try{
func();
}
catch(...){
printf("Gotcha\n");
}
}
结果:
$clang++ -S -emit-llvm test.cpp
$lli -jit-enable-eh test.ll
Gotcha