C++ llvm解释器能否处理c++;例外?
我的源代码如下: test.cpp:C++ llvm解释器能否处理c++;例外?,c++,exception-handling,llvm,interpreter,C++,Exception Handling,Llvm,Interpreter,我的源代码如下: test.cpp: void func(){ throw "abc"; } int main(){ try{ func(); } catch(...){ } } 我用clang clang -S -emit-llvm test.cpp 然后用lli执行它: lli -force-interpreter test.ll 然后崩溃了: 以类型为char const* 我正在使用macbook(llvm3.6)。答案是肯定的 编译C++代码,使用代码> C
void func(){
throw "abc";
}
int main(){
try{
func();
}
catch(...){
}
}
clang
clang -S -emit-llvm test.cpp
lli
执行它:
lli -force-interpreter test.ll
char const*
我正在使用macbook(llvm3.6)。答案是肯定的
- 编译C++代码,使用代码> CLAN++<代码>代替<代码> CLAN< /COD>
- 删除选项
-强制解释器
- 添加选项
#include <stdio.h>
void func(){
throw "test";
}
int main(){
try{
func();
}
catch(...){
printf("Gotcha\n");
}
}
#包括
void func(){
抛出“测试”;
}
int main(){
试一试{
func();
}
捕获(…){
printf(“明白了”);
}
}
结果:
$clang++-S-emit llvm test.cpp$lli-jit启用eh测试。ll
明白了