Files
TransPyC/lib/vast_c
TermiNexus 305242aa8a feat(parse): typedef 右值纳入类型位,支持 const T / T*
X: t.CTypedef = const str / = const uint16* 现按类型位解析(含 typedef X = T 语法糖):

- 文本层:_ExpandTypeDescriptors 新增 _IsTypedefAnnotationRhs(= 右侧且语句含 CTypedef);

- 解析层:vast.Parser._TryParseAnnAssign 对 CTypedef 注解的右值走 _ParseTypeAnnotation,vast_c.c 同步并重建 _parser.pyd;

- 文本回退:TypeAnnotationResolver._NormalizeTypedefRhsText 把 const T / T* 归一为 | 联合;

- 值解析:LLVMTypeMapper.resolve_typedef_value_type 把 CConst/CVolatile 限定符标记视为无类型(_TYPEDEF_VALUE_QUALIFIERS),修 const str 被误解析成 CConst * 导致 LPCSTR 登记失败。
2026-10-05 20:36:29 +08:00
..