Описание тега shift-reduce-conflict

Shift Reduce - это парадигма парсера LR. Конфликт сдвига / уменьшения возникает при неоднозначности анализируемой грамматики.

При синтаксическом анализе с использованием LALR-анализатора стек хранится из токенов, которые были просмотрены, затем с учетом того, что находится на входе и что находится в стеке, либо следующий токен переносится в стек, либо производится производство и необходимые токены выскочили из стопки и уменьшили до соответствующего производства. Конфликт уменьшения сдвига возникает, когда переданы токены в стеке и дан ввод, и сдвиг, и действие сокращения должны произойти в соответствии с грамматикой.

Эта неоднозначность часто смягчается за счет использования инструкций приоритета для синтаксического анализатора.