]> git.saurik.com Git - bison.git/blame_incremental - doc/bison.1
* src/gram.c: Remove comments that duplicate comments in gram.h.
[bison.git] / doc / bison.1
... / ...
CommitLineData
1.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
2.TH BISON "1" "November 2007" "bison 2.3a+" "User Commands"
3.SH NAME
4bison \- GNU Project parser generator (yacc replacement)
5.SH SYNOPSIS
6.B bison
7[\fIOPTION\fR]... \fIFILE\fR
8.SH DESCRIPTION
9.I Bison
10is a parser generator in the style of
11.IR yacc (1).
12It should be upwardly compatible with input files designed
13for
14.IR yacc .
15.PP
16Input files should follow the
17.I yacc
18convention of ending in
19.BR .y .
20Unlike
21.IR yacc ,
22the generated files do not have fixed names, but instead use the prefix
23of the input file.
24Moreover, if you need to put
25.I C++
26code in the input file, you can end his name by a C++-like extension
27(.ypp or .y++), then bison will follow your extension to name the
28output file (.cpp or .c++).
29For instance, a grammar description file named
30.B parse.yxx
31would produce the generated parser in a file named
32.BR parse.tab.cxx ,
33instead of
34.IR yacc 's
35.B y.tab.c
36or old
37.I Bison
38version's
39.BR parse.tab.c .
40.PP
41This description of the options that can be given to
42.I bison
43is adapted from the node
44.B Invocation
45in the
46.B bison.texinfo
47manual, which should be taken as authoritative.
48.PP
49.I Bison
50supports both traditional single-letter options and mnemonic long
51option names. Long option names are indicated with
52.B \-\-
53instead of
54.BR \- .
55Abbreviations for option names are allowed as long as they
56are unique. When a long option takes an argument, like
57.BR \-\-file-prefix ,
58connect the option name and the argument with
59.BR = .
60.PP
61Generate LALR(1) and GLR parsers.
62.PP
63Mandatory arguments to long options are mandatory for short options too.
64.SS "Operation modes:"
65.TP
66\fB\-h\fR, \fB\-\-help\fR
67display this help and exit
68.TP
69\fB\-V\fR, \fB\-\-version\fR
70output version information and exit
71.TP
72\fB\-\-print\-localedir\fR
73output directory containing locale\-dependent data
74.TP
75\fB\-\-print\-datadir\fR
76output directory containing skeletons and XSLT
77.TP
78\fB\-y\fR, \fB\-\-yacc\fR
79emulate POSIX Yacc
80.TP
81\fB\-W\fR, \fB\-\-warnings\fR=\fI[CATEGORY]\fR
82report the warnings falling in CATEGORY
83.SS "Parser:"
84.TP
85\fB\-S\fR, \fB\-\-skeleton\fR=\fIFILE\fR
86specify the skeleton to use
87.TP
88\fB\-t\fR, \fB\-\-debug\fR
89instrument the parser for debugging
90.TP
91\fB\-\-locations\fR
92enable locations computation
93.TP
94\fB\-p\fR, \fB\-\-name\-prefix\fR=\fIPREFIX\fR
95prepend PREFIX to the external symbols
96.TP
97\fB\-l\fR, \fB\-\-no\-lines\fR
98don't generate `#line' directives
99.TP
100\fB\-k\fR, \fB\-\-token\-table\fR
101include a table of token names
102.SS "Output:"
103.TP
104\fB\-d\fR, \fB\-\-defines\fR[=\fIFILE\fR]
105also produce a header file
106.TP
107\fB\-r\fR, \fB\-\-report\fR=\fITHINGS\fR
108also produce details on the automaton
109.TP
110\fB\-v\fR, \fB\-\-verbose\fR
111same as `\-\-report=state'
112.TP
113\fB\-b\fR, \fB\-\-file\-prefix\fR=\fIPREFIX\fR
114specify a PREFIX for output files
115.TP
116\fB\-o\fR, \fB\-\-output\fR=\fIFILE\fR
117leave output to FILE
118.TP
119\fB\-g\fR, \fB\-\-graph\fR[=\fIFILE\fR]
120also output a graph of the automaton
121.TP
122\fB\-x\fR, \fB\-\-xml\fR[=\fIFILE\fR]
123also output an XML report of the automaton
124.SS "Warning categories include:"
125.TP
126`midrule\-values'
127unset or unused midrule values
128.TP
129`yacc'
130incompatibilities with POSIX YACC
131.TP
132`all'
133all the warnings
134.TP
135`no\-CATEGORY'
136turn off warnings in CATEGORY
137.TP
138`none'
139turn off all the warnings
140.TP
141`error'
142treat warnings as errors
143.SS "THINGS is a list of comma separated words that can include:"
144.TP
145`state'
146describe the states
147.TP
148`itemset'
149complete the core item sets with their closure
150.TP
151`lookahead'
152explicitly associate lookahead tokens to items
153.TP
154`solved'
155describe shift/reduce conflicts solving
156.TP
157`all'
158include all the above information
159.TP
160`none'
161disable the report
162.SH AUTHOR
163Written by Robert Corbett and Richard Stallman.
164.SH "REPORTING BUGS"
165Report bugs to <bug\-bison@gnu.org>.
166.SH COPYRIGHT
167Copyright \(co 2007 Free Software Foundation, Inc.
168.br
169This is free software; see the source for copying conditions. There is NO
170warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
171.SH "SEE ALSO"
172.BR lex (1),
173.BR flex (1),
174.BR yacc (1).
175.PP
176The full documentation for
177.B bison
178is maintained as a Texinfo manual. If the
179.B info
180and
181.B bison
182programs are properly installed at your site, the command
183.IP
184.B info bison
185.PP
186should give you access to the complete manual.