TermiNexus
bdc5ec3e88
fix(HandlesImports): 跨模块展平父类无条件 force 重载,消除并行 worker 布局不确定
并行 worker 中 class_members[Generator] 曾出现 83/85/88/89/105/106 vs 114
的不确定变体:父类在某次展平时祖先未加载完成即被冻结为部分成员,guard
(成员非空即跳过)又阻止重载 → this_adjust 按不完整 members 计算字节偏移
→ 继承方法 self 错位 → 运行时越界崩溃(FuncTest is_exception_name strcmp,
错位 68 字节)。
修复:
- 父类加载循环无条件 force 重载:_TryLoadClassMembersFromPyi(force=True)
先清空该类 class_members/defaults/signeds/bitfields/byteorders/bitoffsets
再重建,字段顺序与定义模块 stub 一致;对其祖先递归同样强制重载,
最终所有 worker 展平结果确定性一致。
- 已加载父类经 class_sha1_map 直连定义模块 sha1 强制重载(O(1)),
避免对每个父类全量扫描 ModuleSha1Map。
- _TryLoadClassMembersFromPyi 返回 bool(找到即停),移除 [DIAG-EXT] 诊断。
2026-08-18 14:38:06 +08:00
..
2026-08-18 14:38:06 +08:00
2026-08-18 12:50:31 +08:00
2026-08-17 09:36:38 +08:00
2026-07-18 19:25:40 +08:00
2026-08-17 09:36:38 +08:00
2026-07-18 19:25:40 +08:00
2026-07-18 19:25:40 +08:00
2026-07-18 19:25:40 +08:00
2026-07-18 19:25:40 +08:00
2026-08-17 09:36:38 +08:00
2026-07-30 16:33:56 +08:00
2026-08-17 09:36:38 +08:00
2026-08-17 09:36:38 +08:00
2026-07-18 19:25:40 +08:00
2026-07-18 19:25:40 +08:00
2026-07-18 19:25:40 +08:00
2026-08-17 09:36:38 +08:00
2026-08-17 09:36:38 +08:00
2026-08-17 09:36:38 +08:00
2026-07-18 19:25:40 +08:00
2026-08-17 09:36:38 +08:00
2026-07-18 19:25:40 +08:00
2026-07-22 21:55:36 +08:00