【发布时间】:2015-08-27 21:05:57
【问题描述】:
我正在测试一个只返回 void 并且在使用lli 运行位码时出现核心转储错误(信号 65 或 73)的主函数:
define void @main() {
entry:
ret void
}
这是 lli 的限制还是在 LLVM 中完全非法?
我很清楚在 C++ 中声明返回类型为 void 的主函数是不正确的。事实上,我已经用 Clang 尝试过这个(这样做只是一个警告)并得到几乎相同的代码(由于#0 属性,不完全相同,但足够接近,我相信差异不会导致这个问题):
; Function Attrs: nounwind
define void @main() #0 {
entry:
ret void
}
【问题讨论】: