]> git.saurik.com Git - bison.git/blobdiff - doc/bison.1
* src/reader.c (parse_action): Don't store directly into the
[bison.git] / doc / bison.1
index 0357819c6a3c514751c1b6e6f5d1659822c0bd60..93eaf20129908cebe5ff0f2035c036e0801465f3 100644 (file)
@@ -10,7 +10,11 @@ bison \- GNU Project parser generator (yacc replacement)
 ] [
 .B \-d
 ] [
 ] [
 .B \-d
 ] [
-.B \-\-defines
+.BI \-\-defines= defines-file
+] [
+.B \-g
+] [
+.BI \-\-graph= graph-file
 ] [
 .B \-k
 ] [
 ] [
 .B \-k
 ] [
@@ -71,13 +75,22 @@ Unlike
 .IR yacc ,
 the generated files do not have fixed names, but instead use the prefix
 of the input file.
 .IR yacc ,
 the generated files do not have fixed names, but instead use the prefix
 of the input file.
+Moreover, if you need to put 
+.IR 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
 For instance, a grammar description file named
-.B parse.y
+.B parse.yxx
 would produce the generated parser in a file named
 would produce the generated parser in a file named
-.BR parse.tab.c ,
+.BR parse.tab.cxx ,
 instead of
 .IR yacc 's
 instead of
 .IR yacc 's
-.BR y.tab.c .
+.BR y.tab.c 
+or old 
+.IR Bison
+versions
+.BR parse.tab.c .
 .PP
 This description of the options that can be given to
 .I bison
 .PP
 This description of the options that can be given to
 .I bison
@@ -114,8 +127,6 @@ chosen as if the input file were named
 .B \-d
 .br
 .ns
 .B \-d
 .br
 .ns
-.TP
-.B \-\-defines
 Write an extra output file containing macro definitions for the token
 type names defined in the grammar and the semantic value type
 .BR YYSTYPE ,
 Write an extra output file containing macro definitions for the token
 type names defined in the grammar and the semantic value type
 .BR YYSTYPE ,
@@ -136,6 +147,32 @@ in a separate source file, because
 needs to be able to refer to token type codes and the variable
 .BR yylval .
 .TP
 needs to be able to refer to token type codes and the variable
 .BR yylval .
 .TP
+.BI \-\-defines= defines-file
+The behaviour of
+.BI \-\-defines 
+is the same than 
+.BI \-d 
+option. 
+The only difference is that it has an optionnal argument which is 
+the name of the output filename.
+.TP
+.BI \-g
+.br
+.ns
+Output a VCG definition of the LALR(1) grammar automaton computed by
+Bison. If the grammar file is 
+.BR foo.y
+, the VCG output file will be
+.BR foo.vcg .
+.TP
+.BI \-\-graph= graph-file
+The behaviour of 
+.BI \-\-graph 
+is the same than
+.BI \-g
+option. The only difference is that it has an optionnal argument which 
+is the name of the output graph filename.
+.TP
 .B \-k
 .br
 .ns
 .B \-k
 .br
 .ns
@@ -225,9 +262,9 @@ and so on.
 .ns
 .TP
 .B \-\-debug
 .ns
 .TP
 .B \-\-debug
-Output a definition of the macro
+In the parser file, define the macro
 .B YYDEBUG
 .B YYDEBUG
-into the parser file,
+to 1 if it is not already defined,
 so that the debugging facilities are compiled.
 .TP
 .B \-v
 so that the debugging facilities are compiled.
 .TP
 .B \-v
@@ -306,9 +343,9 @@ bison \-y $*
 .sp
 .RE
 .SH FILES
 .sp
 .RE
 .SH FILES
-/usr/local/lib/bison.simple    simple parser
+/usr/local/share/bison/bison.simple    simple parser
 .br
 .br
-/usr/local/lib/bison.hairy     complicated parser
+/usr/local/share/bison/bison.hairy     complicated parser
 .SH "ENVIRONMENT VARIABLES"
 .TP
 .SM BISON_SIMPLE
 .SH "ENVIRONMENT VARIABLES"
 .TP
 .SM BISON_SIMPLE