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