www.pudn.com > bison.zip > bison.rnh


.! 
.!	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