bison - GNU-Projekt-Parser-Generator (YACC-Ersatz)
bison [OPTION]... FILE
Bison ist ein Parser-Generator im Stil von yacc(1). Es sollte aufwärtskompatibel mit Eingabedateien sein, die für yacc entwickelt wurden.
Eingabedateien sollten der yacc-Konvention folgen und auf .y enden. Im Gegensatz zu yacc haben die generierten Dateien keine festen Namen, sondern verwenden stattdessen das Präfix der Eingabedatei. Wenn Sie außerdem C++-Code in die Eingabedatei einfügen müssen, können Sie seinen Namen mit einer C++-ähnlichen Erweiterung (.ypp oder .y++) beenden, dann folgt bison Ihrer Erweiterung, um die Ausgabe zu benennen Datei (.cpp oder .c++). Beispielsweise würde eine Grammatikbeschreibungsdatei mit dem Namen parse.yxx den generierten Parser in einer Datei mit dem Namen parse.tab.cxx anstelle von yacc erzeugen ist y.tab.c oder parse.tab.c der alten Bison-Version.
Diese Beschreibung der Optionen, die bison gegeben werden können, wurde vom Knoten Invocation im bison.texi-Handbuch übernommen und sollte als angenommen werden maßgeblich.
Bison unterstützt sowohl herkömmliche Einzelbuchstabenoptionen als auch mnemonische lange Optionsnamen. Lange Optionsnamen werden mit -- anstelle von - angezeigt. Abkürzungen für Optionsnamen sind zulässig, sofern sie eindeutig sind. Wenn eine lange Option ein Argument annimmt, wie etwa --file-prefix, verbinden Sie den Optionsnamen und das Argument mit =.
Generieren Sie einen deterministischen LR- oder generalisierten LR-Parser (GLR) unter Verwendung von LALR(1), IELR(1) oder kanonischen LR(1)-Parsertabellen.
Obligatorische Argumente für Long-Optionen sind auch für Short-Optionen obligatorisch. Das Gleiche gilt für optionale Argumente.
Zeigen Sie diese Hilfe an und beenden Sie den Vorgang
Versionsinformationen ausgeben und beenden
Ausgabeverzeichnis mit gebietsschemaabhängigen Daten und Exit
Ausgabeverzeichnis mit Skeletten und XSLT und Exit
Wenden Sie Korrekturen auf die Quellgrammatikdatei an und beenden Sie den Vorgang
verschiedene Funktionen aktivieren
Fehler mit Carets anzeigen
maschinenlesbare Korrekturen anzeigen
Erzeugen Sie keine Datei
Alles das oben Genannte
Deaktivieren Sie alle oben genannten Punkte
Melden Sie die Warnungen, die in die KATEGORIE fallen
ob die Diagnose eingefärbt werden soll
Geben Sie die CSS-DATEI für die Colorizer-Diagnose an
S/R-Konflikte (standardmäßig aktiviert)
R/R-Konflikte (standardmäßig aktiviert)
Konflikt-Gegenbeispiele generieren
String-Aliase, die nicht an ein Symbol angehängt sind
veraltete Konstrukte
leere Regeln ohne %empty
nicht gesetzte oder nicht verwendete Mittelregelwerte
nutzloser Vorrang und Assoziativität
Inkompatibilitäten mit POSIX Yacc
alle anderen Warnungen (standardmäßig aktiviert)
Alle Warnungen außer „counterexamples“, „dangling-alias“ und „yacc“
Deaktivieren Sie Warnungen in der Kategorie KATEGORIE
Schalten Sie alle Warnungen aus
Behandeln Sie Warnungen als Fehler
Färben Sie die Ausgabe ein
Färben Sie die Ausgabe nicht ein
colorize, wenn das Ausgabegerät ein TTY ist
Geben Sie die Ausgabeprogrammiersprache an
Geben Sie das zu verwendende Skelett an
Instrumentieren Sie den Parser für die Ablaufverfolgung wie „-Dparse.trace“.
Aktivieren Sie die Standortunterstützung
ähnlich wie „%define NAME VALUE“
'%define NAME VALUE' überschreiben
Präfix den durch „-Dapi.prefix={PREFIX}“ veralteten externen Symbolen voranstellen
Generieren Sie keine „#line“-Anweisungen
Fügen Sie eine Tabelle mit Token-Namen hinzu
emulieren POSIX Yacc
Erstellen Sie auch eine Header-Datei
ebenfalls, kann aber FILE nicht angeben (für POSIX Yacc)
Machen Sie auch Angaben zum Automaten
Bericht in DATEI schreiben
dasselbe wie '--report=state'
Geben Sie ein Präfix für Ausgabedateien an
Überlassen Sie die Ausgabe der Datei
Gibt auch einen Graphen des Automaten aus
gibt auch einen HTML-Bericht des Automaten aus
Gibt auch einen XML-Bericht des Automaten aus
in Ausgabedateien
Beschreiben Sie die Zustände
Vervollständigen Sie die Kern-Item-Sets mit ihrem Abschluss
Ordnen Sie Elementen explizit Lookahead-Token zu
Beschreiben Sie die Lösung von Konflikten, die sich verschieben/reduzieren
Konflikt-Gegenbeispiele generieren
Geben Sie alle oben genannten Informationen an
Deaktivieren Sie den Bericht
Geschrieben von Robert Corbett und Richard Stallman.
Melden Sie Fehler an
GNU Bison-Homepage:
Allgemeine Hilfe zur Verwendung der GNU-Software:
Für eine vollständige Dokumentation führen Sie Folgendes aus: info bison.
Copyright © 2021 Free Software Foundation, Inc.
Dies ist freie Software; Die Kopierbedingungen finden Sie in der Quelle. Es gibt KEINE Garantie; nicht einmal für MARKTGÄNGIGKEIT oder EIGNUNG FÜR EINEN BESTIMMTEN ZWECK.
lex(1), flex(1), yacc(1).
The full documentation for bison is maintained as a Texinfo manual. If the info and bison programs are properly installed at your site, the command
info bison
should give you access to the complete manual.