,我發現了以下錯誤:移進/歸約衝突在Java這杯
Warning : *** Shift/Reduce conflict found in state #2
between ExitLoopStatement ::= EXITLOOP (*)
and VarAccess ::= (*) DOLLAR IDENTIFIER
under symbol DOLLAR
這是我使用的語法。目前我有任務和中斷(每個中斷語句可以指定要退出的循環級別的數量)。
start with StatementList;
StatementList
::= Statement
|
StatementList Statement
;
Statement
::= AssignmentStatement
|
ExitLoopStatement
;
AssignmentStatement
::= VarAccess EQ_OP VarAccess
;
VarAccess
::= DOLLAR IDENTIFIER
;
ExitLoopStatement
::= EXITLOOP
|
EXITLOOP VarAccess
;
從我的理解,問題是,我遇到EXITLOOP之後,下一個標記可以是一個分配的開始或級別可供出口的數量。
有什麼辦法可以解決這個問題嗎?
謝謝!
添加語句分隔解決我的問題,謝謝! – berendeanicolae