0
你好,我不明白为什么在assgnStmt生产中存在冲突。我正在使用coco/R,并在“assgnStmt:ID is start & successor of deletable structure”中得到“LL1警告”。 谢谢。语法LL(1)冲突
COMPILER program
CHARACTERS
Letter= 'a'..'z'.
Digit= '0'..'9'.
TOKENS
NUM= Digit {Digit}.
ID= Letter {Letter}.
PRODUCTIONS
program
= stmts
.
stmts = assgnStmt { assgnStmt ';' } .
assgnStmt
= {ID "==" } expr
.
expr = term { ('+' | '-') term } .
term = factor { ('*' | '/' ) factor } .
factor
= '(' expr ')'
| ID
| NUM
.
END program.
我添加了,这是更一般化的,使语义分析能够做正确的工作。 –
blob
是的,我应该提到这个选项。无论如何,我希望答案有所帮助。 – rici