Le 28 avr. 06 à 15:32, Steve Murphy a écrit :

Hello--

A nit about the Bison manual for 2.1:

First, in section 10.1.1 of the bison info manual, it
says that if you use the lalr1.cc skeleton, you'll get a list of files.

This isn't totally correct. It doesn't mention that you have to
call your grammar "something.yy" to get the list of files mentioned.

You are right.  I have included a pointer to the place where the
documentation gives all the details.  And now, lalr1.cc fails if
%defines is not used.

Index: ChangeLog
from  Akim Demaille  <[EMAIL PROTECTED]>
        * doc/bison.texinfo (C++ Bison Interface): Clarify the naming
        scheme.
        Reported by Steve Murphy.

+2006-05-14  Akim Demaille  <[EMAIL PROTECTED]>
+
        * data/glr.cc, data/lalr1.cc: Using %defines is mandatory.
        * data/glr.cc: b4_location_flag is now b4_locations_flag.
 
Index: THANKS
===================================================================
RCS file: /cvsroot/bison/bison/THANKS,v
retrieving revision 1.65
diff -u -r1.65 THANKS
--- THANKS 11 May 2006 11:35:13 -0000 1.65
+++ THANKS 14 May 2006 20:57:18 -0000
@@ -67,6 +67,7 @@
 Richard Stallman          [EMAIL PROTECTED]
 Robert Anisko             [EMAIL PROTECTED]
 Shura                     [EMAIL PROTECTED]
+Steve Murhpy             [EMAIL PROTECTED]
 Tim Josling               [EMAIL PROTECTED]
 Tim Van Holder            [EMAIL PROTECTED]
 Tom Lane                  [EMAIL PROTECTED]
Index: doc/bison.texinfo
===================================================================
RCS file: /cvsroot/bison/bison/doc/bison.texinfo,v
retrieving revision 1.187
diff -u -r1.187 bison.texinfo
--- doc/bison.texinfo 11 May 2006 16:54:01 -0000 1.187
+++ doc/bison.texinfo 14 May 2006 20:57:21 -0000
@@ -7040,13 +7040,14 @@
 
 @item @var{file}.hh
 @itemx @var{file}.cc
-The declaration and implementation of the C++ parser class.
[EMAIL PROTECTED] is the name of the output file.  It follows the same
-rules as with regular C parsers.
-
-Note that @[EMAIL PROTECTED] is @emph{mandatory}, the C++ cannot
-work without the parser class declaration.  Therefore, you must either
-pass @option{-d}/@option{--defines} to @command{bison}, or use the
+(Assuming the extension of the input file was @samp{.yy}.)  The
+declaration and implementation of the C++ parser class.  The basename
+and extension of these two files follow the same rules as with regular C
+parsers (@pxref{Invocation}).
+
+Note that the header is @emph{mandatory}, the C++ cannot work without
+the parser class declaration.  Therefore, you must either pass
[EMAIL PROTECTED]/@option{--defines} to @command{bison}, or use the
 @samp{%defines} directive.
 @end table
 
_______________________________________________
help-bison@gnu.org http://lists.gnu.org/mailman/listinfo/help-bison

Reply via email to