]> git.saurik.com Git - bison.git/commitdiff
* doc/bison.texinfo (Bison Options): Say more accurately what
authorPaul Eggert <eggert@cs.ucla.edu>
Tue, 3 Jan 2006 22:35:45 +0000 (22:35 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Tue, 3 Jan 2006 22:35:45 +0000 (22:35 +0000)
--yacc does.
* src/parse-gram.y (rules_or_grammar_declaration): Don't complain
about declarations in the grammar when in Yacc mode, as POSIX does
not require a diagnostic when the grammar uses extensions.

ChangeLog
doc/bison.texinfo
src/parse-gram.y

index f9907482af54a3fee973ed210e4fedd4e0430e47..a9d8a7aef384444bc6563748f9d51650fc816fab 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
 
+       * doc/bison.texinfo (Bison Options): Say more accurately what
+       --yacc does.
+       * src/parse-gram.y (rules_or_grammar_declaration): Don't complain
+       about declarations in the grammar when in Yacc mode, as POSIX does
+       not require a diagnostic when the grammar uses extensions.
+
+       * src/reduce.c (reduce_grammar): Remove unnecessary cast to bool.
+
        Warn about dubious constructions like "%token T T".
        Reported by twlevo.
        * src/symtab.h (struct symbol.declared): New member.
index 671d1c4eb7e2f8fa16ab34a80bb46de24d9d40a7..b5c2849ba4084e541ae56bd32e3705f18e457e90 100644 (file)
@@ -6677,13 +6677,14 @@ Print the version number of Bison and exit.
 @item --print-localedir
 Print the name of the directory containing locale-dependent data.
 
-@need 1750
 @item -y
 @itemx --yacc
-Equivalent to @samp{-o y.tab.c}; the parser output file is called
+Act more like the traditional Yacc command.  This can cause
+different diagnostics to be generated, and may change behavior in
+other minor ways.  Most importantly, imitate Yacc's output
+file name conventions, so that the parser output file is called
 @file{y.tab.c}, and the other outputs are called @file{y.output} and
-@file{y.tab.h}.  The purpose of this option is to imitate Yacc's output
-file name conventions.  Thus, the following shell script can substitute
+@file{y.tab.h}.  Thus, the following shell script can substitute
 for Yacc, and the Bison distribution contains such a script for
 compatibility with @acronym{POSIX}:
 
@@ -6691,6 +6692,12 @@ compatibility with @acronym{POSIX}:
 #! /bin/sh
 bison -y "$@@"
 @end example
+
+The @option{-y}/@option{--yacc} option is intended for use with
+traditional Yacc grammars.  If your grammar uses a Bison extension
+like @samp{%glr-parser}, Bison might not be Yacc-compatible even if
+this option is specified.
+
 @end table
 
 @noindent
index 71f4829e6c6c5cc6aca7248ce38131656555bde8..4a31f014cb03f7590bb98258bd6edf88b71650f8 100644 (file)
@@ -391,10 +391,6 @@ grammar:
 rules_or_grammar_declaration:
   rules
 | grammar_declaration ";"
-    {
-      if (yacc_flag)
-       complain_at (@$, _("POSIX forbids declarations in the grammar"));
-    }
 | error ";"
     {
       yyerrok;