为什么llvm :: FunctionType(Type *,bool)如果按照定义不带参数,则为bool?

问题描述 投票:0回答:1

FunctionType *FunctionType::get的一个定义是:

FunctionType *FunctionType::get(Type *Result, bool  isVarArg)   

documentation说:

创建不带参数的FunctionType

[我们什么时候将使用bool isVarArg参数来指示参数的类型是可变的,如果类型没有参数?

llvm llvm-ir llvm-c++-api
1个回答
0
投票
fixed”参数(将出现在ArrayRef<Type *> llvm::FunctionType::params () const中的参数)是文档“无参数”的意思,因此varargs被豁免。

如果您查看ArrayRef<Type *> llvm::FunctionType::params () const的注释,它说:

返回此函数类型所需的固定参数的数量。这不考虑varargs。

© www.soinside.com 2019 - 2024. All rights reserved.