Я использую бизон для генерации парсера, однако при компиляции парсера с помощью MSVC я получаю сообщение об ошибке, которое указывает на то, что в строке после последней строки в моем файле бизонов есть ошибка, содержащая слишком много символов.
Я написал синтаксический анализатор для языка DSL, который использовал бизон 2.7 для окон, недавно я пытался использовать Conan для управления своими зависимостями, что позволило мне получить более новую версию win_bison (3.3.2). Я проверил сгенерированный исходный файл C ++ и обнаружил, что конец файла содержит следующий фрагмент кода.
#line 80 "Grammar.y" // lalr1.cc:1243
'_m4eof'
_m4eof
Последние 2 строки предотвращают компиляцию и генерируют сообщения об ошибках, эти строки не отображаются сwin_bison 2.7.