diff options
Diffstat (limited to 'tools/bison++/bison.rnh')
-rw-r--r-- | tools/bison++/bison.rnh | 167 |
1 files changed, 167 insertions, 0 deletions
diff --git a/tools/bison++/bison.rnh b/tools/bison++/bison.rnh new file mode 100644 index 000000000..544178149 --- /dev/null +++ b/tools/bison++/bison.rnh @@ -0,0 +1,167 @@ +.! +.! RUNOFF source file for BISON.HLP +.! +.! This is a RUNOFF input file which will produce a VMS help file +.! for the VMS HELP library. +.! +.! Date of last revision: June 21, 1992 +.! +.! +.! Eric Youngdale +.! +.literal +.end literal +.no paging +.no flags all +.right margin 70 +.left margin 1 + +.indent -1 +1 BISON +.skip + The BISON command invokes the GNU BISON parser generator. +.skip +.literal + BISON file-spec +.end literal +.skip +.indent -1 +2 Parameters +.skip + file-spec +.skip +Here file-spec is the grammar file name, which usually ends in +.y. The parser file's name is made by replacing the .y +with _tab.c. Thus, the command bison foo.y yields +foo_tab.c. + +.skip +.indent -1 +2 Qualifiers +.skip + The following is the list of available qualifiers for BISON: +.literal + /DEBUG + /DEFINES + /FILE_PREFIX=prefix + /FIXED_OUTFILES + /NAME_PREFIX=prefix + /NOLINES + /OUTPUT=outfilefile + /VERBOSE + /VERSION + /YACC +.end literal +.skip +.indent -1 +2 /DEBUG +.skip +Output a definition of the macro YYDEBUG into the parser file, +so that the debugging facilities are compiled. +.skip +.indent -1 +2 /DEFINES +.skip +Write an extra output file containing macro definitions for the token +type names defined in the grammar and the semantic value type +YYSTYPE, as well as a extern variable declarations. +.skip +If the parser output file is named "name.c" then this file +is named "name.h". +.skip +This output file is essential if you wish to put the definition of +yylex in a separate source file, because yylex needs to +be able to refer to token type codes and the variable +yylval. +.skip +.indent -1 +2 /FILE_PREFIX +.skip +.literal + /FILIE_PREFIX=prefix +.end literal +.skip + Specify a prefix to use for all Bison output file names. The names are +chosen as if the input file were named prefix.c + +.skip +.indent -1 +2 /FIXED_OUTFILES +.skip +Equivalent to /OUTPUT=y_tab.c; the parser output file is called +y_tab.c, and the other outputs are called y.output and +y_tab.h. The purpose of this switch is to imitate Yacc's output +file name conventions. The /YACC qualifier is functionally equivalent +to /FIXED_OUTFILES. The following command definition will +work as a substitute for Yacc: + +.literal +$YACC:==BISON/FIXED_OUTFILES +.end literal +.skip +.indent -1 +2 /NAME_PREFIX +.skip +.literal + /NAME_PREFIX=prefix +.end literal +.skip +Rename the external symbols used in the parser so that they start with +"prefix" instead of "yy". The precise list of symbols renamed +is yyparse, yylex, yyerror, yylval, yychar and yydebug. + +For example, if you use /NAME_PREFIX="c", the names become cparse, +clex, and so on. + +.skip +.indent -1 +2 /NOLINES +.skip +Don't put any "#line" preprocessor commands in the parser file. +Ordinarily Bison puts them in the parser file so that the C compiler +and debuggers will associate errors with your source file, the +grammar file. This option causes them to associate errors with the +parser file, treating it an independent source file in its own right. + +.skip +.indent -1 +2 /OUTPUT +.skip +.literal + /OUTPUT=outfile +.end literal +.skip +Specify the name "outfile" for the parser file. +.skip +.indent -1 +2 /VERBOSE +.skip +Write an extra output file containing verbose descriptions of the +parser states and what is done for each type of look-ahead token in +that state. +.skip +This file also describes all the conflicts, both those resolved by +operator precedence and the unresolved ones. +.skip +The file's name is made by removing _tab.c or .c from +the parser output file name, and adding .output instead. +.skip +Therefore, if the input file is foo.y, then the parser file is +called foo_tab.c by default. As a consequence, the verbose +output file is called foo.output. +.skip +.indent -1 +2 /VERSION +.skip +Print the version number of Bison. + +.skip +.indent -1 +2 /YACC +.skip +See /FIXED_OUTFILES. +.skip +.indent -1 + + + |