]> git.saurik.com Git - bison.git/blobdiff - NEWS
* data/yacc.c: Guard the declaration of yytoknum also with
[bison.git] / NEWS
diff --git a/NEWS b/NEWS
index 8eeef044cbec15a2dfbfdaa74bcd818ffea496e6..51836800db71469ff3d051a3747afd1268647961 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,7 +1,15 @@
 Bison News
 ----------
 
 Bison News
 ----------
 
-Changes in version 1.49b:
+Changes in version 1.49b, 2002-08-12:
+
+* GLR parsing
+  The declaration
+     %glr-parser
+  causes Bison to produce a Generalized LR (GLR) parser, capable of handling
+  almost any context-free grammar, ambiguous or not.  The new declarations
+  %dprec and %merge on grammar rules allow parse-time resolution of
+  ambiguities.  Contributed by Paul Hilfinger.
 
 * Output Directory
   When not in Yacc compatibility mode, when the output file was not
 
 * Output Directory
   When not in Yacc compatibility mode, when the output file was not
@@ -22,6 +30,13 @@ Changes in version 1.49b:
   user specified that one of her tokens is numbered 256, then error
   will be mapped onto another number.
 
   user specified that one of her tokens is numbered 256, then error
   will be mapped onto another number.
 
+* Verbose error messages
+  They no longer report `..., expecting error or...' for state where
+  error recovery is possible.
+
+* End token
+  Defaults to `$end' instead of `$'.
+
 * Error recovery now conforms to documentation and to POSIX
   When a Bison-generated parser encounters a syntax error, it now pops
   the stack until it finds a state that allows shifting the error
 * Error recovery now conforms to documentation and to POSIX
   When a Bison-generated parser encounters a syntax error, it now pops
   the stack until it finds a state that allows shifting the error
@@ -34,9 +49,11 @@ Changes in version 1.49b:
 * Traces
   Popped tokens and nonterminals are now reported.
 
 * Traces
   Popped tokens and nonterminals are now reported.
 
-* Large grammars
-  Large grammars are now supported (large token numbers, large grammar
-  size (= sum of the LHS and RHS lengths), large LALR tables).
+* Larger grammars
+  Larger grammars are now supported (larger token numbers, larger grammar
+  size (= sum of the LHS and RHS lengths), larger LALR tables).
+  Formerly, many of these numbers ran afoul of 16-bit limits;
+  now these limits are 32 bits on most hosts.
 
 * Explicit initial rule
   Bison used to play hacks with the initial rule, which the user does
 
 * Explicit initial rule
   Bison used to play hacks with the initial rule, which the user does
@@ -50,6 +67,10 @@ Changes in version 1.49b:
 * Useless rules, useless nonterminals
   They are now reported, as a warning, with their locations.
 
 * Useless rules, useless nonterminals
   They are now reported, as a warning, with their locations.
 
+* Rules never reduced
+  Rules that can never be reduced because of conflicts are now
+  reported.
+
 * Incorrect `Token not used'
   On a grammar such as
 
 * Incorrect `Token not used'
   On a grammar such as
 
@@ -72,7 +93,7 @@ Changes in version 1.49b:
 * Token end-of-file
   The token end of file may be specified by the user, in which case,
   the user symbol is used in the reports, the graphs, and the verbose
 * Token end-of-file
   The token end of file may be specified by the user, in which case,
   the user symbol is used in the reports, the graphs, and the verbose
-  error messages instead of `$', which remains being the defaults.
+  error messages instead of `$end', which remains being the default.
   For instance
      %token YYEOF 0
   or
   For instance
      %token YYEOF 0
   or
@@ -81,7 +102,8 @@ Changes in version 1.49b:
 * Semantic parser
   This old option, which has been broken for ages, is removed.
 
 * Semantic parser
   This old option, which has been broken for ages, is removed.
 
-* New translation
+* New translations
+  Brazilian Portuguese, thanks to Alexandre Folle de Menezes.
   Croatian, thanks to Denis Lackovic.
 
 * Incorrect token definitions
   Croatian, thanks to Denis Lackovic.
 
 * Incorrect token definitions
@@ -113,6 +135,8 @@ Changes in version 1.49b:
       bar: '0' {} '0';
 
   This is fixed.
       bar: '0' {} '0';
 
   This is fixed.
+
+* GNU M4 is now required when using Bison.
 \f
 Changes in version 1.35, 2002-03-25:
 
 \f
 Changes in version 1.35, 2002-03-25: