[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
2.1.6 Running Bison to Make the Parser
Before running Bison to produce a parser, we need to decide how to
arrange all the source code in one or more source files. For such a
simple example, the easiest thing is to put everything in one file,
the grammar file. The definitions of yylex
, yyerror
and
main
go at the end, in the epilogue of the grammar file
(see section The Overall Layout of a Bison Grammar).
For a large project, you would probably have several source files, and use
make
to arrange to recompile them.
With all the source in the grammar file, you use the following command to convert it into a parser implementation file:
bison file.y
In this example, the grammar file is called ‘rpcalc.y’ (for
“Reverse Polish CALCulator”). Bison produces a parser
implementation file named ‘file.tab.c’, removing the
‘.y’ from the grammar file name. The parser implementation file
contains the source code for yyparse
. The additional functions
in the grammar file (yylex
, yyerror
and main
) are
copied verbatim to the parser implementation file.
This document was generated on December 1, 2013 using texi2html 5.0.