]> git.saurik.com Git - bison.git/blobdiff - NEWS
Don't depend on C99 features.
[bison.git] / NEWS
diff --git a/NEWS b/NEWS
index 41eb292ca33b80f02a6f293b2f72fc1f4f0e38dd..e5ff7976ef69fb3946e0d0cf10e49359e96e57d0 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,18 @@ Bison News
 
 Changes in version 2.3a+ (????-??-??):
 
+* Previously, Bison sometimes generated parser tables with states that were
+  unreachable due to conflicts in predecessor states.  Bison now:
+
+    1. Removes unreachable states.
+
+    2. Does not report any conflicts that appeared in unreachable states.
+       WARNING: As a result, you may need to update %expect and %expect-rr
+       directives in existing grammar files.
+
+    3. For any rule used only in such states, Bison now reports the rule as
+       "never reduced because of conflicts".
+
 * The -g and --graph options now output graphs in Graphviz DOT format,
   not VCG format.
 
@@ -16,26 +28,31 @@ Changes in version 2.3a+ (????-??-??):
 
     %defines "parser.h"
 
-* The `=' that used to be required in the following declarations is now
+* The `=' that used to be required in the following directives is now
   deprecated:
 
     %file-prefix "parser"
     %name-prefix "c_"
     %output "parser.c"
 
+* The quotes around NAME that used to be required in the following directive
+  are now deprecated:
+
+    %define NAME "VALUE"
+
 * Bison 2.3a provided a new set of directives as a more flexible alternative to
   the traditional Yacc prologue blocks.  Those have now been consolidated into
   a single %code directive with an optional qualifier field, which identifies
   the purpose of the code and thus the location(s) where Bison should generate
   it:
 
-    1. `%code            {CODE}' replaces `%after-header  {CODE}'
-    2. `%code "requires" {CODE}' replaces `%start-header  {CODE}'
-    3. `%code "provides" {CODE}' replaces `%end-header    {CODE}'
-    4. `%code "top"      {CODE}' replaces `%before-header {CODE}'
+    1. `%code          {CODE}' replaces `%after-header  {CODE}'
+    2. `%code requires {CODE}' replaces `%start-header  {CODE}'
+    3. `%code provides {CODE}' replaces `%end-header    {CODE}'
+    4. `%code top      {CODE}' replaces `%before-header {CODE}'
 
-  See the %code entries in `Appendix A Bison Symbols' in the Bison manual for a
-  summary of the new functionality.  See the new section `Prologue
+  See the %code entries in section `Bison Declaration Summary' in the Bison
+  manual for a summary of the new functionality.  See the new section `Prologue
   Alternatives' for a detailed discussion including the advantages of %code
   over the traditional Yacc prologues.
 
@@ -909,7 +926,7 @@ End:
 -----
 
 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
-2004, 2005, 2006 Free Software Foundation, Inc.
+2004, 2005, 2006, 2007 Free Software Foundation, Inc.
 
 This file is part of Bison, the GNU Compiler Compiler.