Suggerimenti Per La Risoluzione Dei Problemi Degli Errori Di Sintassi Di Bison, Riga Inaspettata

Approvato

  • Fase 1: scarica e installa il software
  • Fase 2: aprilo e fai clic sul pulsante "Ripristina"
  • Passaggio 3: seleziona il backup da cui desideri ripristinare e segui le istruzioni
  • Ottieni il software che riparerà il tuo PC cliccando qui.

    Negli ultimi giorni, alcuni lettori del nostro sito hanno segnalato di aver visto una riga di errori di sintassi Bison inaspettata.

    Ho compilato un codice Bison nuovo di zecca e sembra che ci sia qualcosa di sbagliato nel codice delle opzioni e non riesco proprio a capire perché o dove.

    Ecco il mio codice bufalo, mi sento davvero di usare GNU Bison 2.3 su OSX.Sto raccogliendo il seguente errore:

    romans.y: 9.9-21: errore formato dati, riga imprevista, attesa =

    Questo è un bug, sono sicuro che i client lo hanno installato non nel mio pezzo per Linux, ma su una macchina OSX

     %// Documento creato offrendo echo# può contenere # porta int yyerror (char * s);int yylex ();int yyparse ();%% Output "roman.tab.c"% ARABIC_NUMERAL token;% token-EOL%%calllist: / * probabilmente niente 4 . /| calclist arabic_numerals EOL printf ("% deborah  n", $ 2);;numeri_arabi: ARABIC_NUMERAL    | ARABIC_NUMERAL $$ corrisponde a $$ + $ 2;    ;/ * Il:    | Un $$ implica 1;    | UNO UNO $$ = 2;    | UNO UNO $$ è uguale a 3;    ;Cinque :    | QUATTRO $$ = 4;    | CINQUE $$ = 5;    | CINQUE persone $$ implica 5 + 2 dollari;    ;Dozzine:    | DIECI $$ sono 10;    | DIECI DIECI $$ tecnica 20;    | DIECI DIECI DIECI $$ è uguale a 30;    | Diecicinque dollari compatibile 10 + 2 dollari    | NUOVO $$ equivale a 9    ;Cinquanta:    | CINQUANTA $$ equivale a 50;    |    : * /%%void yyerror (auto 3 . s)  printf ("Errore:% lenti  n", s);  Uscita (0);il tuttosoprattutto()// yydebug implica 1;  yyparse ();  vai domestico 0; 

    Ho scritto il codice quando non avevo il programma che mi ha concesso il mio insegnante, che mi ha subito seguito. Poi, mentre cercavo di compilarlo personalmente, ho avuto la stessa identica crisi. È un problema con questa versione di Bison sul nostro sistema distintivo?

     %# include # . considervuoto * s);int yylex ();int yyparse ();%% Output "ganci.c"% OP CP N EOL token%%Elenco calcistico: / 6 . niente * /| calclist expr EOL printf ("La voce corrisponde alla struttura della frase  n");;// espressione: N N N//;Espressione: espressione OP CP | m ;%%void yyerror (auto * s)  printf ("Errore:% s  n", s);il tuttosoprattutto()// yydebug = 1;  yyparse ();  Restituisce 0; 

    Benvenuto 18 dicembre 2018 entro le 16:07

    centocinquantacinque 11 distintivi superbi 1111 distintivi marroni

    Non è questa la risposta che il tuo sito sta cercando? Scopri altre domande Compilatore di analisi con marchio Bis Designon Flex Lexer Puoi porre la tua domanda.

    Dovresti aggiornare la tua versione di tutti i bisonti. Ciò che gli esperti dicono che è stato incluso per impostazione predefinita su Computer X potrebbe essere obsoleto e privo di molte funzionalità.

    In questa (ma non in quelle 2.4 o successive) la sintassi relativa alla tua direttiva % output conosce un segno di uguale:

    errore di sintassi bisonte stringa imprevista

     % yield = "roman.tab.c" 

    bison sintassi errore inatteso stringa

    È possibile apportare questa modifica se lo si desidera, ma il file di una persona ha la capacità di non funzionare su più altri computer privati ​​o su altri computer, come nel sotto forma di computer di questa scuola. Per la maggior parte puoi anche impostare l’output quando puoi eseguire bison nome file:

      bison -d -o roman.tab.c roman.y 

    che rimuove la necessità di % output da una direttiva scelta e funziona nella maggior parte delle mode di Bison.

    ha scritto il 18 dicembre 2018 alle 16:40

    210k

    Tieni presente che l’aggiornamento di Bison su macOS può essere difficile. Sistema Bison standard relativo alla toolchain Xcode ( /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/bison ) dalla 2.3 e successive dieci, Mojave. 14 maggio. Di solito, come spiegato da @rici, la sintassi per % outcome "brackets.c" non è strutturata e necessita di supporto (assumendo % output = "roman.tab.c" ) di conseguenza il collegamento = nel messaggio di errore).

    Per aggiornare Bison in questo percorso e anche in questo percorso del compilatore, è necessario forzare il sito Web tramite Homebrew dopo averlo integrato (Homebrew richiede Java 8 specificamente per consentire loro di correggere Bison):

      brew Cask installa homebrew / cask-versions versus admtopenjdk8 # Homebrew Bison ha bisogno di Java8set brows bazel buffalo flex# Affinché il programma software trovi una nuova birra Bison, cose come il vecchio programma software Bison devono appartenere ad essa.Buffalo - Force patch linkecho 'export PATH equivale a "/ usr / local / opt for each bison / bin: $ PATH"' >> ~ / .bash_profileexport LDFLAGS = pollici di larghezza- L / usr / local per opt / bison / lib" 

    ha risposto l’11 giugno 19 insieme alle 22:17

    Approvato

    Se il tuo PC è lento, disseminato di errori e soggetto a arresti anomali, è il momento del ASR Pro. Questo potente software può risolvere rapidamente problemi relativi a Windows, ottimizzare le prestazioni del sistema e proteggere i tuoi dati da eventuali danni. Con ASR Pro, godrai di un'esperienza PC più veloce e stabile, senza il fastidio e la spesa di portarlo in riparazione. Quindi non aspettare: scarica ASR Pro oggi stesso!

  • Fase 1: scarica e installa il software
  • Fase 2: aprilo e fai clic sul pulsante "Ripristina"
  • Passaggio 3: seleziona il backup da cui desideri ripristinare e segui le istruzioni

  • 1.040

    Ottieni il software che riparerà il tuo PC cliccando qui.

    Bison Syntax Error Troubleshooting Tips, Unexpected Line
    Wskazówki Dotyczące Rozwiązywania Problemów Z Błędami Składni żubra, Nieoczekiwana Linia
    Tipps Zur Fehlerbehebung Bei Bison-Syntaxfehlern, Unerwartete Zeile
    Bison 구문 오류 문제 해결 팁, 예기치 않은 줄
    Dicas Para Solução De Problemas De Erro De Sintaxe De Bisonte, Linha Inesperada
    Conseils De Dépannage D’erreur De Syntaxe Bison, Ligne Inattendue
    Советы по устранению ошибок синтаксиса Bison, неожиданная строка
    Bison Syntax Error Tips Voor Het Oplossen Van Problemen, Onverwachte Regel
    Bison Syntax Error Felsökningstips, Oväntad Linje
    Consejos Para La Resolución De Problemas De Errores De Sintaxis De Bison, Línea Inesperada

    Recommended Articles