fix(lexer): 修复词法分析器中的关键字比较与字符串处理逻辑

修正了关键字表的注释,明确要求其必须按字典序排列以确保二分查找正确性。
在词法分析过程中,修复标识符解析时对 `cstring` 的使用问题,并调整 token 类型赋值顺序,
避免潜在的未定义行为。同时新增测试文件用于验证操作符、关键字及各类字面量的识别准确性,
并更新测试运行器的日志级别控制参数。
This commit is contained in:
zzy
2025-11-20 22:49:22 +08:00
parent f29fd92fdf
commit 164bab0f13
5 changed files with 181 additions and 7 deletions

View File

@@ -9,8 +9,9 @@ typedef enum ckeyword {
CEXT_ASM,
} ckeyword_t;
// Using Binary Search To Fast Find Keyword
/* clang-format off */
// WARNING: Using Binary Search To Fast Find Keyword
// 你必须确保其中是按照字典序排列
#define KEYWORD_TABLE \
X(asm , TK_BASIC_KEYWORD , TOKEN_ASM , CEXT_ASM) \
X(break , TK_BASIC_KEYWORD , TOKEN_BREAK , CSTD_C89) \