Как решить сдвиг-уменьшить конфликт в YACC

Я написал компилятор с-минор с yacc и теперь он говорит, что имеет 2 сдвига-уменьшения конфликта, и это показывает эти 2 строки:

строка имеет переменную '-='
строка имеет переменную '+='

expression : var '=' expression 
            |var '+=' expression
            |var '−=' expression
            |simple_expression
            ;
var :ID
    |ID '[' expression ']'
    ;

Как я могу решить это?

0 ответов

Другие вопросы по тегам