table of contents
- trixie-backports 4.30.0-1~bpo13+1
- testing 4.30.0-1
- unstable 4.30.0-1
| BISON(1) | Dienstprogramme für Benutzer | BISON(1) |
BEZEICHNUNG¶
bison - Parser-Generator des GNU-Projekts (Ersatz für Yacc)
ÜBERSICHT¶
bison [OPTION]… DATEI
BESCHREIBUNG¶
Bison ist ein Parser-Generator in der Art von yacc(1). Er sollte zu Eingabedateien, die für yacc(1) erstellt wurden, aufwärtskompatibel sein.
Eingabedateien sollten der Konvention von yacc(1) folgen und auf .y enden. Anders als bei yacc(1) haben die erstellten Dateien keine festen Namen, sondern verwenden stattdessen den Präfix der Eingabedatei. Sollten Sie darüberhinaus C++-Code in der Eingabedatei verwenden müssen, können Sie den Dateinamen durch eine C++-artige Erweiterung enden lassen (.ypp oder .y++). Bison wird dann Ihrer Endung folgen und die Ausgabedatei entsprechend benennen (.cpp oder .c++). Eine Grammatikbeschreibungsdatei parse.yxx würde beispielsweise den Parser in einer Datei namens parse.tab.cxx anstelle von yaccs y.tab.c oder der parse.tab.c in alten Versionen von bison erstellen.
Diese Beschreibung der Optionen, die an bison übergeben werden können, ist vom Knoten Invocation aus dem maßgebenden Handbuch bison.texi übernommen.
Bison unterstützt sowohl traditionelle Optionen mit einem Buchstaben und sprechende lange Optionsnamen. Lange Optionsnamen werden mit einem -- anstelle von - eingeleitet. Die Optionen dürfen abgekürzt werden, solange dies eindeutig ist. Wenn eine lange Option ein Argument akzeptiert, wie --file-prefix, verbinden Sie den Optionsnamen und das Argument mit einem =.
Erstellt einen deterministischen LR- oder verallgemeinerten LR- (GLR-)Parser, der LALR(1)-, IELR(1)- oder kanonische LR(1)-Parser-Tabellen einsetzt.
Zwingende Argumente für lange Optionen sind auch zwingend für kurze Optionen. Das gleiche gilt für optionale Argumente.
Betriebsmodi:¶
- -h, --help
- Zeigt Hilfeinformationen an und beendet das Programm.
- -V, --version
- Gibt Versionsinformationen aus und beendet das Programm.
- --print-localedir
- gibt das Verzeichnis mit den Locale-abhängigen Daten aus und beendet sich.
- --print-datadir
- gibt das Verzeichnis mit den Gerüsten und XSLT aus und beendet sich.
- -u, --update
- wendet Korrekturen an der Quellgrammatikdatei an und beendet sich.
- -f, --feature[=FUNKTIONALITÄT]
- aktiviert verschiedene Funktionalitäten.
FUNKTIONALITÄT ist eine Kommata-getrennte Liste von Wörten, zu denen folgende gehören:¶
- caret, diagnostics-show-caret
- Fehler durch Zirkumflex anzeigen
- fixit, diagnostics-parseable-fixits
- Maschinen-lesbare Korrekturen anzeigen
- syntax-only
- keine Datei erstellen
- all
- alles obige
- none
- alles obige deaktivieren
Diagnosen:¶
- -W, --warnings[=KATEGORIE]
- Meldet die Warnungen, die in KATEGORIE fallen.
- --color[=WANN]
- Gibt an, ob die Diagnosemeldungen eingefärbt werden sollen.
- --style=DATEI
- Gibt die CSS-Datei für die Ausgabe der eingefärbten Diagnosen an.
Zu den Warnungskategorien gehören:¶
- conflicts-sr
- S/R-Konflikte (standardmäßig aktiviert)
- conflicts-rr
- R/R-Konflikte (standardmäßig aktiviert)
- counterexamples, cex
- erstellt Konflikt-Gegenbeispiel
- dangling-alias
- Zeichenketten-Aliase, die keinem Symbol angehängt sind
- deprecated
- veraltete Konstrukte
- empty-rule
- leere Regeln ohne %empty
- midrule-values
- nicht gesetzte oder nicht verwandte Midrule-Werte
- precedence
- nutzloser Vorrang oder Assoziation
- yacc
- Inkompatibilität mit POSIX Yacc
- other
- alle anderen Warnungen (standardmäßig aktiviert)
- all
- alle Warnungen außer »counterexamples«, »dangling-alias« und »yacc«
- no-KATEGORIE
- Warnungen in KATEGORIE ausschalten
- none
- alle Warnungen ausschalten
- error[=KATEGORIE]
- Warnungen als Fehler behandeln
WANN kann einer der folgenden Werte sein:¶
- always, yes
- Ausgabe einfärben
- never, no
- Ausgabe nicht einfärben
- auto, tty
- einfärben, falls das Ausgabegerät ein TTY ist
Anpassung des Parsers:¶
- -L, --language=SPRACHE
- Gibt die Ausgabeprogrammiersprache an.
- -S, --skeleton=DATEI
- Gibt das zu verwendende Gerüst an.
- -t, --debug
- Weist den Parser zum Nachverfolgen an, identisch zu »-Dparse.trace«.
- --locations
- Aktiviert die Unterstützung für Ortsangabe.
- -D, --define=NAME[=WERT]
- Ist zu »%define NAME WERT« ähnlich.
- -F, --force-define=NAME[=WERT]
- Setzt »%define NAME WERT« außer Kraft.
- -p, --name-prefix=PRÄFIX
- Setzt PRÄFIX vor das externe Symbol, das durch »-Dapi.prefix={PRÄFIX}« als veraltet markiert wurde.
- -l, --no-lines
- Erstellt keine »#line«-Direktiven.
- -k, --token-table
- Nimmt eine Tabelle mit den Token-Namen auf.
- -y, --yacc
- Emuliert POSIX-Yacc.
Ausgabedateien:¶
- -H, --header=[DATEI]
- Erzeugt auch eine Header-Datei.
- -d
- Ähnlich, aber DATEI kann nicht angegeben werden (für POSIX Yacc).
- -r, --report=DINGE
- Erstellt auch Details zu dem Automaten.
- --report-file=DATEI
- Schreibt Bericht in DATEI.
- -v, --verbose
- Ist zu »--report=state« identisch.
- -b, --file-prefix=PRÄFIX
- Gibt ein PRÄFIX für Ausgabedateien an.
- -o, --output=DATEI
- Schreibt Ausgabe in DATEI.
- -g, --graph[=DATEI]
- Gibt auch einen Graphen des Automaten aus.
- --html[=DATEI]
- Gibt auch einen HTML-Bericht des Automaten aus.
- -x, --xml[=DATEI]
- Gibt auch einen XML-Bericht des Automaten aus.
- -M, --file-prefix-map=ALT=NEU Ersetzt beim Schreiben von Dateipfaden das Präfix ALT durch NEU
- in Ausgabedateien.
DINGE ist eine Liste von Kommata-getrennten Wörtern, zu denen folgende gehören:¶
- states
- Beschreibt die Zustände.
- itemsets
- Vervollständigt die Kernelementmengen mit ihrem Abschluss.
- lookaheads
- Assoziiert Nachschlagemerkmale explizit mit Einträgen.
- solved
- Beschreibt die Lösung von Verschiebe-/Reduzierkonflikten.
- counterexamples, cex
- erstellt Konflikt-Gegenbeispiel
- all
- Enthält alle obigen Informationen.
- none
- Deaktiviert den Bericht.
AUTOR¶
Geschrieben von Robert Corbett und Richard Stallman.
FEHLER MELDEN¶
Melden Sie Fehler (auf Englisch) an <bug-bison@gnu.org>.
GNU Bison-Homepage: <https://www.gnu.org/software/bison/>.
Allgemeine Hilfe zur Verwendung von GNU-Software:
<https://www.gnu.org/gethelp/>.
Melden Sie Fehler in der Programmübersetzung unter
<https://translationproject.org/team/>.
Für die vollständige Dokumentation führen Sie info
bison aus.
COPYRIGHT¶
Copyright © 2021 Free Software Foundation, Inc.
Dies ist freie Software, in den Quellen finden Sie die Bedingungen zur
Weitergabe. Es gibt KEINE Garantie, auch nicht für die MARKTREIFE
oder die TAUGLICHKEIT FÜR EINEN BESTIMMTEN ZWECK.
SIEHE AUCH¶
Die vollständige Dokumentation für bison wird als ein Texinfo-Handbuch gepflegt. Wenn die Programme info(1) und bison auf Ihrem Rechner ordnungsgemäß installiert sind, können Sie mit dem Befehl
- info bison
auf das vollständige Handbuch zugreifen.
ÜBERSETZUNG¶
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer: debian-l10n-german@lists.debian.org.
| Januar 2026 | GNU Bison 3.8.2 |