我有一条规则
nls
: NL*
;
使用词法分析器
// Inside (...) and [...] but not {...}, ignore newlines.
NL : '\r'? '\n' { this.ignoreTokenInsideParens(); }
;
在编译时,我得到了
antlr:
[java] error(69): Pel.g4:19:86: label nls conflicts with rule with same name
我的理解是,标签是您为制作的替代分支提供的#names。我没有这样的标签。
那么,这个错误是什么意思?
答案 0 :(得分:2)
感谢@BartKiers,我查看了每个nls使用的内容,发现我有一个错误的=符号,我在规则中删除了变量赋值,但错过了=,如
expression nls AND nls =expression
这就是问题所在。
答案 1 :(得分:1)