我在文件ANTLR4 power.g4中的语法如下:
assign : id '=' expr ;
id : 'A' | 'B' | 'C' ;
expr : expr '+' term
| expr '-' term
| term ;
term : term '*' factor
| term '/' factor
| factor ;
factor : expr '**' factor
| '(' expr ')'
| id ;
WS : [ \t\r\n]+ -> skip ;当我运行命令
antlr4 power.g4
发生了此错误:
错误(119):power.g4:下列规则集相互左-递归费用,因子,术语
我能做什么?
发布于 2017-11-03 21:28:14
为了避免左递归错误,将所有形式的expr放在一个规则中,按期望的优先级排序:
expr : '(' expr ')'
| expr '+' expr
| expr '-' expr
| expr '*' expr
| expr '/' expr
| expr '**' expr
| id
;https://stackoverflow.com/questions/47100729
复制相似问题