mooigraph 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
..
vms 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
COPYING 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
ChangeLog 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
LR0.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
Makefile 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
README 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
README.AMIGA 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
REFERENCES 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
allocate.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
bison++ 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
bison++.hairy.cc 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
bison++.simple.cc 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
closure.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
conflicts.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
derives.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
files.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
files.h 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
getargs.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
getopt.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
gram.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
gram.h 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
lalr.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
lex.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
lex.h 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
machine.h 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
main.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
new.h 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
nullable.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
output.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
print.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
reader.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
reduce.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
state.h 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
symtab.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
symtab.h 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
types.h 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
version.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
vmsgetargs.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago
warshall.c 3ddfecfb34 added a re-compilation of GNU Bison 1 parser generator 3 years ago

README

Bison parser generator for C++

This directory contains a version of the GNU Bison parser generator
modified by Larry Augustin to work with C++. It has been tested
with GNU g++ 1.37.1.

The major difference between this program and Bison is that this
program generates a C++ class declaration for the parser.
Documentation on how to use this class is nonexistent. The easiest
thing to do is run a simple YACC file through bison++ and look at the
.tab.h and .tab.c files generated. The .tab.h file contains a C++
class declaration for the parser. The yylex() routine is a member
function in this class. Somewhere you will have to write this
function. A useful contribution to the C++ community would be a
version of flex (flex++) to go with bison++.

The advantage of this approach is that it allows you to have multiple
instances of a parser, and also to have different parsers in the same
application without worrying about name conflicts between all the
global names (yylex, yylval, etc.) that YACC usually defines. All
those names still exist in bison++, except that they are now defined
with the scope of the parser class declaration.

Larry M. Augustin ERL 414
lma@sierra.stanford.edu Computer Systems Lab
lma@dayton.stanford.edu Stanford University
(415) 723-9285 Stanford, CA 94305

------------------------------------------------------------------------

GNU Bison README:

This directory contains the Bison parser generator.

When installing Bison on Sequent (or Pyramid?) systems, you must
be in the Berkeley universe.

On systems that do not have a working `alloca' function, you will
have to get a working `alloca' (perhaps from GNU Emacs) and edit the
Makefile so that it will be used.

On system V, you will need to define the macro USG while compiling.

Send bug reports to bug-gnu-utils@prep.ai.mit.edu.
Please include the date and author of the last entry in ChangeLog
in each bug report; this serves as a version number for Bison.