** Bug fixes
-*** Named %union support
+*** Location of errors
+
+ In C++ parsers, out-of-bounds errors can happen when a rule with an empty
+ ride-hand side raises a syntax error. The behavior of the default parser
+ (yacc.c) in such a condition was undefined.
+
+ Now all the parsers match the behavior of glr.c: @$ is used as the
+ location of the error. This handles gracefully rules with and without
+ rhs.
+
+* Noteworthy changes in release 3.0.4 (2015-01-23) [stable]
+
+** Bug fixes
+
+*** C++ with Variants (lalr1.cc)
+
+ Fix a compiler warning when no %destructor use $$.
+
+*** Test suites
+
+ Several portability issues in tests were fixed.
+
+* Noteworthy changes in release 3.0.3 (2015-01-15) [stable]
+
+** Bug fixes
+
+*** C++ with Variants (lalr1.cc)
+
+ Problems with %destructor and '%define parse.assert' have been fixed.
+
+*** Named %union support (yacc.c, glr.c)
Bison 3.0 introduced a regression on named %union such as
%union foo { int ival; };
- The possibility to use a name was introduced ``for Yacc compatibility''.
+ The possibility to use a name was introduced "for Yacc compatibility".
It is however not required by POSIX Yacc, and its usefulness is not clear.
-*** %define api.value.type union with %defines
+*** %define api.value.type union with %defines (yacc.c, glr.c)
- The yacc.c and glr.c parsers were broken when %defines was used
- together with "%define api.value.type union".
+ The C parsers were broken when %defines was used together with "%define
+ api.value.type union".
*** Redeclarations are reported in proper order