Свързани въпроси 'bison'

Проблеми с вграждането на Guile в C++
Аз съм програмист на Scheme и се опитвам да използвам Guile за извикване на функции на Scheme от C++ код в спецификация на Bison. Документацията относно Guile и C е страхотна; обаче не намерих много подходяща, актуална информация за Guile и C++....
1903 изгледи
schedule 27.09.2022

SR конфликт в граматика - как да го разрешим? (лимон/як)
Събрах граматика в Lemon (която е подобна на YACC), но създава S/R конфликт. Не съм свикнал с LALR анализиране и не разбирам какъв е проблемът, нито как да го разреша. Граматиката е: %right EQUALS. %right RIGHT_ASSIGN LEFT_ASSIGN MOD_ASSIGN...
68 изгледи
schedule 19.09.2022

Грешка при свързване Yacc на Mac
Получавам тази грешка, когато се опитвам да компилирам. Компилирал съм lex файлове преди без проблем, изглежда не мога да накарам yacc да компилира без грешка. :~ yacc project-5.y :~ lex project.l :~g++ -o $dragon project-5.tab.c lex.yy.c...
2547 изгледи
schedule 25.09.2022

Дизайн на компилатор - Изчисляване на константна стойност
Опитвам се да проектирам малък компилатор като форма на практика. Все още не съм прочел междинна оптимизация на код или нещо по отношение на оптимизацията. Досега имам FLEX/BISON файлове, описващи граматиката и изразите работят добре. Докато...
56 изгледи
schedule 01.10.2022

Опитвам се да намеря конфликт Shift/Reduce в граматиката
Имам следната граматика (Yacc), която е началото на прост C компилатор, започвам от прост израз if : S : E ; E : COND_NO_ELSE ; COND_NO_ELSE : IF BOOL_EXP BLOCK ; BLOCK : LC EXP RC BOOL_EXP : LP EXP BOOL_OP EXP RP ; BOOL_OP : LT_OP...
407 изгледи
schedule 02.10.2022

Как да конвертирате разширена EBNF конструкция (използвайки скоби) в BNF (да се използва с Bison)
Уча Flex/Bison сам и правя някои експерименти с VHDL93. Имам проблеми с някои граматически "продукции" (както се наричат ​​в стандарта), които използват къдрави скоби. Разбирам значението и как да конвертирам този пример, даден в стандарта:...
139 изгледи
schedule 01.10.2022

няма грешка при анализиране на празен файл yacc/lex
Имам анализатор със себе си, генериран от yacc/lex. Работи добре за всички правила, които съм задал, с изключение на един случай. Ако файлът е празен, който този анализатор анализира, той дава грешка. Искам да добавя правило, така че да не дава...
846 изгледи
schedule 07.10.2022

искане за членство в нещо, което не е структура или съюз? във Flex&Bison
в последния ми проект ми остави няколко кода, един от тях е този за flex & bison. Проблемът е, че gcc ми връща съобщението "заявка за член ' db ' в нещо, което не е структура или обединение" във файл bison ... Не знам как да поправи това, намирам...
1354 изгледи
schedule 09.10.2022

bison: една грешка причинява допълнителна, но неправилна грешка
В секцията клас на моя код, ако напиша грешка, няколко реда ще бъдат докладвани като грешки, когато не трябва. Поставям „ | error “ на определени места, където е добре/безопасно да се възстановява от грешки, но не мисля, че го използва. Може би се...
118 изгледи
schedule 15.10.2022

Flex/Bison: Свързан списък, разделен със запетая?
Имам следната граматика за разделен със запетаи списък с поне един елемент: column_expression_list: column_expression { $$ = LinkedList_New(); LinkedListItem *item = LinkedListItem_New($1); LinkedList_add($$, item);...
1223 изгледи
schedule 21.11.2023

@Antoine Последното. За да отворите стандартния прозорец, стартирайте диалогов прозорец, предварително попълнен с въведени данни.
179 изгледи
schedule 20.10.2022

Откриване/възстановяване на грешки в YACC/Bison
Четох ръководствата за използването на символа за грешка, yyerrok и т.н. Притеснението ми е как да добавя правила за грешки към анализатора, без да прекалявам или да не добавям достатъчно. Има ли някакви общи насоки, които трябва да следвам, като...
1737 изгледи
schedule 05.12.2023

игнорирайте съвпадащата продукция в yacc
Докато използвате GNU bison, възможно ли е да не правите нищо след съвпадение на продукция и след това да проверите дали може да се използва друго правило за намаляване на същата последователност от токени? По принцип това, което търся, е подобно на...
161 изгледи
schedule 05.12.2023

как да изградя компилатор за динамично въведен език?
Имам университетски проект, в който трябва да създам компилатор за език, избран от учителите, използвайки Bison и Flex в c++. Езикът е обектно-ориентиран, събиран боклук, динамично типизиран език. Работата е там, че аз и моят приятел просто сме...
162 изгледи
schedule 07.11.2023

Как мога да инструктирам анализатора да не продължава да обработва незавършени коментари?
Работя върху подобряването на отчитането на грешки в задачата ми за компилатор. Обработвам незавършени коментари във Flex, като използвам следния код: <INITIAL>"/*" {BEGIN(COMMENT);} <COMMENT>"*/" {BEGIN(INITIAL);}...
179 изгледи
schedule 20.10.2022

Flex дава фатална вътрешна грешка на скенера - пропуснат край на буфера
Опитвам се да използвам flex срещу буфер, който непрекъснато се пълни и пълни отново. Имам множество нишки, работещи със собствени независими копия на буфера. В psuedo изглежда нещо подобно в моята основна програма: while(forever) { -fill...
4261 изгледи
schedule 05.02.2024

Използване на lex/flex извън yacc/bison
В момента използвам bison и flex, за да анализирам линейни темпорални логически формули и да генерирам автомати от тях. Използвам flex по начина "по подразбиране", т.е. записвам токена на yylval, ако е необходимо, и връщам идентификатора на токена...
314 изгледи
schedule 29.12.2023

Защо тази много проста граматика кара GLR анализаторите да се задавят?
Опитах няколко различни генератора на анализатори (Bison, DParser и т.н.), които твърдят, че могат да генерират анализатори на GLR, т.е. такива, които могат да обработват двусмислени граматики. Ето една много проста двусмислена граматика от типа, за...
1261 изгледи
schedule 05.03.2024

Как да получа стойност на низ на токен във flex и bison?
Имам този токен в моя .lex файл: [a-zA-Z0-9]+ { yylval = yytext; return ALPHANUM; } и този код в моя .y файл: Sentence: "Sphere(" ALPHANUM ")." { FILE* file = fopen("C:/test.txt", "a+"); char st1[] = "polySphere -name "; strcat(st1,...
24434 изгледи
schedule 15.03.2024

команда за генериране на анализатор с bison/flex в windows?
Опитвам се да проектирам компилатор за моята граматика. Пиша кода на скенера и той работи правилно с flex. Сега пиша код за анализатор, таблица със символи и three.h за генериране на 3-адресен код. Но не знам как да стартирам и тествам някои файл с...
240 изгледи
schedule 16.03.2024