出错管理
在编译过程中,既可能出现语法错误,也可能出现语义错误(如变量未声明等)。本项目将错误分为24类,如下表所示:
出错编号 | 出错原因 |
---|---|
-1 | 常量定义不是const开头,变量定义不是var开头 |
0 | 缺少分号 |
1 | 标识符不合法 |
2 | 不合法的比较符 |
3 | 常量赋值没用= |
4 | 缺少( |
5 | 缺少) |
6 | 缺少begin |
7 | 缺少end |
8 | 缺少then |
9 | 缺少do |
10 | call, write, read语句中,不存在标识符 |
11 | 该标识符不是proc类型 |
12 | read, write语句中,该标识符不是var类型 |
13 | 赋值语句中,该标识符不是var类型 |
14 | 赋值语句中,该标识符不存在 |
15 | 该标识符已存在 |
16 | 调用函数参数错误 |
17 | 缺少. |
18 | 多余代码 |
19 | 缺少until |
20 | 赋值符应为:= |
21 | until前多了; |
22 | 缺少, |