我正在使用 ANTLRWorks 1.5 并尝试编译和调试。编译时有时会出现以下错误:
[11:44:52] TODO: run and send output to this console
[11:44:56] C:\Antlr\output\tryParser.java:102: error: <identifier> expected
[11:44:56] public final tryParser.poly_return poly() throws {
[11:44:56] ^
[11:44:56] C:\Antlr\output\tryParser.java:215: error: <identifier> expected
[11:44:56] public final tryParser.term_return term() throws {
[11:44:56] ^
[11:44:56] C:\Antlr\output\tryParser.java:504: error: <identifier> expected
[11:44:56] public final tryParser.exp_return exp() throws {
[11:44:56] ^
[11:44:56] 3 errors
谁能告诉我这个错误是什么意思?
有时它编译没有任何问题,但我总是在调试中得到“超时”错误。
我的代码是:
grammar try;
options {output=AST;}
tokens { MULT; } // imaginary token
poly: term ('+'^ term)*
;
term: INT ID -> ^(MULT["*"] INT ID)
| INT exp -> ^(MULT["*"] INT exp)
| exp
| INT
| ID
;
exp : ID '^'^ INT
;
ID : 'a'..'z'+ ;
INT : '0'..'9'+ ;
WS : (' '|'\t'|'\r'|'\n')+ {skip();} ;