2010-06-17 53 views
0

我正在为我的语言编写预处理程序。在预处理器中,我输出了一行不在源文件中的行。这会导致Anltr创建的任何错误消息增加一行。解析器可以告诉词法分析器忽略换行符吗?

Lexer处理行数,所以我想知道是否有解析器告诉词法分析器减少行数或忽略特定换行符的方法。

我也接受其他关于如何解决此问题的建议。

我唯一的限制就是将额外的行与现有的代码放在一起。我宁愿保持它自己的路线,以保持我的分析健全。

回答

0

如果删除预处理器行,并且用新行代替而不是添加新行?然后解析预处理器的输出。

+0

我不确定我了解您的回复。预处理器正在向常规语言解析器必须解析的文件中添加一行。这会导致行号在Antlr生成的消息中关闭。 – chollida 2010-06-17 21:57:14