Описание тега bisonc++

Программа bisonC++ создает функцию и класс синтаксического анализатора C++.
2 ответа

bisonC++ - нет правил производства?

Я пытаюсь скомпилировать следующее с bisonC++: %baseclass-preinclude <iostream> %lsp-needed %token NUMBER COMMENT KEYWORD VARIABLE LOGICAND LOGICOR LOGICEQUALS DOUBLELESSER %token DOUBLEGREATER MOD LESSER GREATER OPEN CLOSE NEGATE CURLYOPEN CU…
10 ноя '16 в 12:36
1 ответ

Строка flex/bison 25: синтаксическая ошибка в '' . последняя строка файла

Я пытаюсь скомпилировать гибкий проект, но я всегда получаю одну и ту же ошибку, я ищу во всех SO и пробую большинство решений, таких как использование токена <> и возвращаю 1 или 0, или вызываю yywrap()... но без удачи И я не вижу, где ошибка, у ме…
24 фев '17 в 19:55
1 ответ

Грамматика или спецификация файлов Bison/Lemon

Мне нужно написать парсер для файлов грамматики Bison и Lemon. Я ищу спецификацию или грамматику этих файлов формата. Любые ссылки будут полезны.
1 ответ

BisonC++ - подробные отчеты для возврата противоречивых правил?

У меня огромная проблема с компилятором bisonC++: сообщения об ошибках являются мусором. Мне действительно трудно найти проблему, когда все это говорит Line 63: 2 Reduce/Reduce conflict(s) (строка 63 - последняя строка кода). Есть ли способ, переклю…
11 ноя '16 в 17:23
0 ответов

Зубр - принять параметры из командной строки

Я работаю над простым интерпретатором зубров, который может принимать аргументы командной строки в качестве параметров. Например, функция main a: integer, b: integer возвращает целое число; Вы бы поместили следующее в командную строку: $ ./compile &…
29 ноя '18 в 04:06
1 ответ

Кто имеет значение $default при уменьшении действия при выводе файла, автоматически генерируемого bison

Кто-то знает предложение: $default reduce using rule 1 (P) кто $default... Это должен быть конкретный терминал, но какой именно?
01 сен '15 в 06:36
1 ответ

emacs не может открыть загрузочный файл make-regexp

Я искал режим бизонов для Emacs. Я нашел одну реализацию (довольно старая, как оказалось). Я скопировал это на мой .emacs файл, (require 'font-lock) а также (require 'cc-mode) как предложено на вики-странице emacs. Но bison-mode.el файл имеет следую…
02 фев '14 в 16:22
2 ответа

Предупреждение: присваивание делает указатель из целого числа без приведения yylval=atoi(yytext);

Я пытаюсь написать простое приложение калькулятор, используя reentrant lex и yacc. Здесь я хочу создать два потока (парсер), которые должны анализировать входные данные, указанные во входном файле. Строки, которые будут проанализированы во входном ф…
17 фев '16 в 14:35
1 ответ

Пример грамматики бизонов для объявления и использования функций

Может ли кто-нибудь привести пример грамматики бизонов для объявления функций и их использования, так что парсер выдает ошибку, если количество аргументов в объявлении и использовании варьируется?
1 ответ

Синтаксическая ошибка Flex/Flex++ - "Нераспознанное правило"

Я пишу грамматику, используя Flex++ для генерации парсера, и этот блок кода всегда возвращает ошибку "нераспознанное правило". %{ #include "Parserbase.h" %} %option noyywrap num [0-9]+ float [0-9]+"."[0-9]+ comment [["//"[.]*\n] | ["/\*"[.]*"\*/"]] …
09 мар '14 в 18:31
2 ответа

Как узнать значение переменной в бизоне при отладке с помощью GDB?

Я пытаюсь написать небольшой компилятор, который может анализировать некоторые команды, которые я печатаю. Команда, которую я пытаюсь разобрать: create class something = create class do_something ; Мой код будет примерно таким: grammar : my_grammar …
15 мар '16 в 12:32
1 ответ

Игнорировать пробелы в гибких и зубровых

Я пытаюсь разобрать следующие строки: BEGIN WRAP WIO3 NAME lgCell_prg160_io CONDITION UNI_PLACE_GLOBAL &amp;&amp; compBits ENDS WIO3 Грамматика, которую я использовал для разбора вышеупомянутых строк, разбирается до UNI_PLACE_GLOBAL, а затем выдает …
18 фев '16 в 09:44
0 ответов

Конфигурация flex и bison с visual studio 2017

У меня vs2017 и я пытаюсь настроить flex &amp; bison с ним, как показано в документации источника лягушка, но проблема в том, что, когда я добавляю sample.l а также sample.y файлы в мой проект и построить проект, я не вижу никаких сгенерированных фа…
25 окт '18 в 19:41
1 ответ

Как действовать для каждого бизона правила

Я пытаюсь сделать небольшой компилятор, используя flex и bison, но я не понимаю, как выполнить действие для каждого правила. моя грамматика похожа на: %union{ std::string *s; }; %start program %type &lt;s&gt; expr %token &lt;s&gt; KEYWORD %token &lt…
15 апр '17 в 19:19
0 ответов

Объявить указатель из пользовательского класса внутри бизона (файл yacc.y)

Я работаю над проектом компилятора для синтаксиса Python, но добавляю новые функции, такие как наследование и объектно-ориентированные концепции.. поэтому у меня есть класс a like: class a { public: class b{}; }; и я хочу объявить указатель из класс…
03 янв '15 в 09:38
1 ответ

Стог зубров

Это лексический анализатор, использующий Flex. #include &lt;iostream&gt; #include &lt;cstdio&gt; #define YY_DECL extern "C" int yylex() #include "conv.tab.h" using namespace std; %} eq [ \t]*= %% [ \t] ; (?:POINT|LINE) { yylval.ename = strdup(yytext…
05 сен '14 в 06:44
1 ответ

Бизон: конкретное количество рекурсий?

Я пишу парсер с flex и bison уже несколько недель и остановился из-за двойной рекурсии, определения которой схожи для первых нескольких правил. Бизон всегда выбирает неправильный путь на одном конкретном этапе и падает, потому что грамматика не подх…
24 мар '15 в 09:35
1 ответ

Не удается устранить следующую ошибку уменьшения-уменьшения (синтаксический анализ LALR)

В настоящее время я реализую часть грамматики Decaf (язык программирования). Вот соответствующий фрагмент кода бизона: type: INT | ID | type LS RS ; local_var_decl: type ID SEMICOLON ; name: THIS | ID | name DOT ID | name LS expression RS ; Тем не м…
04 ноя '17 в 02:24
1 ответ

Как изменить поведение ошибки лексера Flex?

Я построил лексер с Flex. Однако есть одна серьезная проблема: Flex по умолчанию генерирует этот метод ошибки: void yyFlexLexer::LexerError( yyconst char msg[] ) { std::cerr &lt;&lt; msg &lt;&lt; std::endl; exit( YY_EXIT_FAILURE ); } Это означает, ч…
10 дек '13 в 10:41
1 ответ

Проблемы с синтаксическим анализом decaf (объявление переменной в сравнении с конструктором)

Я использую bison (3.0.4) и лексер для реализации (частичной) грамматики языка программирования Decaf. Я только реализую то, что находится внутри класса. Итак, моя задача проста: сохранить каждое производственное правило (в виде строки) в дереве, а …