diff --git a/Doc/compiler/阶段3-语言层V2.md b/Doc/compiler/阶段3-语言层V2.md index 0a0d6c1..56ab3c9 100644 --- a/Doc/compiler/阶段3-语言层V2.md +++ b/Doc/compiler/阶段3-语言层V2.md @@ -19,7 +19,8 @@ | # | 问题 | 草案/结论 | 状态 | |---|---|---|---| | L1 | 内建 FB 类型名校验来源 | 查 machine.toml `[[fb]]` 表(15 条,替换 V1 硬编码 8 Tok);**用户 FB 类型来自用户源码**(FUNCTION_BLOCK 声明,不查 toml) | ✅ 已澄清 | -| L2 | 禁隐式转换范围 | 赋值/算术/比较类型严格一致 → type error;字面量例外(无类型字面量按上下文适配) | ⏳ | +| ~~L2~~ | ~~禁隐式转换范围~~ | **已定案(用户)**:**禁止任何隐式类型转换**——赋值/算术/比较类型严格一致 → type error;**字面量也禁止上下文适配**,字面量自带类型前缀/后缀(见 L9) | ✅ | +| L9 | 字面量类型化语法 | **新增(用户提出)**:字面量带类型前缀/后缀(IEC 风格 `类型名#值`?)——裸字面量处理、前缀/后缀形式待定 | ⏳ | | L3 | 字面量适配规则 | 整数字面量 → 任意目标(值域内);浮点字面量 → REAL/LREAL;进制字面量 + 值域检查 | ⏳ | | L4 | 浮点字面量 AST | 新增 ExprKind::LitReal(double 值) | ⏳ | | L5 | codegen_test 断言范围 | Codec disasm 文本 / 槽表值段布局 / 常量表 8B / max_stack / 头字段 | ⏳ |