1 BISON

 The BISON command invokes the GNU BISON parser generator.

       BISON file-spec

2 Parameters

 file-spec

 Here file-spec is the grammar file name, which usually ends  in  with
 _tab.c.  Thus, the command bison foo.y yields foo_tab.c.

2 Qualifiers

 The following is the list of available qualifiers for BISON:
        /DEBUG
        /DEFINES
        /FILE_PREFIX=prefix
        /FIXED_OUTFILES
        /NAME_PREFIX=prefix
        /NOLINES
        /OUTPUT=outfilefile
        /VERBOSE
        /VERSION
        /YACC

2 /DEBUG

 Output a definition of the macro YYDEBUG into  the  parser  file,  so
 that the debugging facilities are compiled.

2 /DEFINES

 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.

 If the parser output file is named "name.c" then this file  is  named
 "name.h".

 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.

2 /FILE_PREFIX

   /FILIE_PREFIX=prefix

        Specify a prefix to use for all Bison output file names.   The
 names are chosen as if the input file were named prefix.c

2 /FIXED_OUTFILES

 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:
 $YACC:==BISON/FIXED_OUTFILES

2 /NAME_PREFIX

   /NAME_PREFIX=prefix

 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.

2 /NOLINES

 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.

2 /OUTPUT

   /OUTPUT=outfile

 Specify the name "outfile" for the parser file.

2 /VERBOSE

 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.

 This file also describes all the conflicts, both  those  resolved  by
 operator precedence and the unresolved ones.

 The file's name is made by removing _tab.c  or  .c  from  the  parser
 output file name, and adding .output instead.

 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.

2 /VERSION

 Print the version number of Bison.

2 /YACC

 See /FIXED_OUTFILES.

