_translate_method_call/_translate_super_call 的多继承字节偏移调整会生成 bitcast i8* -> %SHA1.ClassGenBase*,但 PrintModule 只扫描函数签名、 不扫函数体指令,跨模块基类类型未被声明导致 llc 报 use of undefined type。 在 bitcast 前调用 module_ensure_opaque_for_type(幂等,仅对未定义类型 添加 = type opaque)。
_translate_method_call/_translate_super_call 的多继承字节偏移调整会生成 bitcast i8* -> %SHA1.ClassGenBase*,但 PrintModule 只扫描函数签名、 不扫函数体指令,跨模块基类类型未被声明导致 llc 报 use of undefined type。 在 bitcast 前调用 module_ensure_opaque_for_type(幂等,仅对未定义类型 添加 = type opaque)。