getelementptr类型后的预期逗号.LLVM

Gil*_*esz 1 llvm

(1) @str = private constant [13 x i8] c"Hello World\0A\00"
(2) define i32 @main(){
(3) %r2 = getelementptr [13 x i8]* @str, i32 0, i32 0
(4) ret i32 0
(5) }
Run Code Online (Sandbox Code Playgroud)

我在第3行遇到错误错误:expected comma after getelementptr's type.怎么处理呢?

Kri*_*itz 5

getelemtptr期望您正在索引的类型(没有指针)作为它的第一个参数.在你的情况下[13 x i8],所以你可能想做这样的事情:

%r2 = getelementptr [13 x i8], [13 x i8]* @str, i32 0, i32 0
Run Code Online (Sandbox Code Playgroud)