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/>.
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
lex(1), flex(1), yacc(1).

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 (https://www.gnu.org/licenses/gpl-3.0.html) 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.