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

4 ответа

Почему эта простая грамматика имеет конфликт сдвига / уменьшения?

%token <token> PLUS MINUS INT %left PLUS MINUSЭТО РАБОТАЕТ: exp : exp PLUS exp; exp : exp MINUS exp; exp : INT;У ЭТОГО 2 КОНФЛИКТА СМЕНА / СНИЖЕНИЕ: exp : exp binaryop exp; exp : INT; binaryop: PLUS | MINUS ;ПОЧЕМУ?

1 ответ

Почему этот код зубра производит неожиданный вывод?

гибкий код: 1 %option noyywrap nodefault yylineno case-insensitive 2 %{ 3 #include "stdio.h" 4 #include "tp.tab.h" 5 %} 6 7 %% 8 "{" {return '{';} 9 "}" {return '}';} 10 ";" {return ';';} 11 "create" {return CREATE;} 12 "cmd" {return CMD;} 13 ...

1 ответ

Токен END OF FILE с flex и bison (работает только без него)

ОК, это довольно странный вопрос, потому что то, что у меня есть, работает так, как я хочу. Я пишу парсер для выражения лямбда-исчисления. Таким образом, выражение может быть одним из четырех: переменнаяпостоянная(выражение ...

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

2 ответа

Yacc / Bison, минимизируйте количество, группируя математические операции

Я смотрю на источник Calc здесьhttp://epaperpress.com/lexandyacc/ [http://epaperpress.com/lexandyacc/] Я вижу эти тезисы в calc.y | expr '+' expr { $$ = opr('+', 2, $1, $3); } | expr '-' expr { $$ = opr('-', 2, $1, $3); } | expr '*' expr { $$ = ...

2 ответа

Как построить массив с помощью Bison / Yacc и рекурсивного правила

С помощью Bison я понял, как собрать все в одну длинную строку следующим образом: arg_list: WORD arg_list { strcat( $1, "IFS" ); $$ = strcat($1, $2); } | WORD ;а также: WORD arg_list { printf("%s, %s\n", $1, $2); }Но проблема в том, что мне ...

1 ответ

разобрать bibtex с помощью flex + bison: вновь

Последние несколько недель я пытаюсь написать парсер для bibtex ( http://www.bibtex.org/Format/ [http://www.bibtex.org/Format/]) файл с использованием flex и bison. $ cat raw.l %{ #include "raw.tab.h" %} value [\"\{][a-zA-Z0-9 ...

1 ответ

Простой Flex / Bison C ++

Я уже искал свой ответ, но я не получил быстрый ответ для простого примера. Я хочу скомпилировать сканер flex / bison + парсер с использованием g ++ только потому, что я хочу использовать классы C ++ для создания AST и подобных вещей. При ...

1 ответ

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

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

8 ответов

Написание компиляторов ... что правильно, а что нет? [закрыто]

Хорошо, в моем стремлении выяснить, что нужно для написания компилятора, я достиг некоторого препятствия. Кажется, что у каждой технологии или инструмента, которые я нахожу, есть какое-то противостояние. Я сейчас использую Bison и Flex, но у ...

4 ответа

конец файла бизона

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