mirror of
git://code.qt.io/qt/qt5.git
synced 2026-01-04 22:17:45 +08:00
189 lines
5.0 KiB
Plaintext
189 lines
5.0 KiB
Plaintext
BISON(1) User Commands BISON(1)
|
|
|
|
|
|
|
|
NAME s
|
|
bison - GNU Project parser generator (yacc replacement)
|
|
n
|
|
SYNOPSIS 2
|
|
j:l. [OPTION]... FILE
|
|
4
|
|
DESCRIPTION
|
|
Bison is a parser generator in the style of yacc(1). It
|
|
should be upwardly compatible with input files designed
|
|
for yacc.
|
|
|
|
Input files should follow the yacc convention of ending
|
|
in .y. Unlike yacc, the generated files do not have
|
|
fixed names, but instead use the prefix of the input
|
|
file. Moreover, if you need to put C++ code in the
|
|
input file, you can end his name by a C++-like extension
|
|
(.ypp or .y++), then bison will follow your extension to
|
|
name the output file (.cpp or .c++). For instance, a
|
|
grammar description file named parse.yxx would produce
|
|
the generated parser in a file named parse.tab.cxx,
|
|
instead of yacc's y.tab.c or old Bison version's
|
|
parse.tab.c.
|
|
|
|
This description of the options that can be given to
|
|
bison is adapted from the node Invocation in the
|
|
bison.texinfo manual, which should be taken as authori-
|
|
tative.
|
|
|
|
Bison supports both traditional single-letter options
|
|
and mnemonic long option names. Long option names are
|
|
indicated with -- instead of -. Abbreviations for
|
|
option names are allowed as long as they are unique.
|
|
When a long option takes an argument, like --file-pre-
|
|
fix, connect the option name and the argument with =.
|
|
|
|
Generate LALR(1) and GLR parsers.
|
|
|
|
|
|
Mandatory arguments to long options are mandatory for
|
|
short options too. The same is true for optional argu-
|
|
ments.
|
|
|
|
|
|
Operation modes:
|
|
|
|
-h, --help
|
|
display this help and exit
|
|
|
|
-V, --version
|
|
output version information and exit
|
|
|
|
--print-localedir
|
|
output directory containing locale-dependent data
|
|
|
|
--print-datadir
|
|
output directory containing skeletons and XSLT
|
|
|
|
-y, --yacc
|
|
emulate POSIX Yacc
|
|
|
|
-W, --warnings=[CATEGORY]
|
|
report the warnings falling in CATEGORY
|
|
|
|
|
|
Parser:
|
|
|
|
-L, --language=LANGUAGE
|
|
specify the output programming language (this is
|
|
an experimental feature)
|
|
|
|
-S, --skeleton=FILE
|
|
specify the skeleton to use
|
|
|
|
-t, --debug
|
|
instrument the parser for debugging
|
|
|
|
--locations
|
|
enable locations computation
|
|
|
|
-p, --name-prefix=PREFIX
|
|
prepend PREFIX to the external symbols
|
|
|
|
-l, --no-lines
|
|
don't generate `#line' directives
|
|
|
|
-k, --token-table
|
|
include a table of token names
|
|
|
|
|
|
Output:
|
|
|
|
--defines[=FILE]
|
|
also produce a header file
|
|
|
|
-d likewise but cannot specify FILE (for POSIX Yacc)
|
|
|
|
-r, --report=THINGS
|
|
also produce details on the automaton
|
|
|
|
--report-file=FILE
|
|
write report to FILE
|
|
|
|
-v, --verbose
|
|
same as `--report=state'
|
|
|
|
-b, --file-prefix=PREFIX
|
|
specify a PREFIX for output files
|
|
|
|
-o, --output=FILE
|
|
leave output to FILE
|
|
|
|
-g, --graph[=FILE]
|
|
also output a graph of the automaton
|
|
|
|
-x, --xml[=FILE]
|
|
also output an XML report of the automaton (the
|
|
XML schema is experimental)
|
|
|
|
|
|
Warning categories include:
|
|
|
|
`midrule-values'
|
|
unset or unused midrule values
|
|
|
|
`yacc' incompatibilities with POSIX YACC
|
|
|
|
`all' all the warnings
|
|
|
|
`no-CATEGORY'
|
|
turn off warnings in CATEGORY
|
|
|
|
`none' turn off all the warnings
|
|
|
|
`error'
|
|
treat warnings as errors
|
|
|
|
|
|
THINGS is a list of comma separated words that can
|
|
include:
|
|
|
|
`state'
|
|
describe the states
|
|
|
|
`itemset'
|
|
complete the core item sets with their closure
|
|
|
|
`lookahead'
|
|
explicitly associate lookahead tokens to items
|
|
|
|
`solved'
|
|
describe shift/reduce conflicts solving
|
|
|
|
`all' include all the above information
|
|
|
|
`none' disable the report
|
|
|
|
|
|
|
|
AUTHOR
|
|
Written by Robert Corbett and Richard Stallman.
|
|
|
|
|
|
Copyright (C) 2008 Free Software Foundation, Inc. This
|
|
is free software; see the source for copying conditions.
|
|
There is NO warranty; not even for MERCHANTABILITY or
|
|
FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
REPORTING BUGS
|
|
Report bugs to <bug-bison@gnu.org>.
|
|
|
|
SEE ALSO
|
|
lex(1), flex(1), yacc(1).
|
|
|
|
The full documentation for bison is maintained as a Tex-
|
|
info manual. If the info and bison programs are prop-
|
|
erly installed at your site, the command
|
|
|
|
info bison
|
|
|
|
should give you access to the complete manual.
|
|
|
|
|
|
|
|
bison 2.4.1 December 2008 BISON(1)
|