为了以我的语言在非类型化 var 中保存不同类型(str 或 double)的值,我需要一个如下结构:
Struct BaseVarStruct{
bool _isString;
union {
string _sVal;
double _dVal;
}_val;
};
我尝试使用 StructType* BaseVarType=StructType::create("basevar",type::getInt1Ty(),???),但我不确定它是否是文字。在官方类 ref 中,有一个类名为“UnionType”,但我找不到它。LLVM 现在可能不支持联合类型?或者我可以通过 StructType 定义联合类型并给所有成员相同的偏移量?