Phase B+ 对纯声明模块(text.ll 无 define 行,如 stdio.vp 全 pass) 按设计不生成 .obj,但 Phase C 遍历可达模块时无条件要求 .obj 存在, 导致误杀。新增 StubMerger.IsDeclOnlyModule 判断(与 Phase B+ 内联 逻辑一致),.obj 缺失时声明文件静默跳过,实现文件缺失仍 fail-fast。
Phase B+ 对纯声明模块(text.ll 无 define 行,如 stdio.vp 全 pass) 按设计不生成 .obj,但 Phase C 遍历可达模块时无条件要求 .obj 存在, 导致误杀。新增 StubMerger.IsDeclOnlyModule 判断(与 Phase B+ 内联 逻辑一致),.obj 缺失时声明文件静默跳过,实现文件缺失仍 fail-fast。