Files
ViperC/App
TermiNexus 87e2356eea feat(type): rawptr[T]/t.CPtr[T] 下标形也走前向声明,并覆盖同文件前向引用
承接 c0d3231(X | t.CPtr 已改前向声明):
- t.CPtr[T] 分支:inner 解析为 None 时先尝试前向声明具名占位并返回
  Ptr(占位.Ty),保住类身份;无法确定类名/模块时才回 None 交多遍收敛。
  rawptr[T] 经 builtins typedef(rawptr = t.CPtr)兜底归一到本分支,故一并覆盖。
- _forward_declare_ptr_from_node 的 Name 分支补"本文件顶层类"回退:用
  StructGen.register_file_classes 登记的"{名字 → 本文件模块 SHA1}"前向声明,
  覆盖同文件前向引用 / 自我引用(如 JsonValue | t.CPtr 自引用字段)。

无编译验证。
2026-10-02 02:48:26 +08:00
..