我有一个看起来像这样的 LLVM IR 代码:
declare i32 @snprintf(i8*, i32, i8*, ...)
define i32 @main () {
...
%9 = load i8*, i8** %8
%10 = load i8*, i8** %2
%11 = load i8*, i8** %0
%12 = load i8, i8* %11
%13 = call i32 (i8*, i32, i8*, ...)* @snprintf(i8* %10, i32 3, i8* %9, i8 %12)
...
最后一行提出了这一点:
error: '@snprintf' defined with type 'i32 (i8*, i32, i8*, ...)*'
%13 = call i32 (i8*, i32, i8*, ...)* @snprintf(i8* %10, i32 3, i8* %9, i8 %12)
我研究了 LLVM 文档,但我不知道出了什么问题。:-(
提前致谢!