TermiNexus
2b5ff215c7
fix(gen): 跨模块裸名 CExport/State 函数不再被误清,关键字实参不解析时 fail-fast
现象:stdlib.free(p = p) 生成 llvm.call @free()(零实参),mlir-opt 报 incorrect number of operands (0) for callee。根因:跨模块检查要求函数名前 16 字符等于模块 sha1,而 CExport/t.State 型函数(stdlib.free 等)本来就以裸名定义与声明,于是 found_func 被清成 None → 关键字实参路径整体跳过 → 位置实参循环一个也不翻译。修两处:1) 该检查对 is_cexport_func / _is_state_func_from_vpi 命中的函数放行;2) 带关键字实参却解析不出签名时 fail-fast,不再静默丢弃实参。
2026-10-08 22:38:28 +08:00
..
2026-10-08 22:38:28 +08:00
2026-10-07 19:03:16 +08:00
2026-10-07 19:03:02 +08:00
2026-10-08 21:28:49 +08:00
2026-10-05 17:55:52 +08:00