From 103c6ae865242be277ae4a85d0fddd1dd682fabd Mon Sep 17 00:00:00 2001 From: TermiNexus Date: Sat, 29 Aug 2026 05:51:55 +0800 Subject: [PATCH] =?UTF-8?q?docs(=5FType):=20=E6=A0=87=E8=AE=B0=E6=B3=9B?= =?UTF-8?q?=E5=9E=8B=E7=89=B9=E5=8C=96=E5=90=8D=E5=88=86=E8=A3=82=E5=AE=8C?= =?UTF-8?q?=E6=88=90=EF=BC=88=E9=97=AE=E9=A2=98=207=EF=BC=89=EF=BC=8C?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E6=9B=B4=E6=96=B0=E4=B8=BA=202/4/7/8=20?= =?UTF-8?q?=E5=B7=B2=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _Type.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/_Type.md b/_Type.md index b76adf2..dd72fa4 100644 --- a/_Type.md +++ b/_Type.md @@ -2,7 +2,7 @@ > 记录日期:2026-08-28 > 范围:TransPyV\App\lib\core\Gen\Type\* + GenTypes.vp + StructGenMixin.vp + Class\ClassGenEnum.vp + Expr\ExprGenCdef.vp -> 状态:问题 2/4/8 已完成,问题 1 部分完成,其余待办 +> 状态:问题 2/4/7/8 已完成,问题 1 部分完成,其余待办 ## 问题总览(按影响排序) @@ -64,7 +64,8 @@ 跨模块一侧写 `list[ast.AST | t.CPtr]`、另一侧写 `list[AST | t.CPtr]` → 两个特化名 → undefined symbol。 靠 `_norm_type_arg_name` SHA1 规范化修复。 -> **状态:待办** ⏳(SHA1 规范化已缓解,跨模块仍可能不一致) +> **状态:已完成** ✅ +> - ✅ `_norm_type_arg_name` 增强(TypeGenResolve.vp L233-368):顶层 `|` 分割改为括号感知(`list[A|B]` 不误分);新增嵌套泛型实参递归(`list[list[AST]]` → `list[list[{sha1}.AST]]`,内部按顶层 `,` 分割逐个 SHA1 规范化)——所有 module 表示统一为 Hash Namespace(`{SHA1}.Class`) ### 8. 窄化截断无诊断 宽→窄直接 `trunc` 静默丢位(ExprGenBase.vp L423),`buf[idx] = 0x1FF` 类写入静默截断。