Результаты поиска по запросу "yacc"

1 ответ

Невероятно полезно, спасибо! И действительно, мотивирующая грамматика - это лямбда-исчисление, но я смог разрешить конфликты с помощью вашего ответа.

я есть следующая грамматика yacc / bison / happy: %token if TokenIf then TokenThen else TokenElse true TokenTrue false TokenFalse %left APP %right IF %% Hungry : NoHungry | Hungry NoHungry %prec APP | if Hungry then Hungry else Hungry %prec IF ...

1 ответ

 Заголовок о - и, возможно, объясняет, почему просто использование различных объектов контекста синтаксического анализатора для каждой параллельной операции недостаточно. (Или, если этого достаточно, какие проблемы у вас возникают при его реализации.)

ствительно предпочел бы рабочий пример любому объяснению. Все, что я читал на сайте документации Bison, противоречит тому, что говорит Флекс. Один говорит объявитьyylex как int yylex (yyscan_t yyscanner);другой хочет, чтобы это было: int ...

1 ответ

это был очень информативный ответ, вы действительно помогли мне понять.

я проблемы с исправлением сдвига, уменьшающего конфликт в моей грамматике. Я попытался добавить -v, чтобы прочитать вывод проблемы, и он ведет меня к состоян...

ТОП публикаций

1 ответ

flex / bison: как переключить два лексера в одном входном файле

Как я могу передать открытый файл, например читать другим сканером следующий сканер - и отдавать его парсеру?

1 ответ

Сдвиг бизонов / уменьшение конфликтов - компилятор тигров

Я написал файл yacc в соответствии с Tiger Book (приложение A, руководство Tiger).Но есть еще некоторые сдвиги / сокращения конфликтов. Я не знаю, как разреш...

2 ответа

Простые грамматики YACC дают ошибку

У меня вопрос к компилятору yacc. Я не собираю простую грамматику YACC. Вот раздел кода: /*anbn_0.y */ %token A B %% start: anbn '\n' {printf(" is in anbn_0\n"); return 0;} anbn: empty | A anbn B ; empty: ; %% #include "lex.yy.c" yyerror(s) char ...

2 ответа

Простые грамматики YACC дают ошибку

У меня вопрос к компилятору yacc. Я не собираю простую грамматику YACC. Вот раздел кода:

1 ответ

Конфликт «сдвиг / уменьшение» по однозначной грамматике

Кусок кода моей грамматики сводит меня с ума. Я должен написать грамматику, которая позволяет писать функции с несколькими входами например function begin a: <statments> b: <statements> endПроблема в том, что это заявления, которые являются ...

1 ответ

Конфликт «сдвиг / уменьшение» по однозначной грамматике

Кусок кода моей грамматики сводит меня с ума.Я должен написать грамматику, которая позволяет писать функции с несколькими входаминапример

1 ответ

Уменьшать бизонов до начального символа, только если найден EOF

Я использую Bison с Flex. У меня есть следующее правило в моем входном файле Yacc: program : PROGRAM m2 declarations m0 block {cout << "Success\n"} ;Проблема в том, что если у меня есть программа, которая является частично правильной, но затем ...