3 bison \- GNU Project parser generator (yacc replacement)
9 .BI \-\-file-prefix= file-prefix
29 .BI \-\-output-file= outfile
33 .BI \-\-name-prefix= prefix
59 .B \-\-fixed-output-files
64 is a parser generator in the style of
66 It should be upwardly compatible with input files designed
70 Input files should follow the
72 convention of ending in
76 the generated files do not have fixed names, but instead use the prefix
78 For instance, a grammar description file named
80 would produce the generated parser in a file named
86 This description of the options that can be given to
88 is adapted from the node
92 manual, which should be taken as authoritative.
95 supports both traditional single-letter options and mnemonic long
96 option names. Long option names are indicated with
100 Abbreviations for option names are allowed as long as they
101 are unique. When a long option takes an argument, like
102 .BR \-\-file-prefix ,
103 connect the option name and the argument with
107 .BI \-b " file-prefix"
111 .BI \-\-file-prefix= file-prefix
112 Specify a prefix to use for all
114 output file names. The names are
115 chosen as if the input file were named
116 \fIfile-prefix\fB.c\fR.
123 Write an extra output file containing macro definitions for the token
124 type names defined in the grammar and the semantic value type
128 variable declarations.
130 If the parser output file is named
136 This output file is essential if you wish to put the definition of
138 in a separate source file, because
140 needs to be able to refer to token type codes and the variable
148 The token numbers in the \fIname\fB.h\fR file are usually the Yacc compatible
149 translations. If this switch is specified, Bison token numbers
150 are output instead. (Yacc numbers start at 257 except for single character
151 tokens; Bison assigns token numbers sequentially for all tokens
159 This switch causes the \fIname\fB.tab.c\fR output to include a list of
160 token names in order by their token numbers; this is defined in the array
177 preprocessor commands in the parser file.
180 puts them in the parser file so that the C compiler
181 and debuggers will associate errors with your source file, the
182 grammar file. This option causes them to associate errors with the
183 parser file, treating it an independent source file in its own right.
190 Do not generate the parser code into the output; generate only
191 declarations. The generated \fIname\fB.tab.c\fR file will have only
192 constant declarations. In addition, a \fIname\fB.act\fR file is
193 generated containing a switch statement body containing all the
200 .BI \-\-output-file= outfile
205 The other output files' names are constructed from
207 as described under the
217 .BI \-\-name-prefix= prefix
218 Rename the external symbols used in the parser so that they start with
222 The precise list of symbols renamed is
231 For example, if you use
243 Output a definition of the macro
245 into the parser file,
246 so that the debugging facilities are compiled.
253 Write an extra output file containing verbose descriptions of the
254 parser states and what is done for each type of look-ahead token in
257 This file also describes all the conflicts, both those resolved by
258 operator precedence and the unresolved ones.
260 The file's name is made by removing
264 from the parser output file name, and adding
268 Therefore, if the input file is
270 then the parser file is called
272 by default. As a consequence, the verbose
273 output file is called
281 Print the version number of
290 Print a summary of the options to
302 .B \-\-fixed-output-files
305 the parser output file is called
307 and the other outputs are called
311 The purpose of this switch is to imitate
313 output file name conventions.
314 Thus, the following shell script can substitute for
324 The long-named options can be introduced with `+' as well as `\-\-',
325 for compatibility with previous releases. Eventually support for `+'
326 will be removed, because it is incompatible with the POSIX.2 standard.
328 /usr/local/lib/bison.simple simple parser
330 /usr/local/lib/bison.hairy complicated parser
335 .IR "Bison Reference Manual" ,