*** Obsolete features
- Support for YYFAIL is removed, as announced since Bison 2.4.2.
+ Support for YYFAIL is removed (deprecated in Bison 2.4.2).
Support for yystype and yyltype (instead of YYSTYPE and YYLTYPE)
- is removed, as announced in Bison 1.875.
+ is removed (deprecated in Bison 1.875).
+ Support for YYPARSE_PARAM is removed (deprecated in Bison 1.875).
** Warnings
+*** Deprecated constructs
+
+ A new warning category, 'deprecated', is used to flag obsolete constructs
+ whose support will be discontinued. It is enabled by default. These
+ warnings used to be reported as 'other' warnings.
+
*** Warning categories are now displayed
For instance:
3.28-34: warning: type <type3> is used, but is not associated to any symbol
4.28-34: warning: type <type4> is used, but is not associated to any symbol
-*** Undeclared symbols
+*** Undefined but unused symbols
- Bison used to raise an error for %printer and %destructor directives for
- undefined symbols.
+ Bison used to raise an error for undefined symbols that are not used in
+ the grammar. This is now only a warning.
%printer {} symbol1
%destructor {} symbol2
+ %type <type> symbol3
%%
exp: "a";
- This is now only a warning.
-
*** Useless destructors or printers
Bison now warns about useless destructors or printers. In the following
** C++ skeletons improvements
-*** parser header (%defines) is no longer mandatory (lalr1.cc)
+*** The parser header is no longer mandatory (lalr1.cc, glr.cc)
- In which case, if needed, the support classes are defined in the generated
- parser, instead of additional files (location.hh, position.hh and
- stack.hh).
+ Using %defines is now optional. Without it, the needed support classes
+ are defined in the generated parser, instead of additional files (such as
+ location.hh, position.hh and stack.hh).
-*** locations are no longer mandatory (lalr1.cc, glr.cc)
+*** Locations are no longer mandatory (lalr1.cc, glr.cc)
Both lalr1.cc and glr.cc no longer require %location.
* Noteworthy changes in release ?.? (????-??-??) [?]
+* Noteworthy changes in release 2.6.2 (2012-08-03) [stable]
+
+** Bug fixes
+
+ Buffer overruns, complaints from Flex, and portability issues in the test
+ suite have been fixed.
+
+** Spaces in %lex- and %parse-param (lalr1.cc, glr.cc)
+
+ Trailing end-of-lines in %parse-param or %lex-param would result in
+ invalid C++. This is fixed.
+
+** Spurious spaces and end-of-lines
+
+ The generated files no longer end (nor start) with empty lines.
+
* Noteworthy changes in release 2.6.1 (2012-07-30) [stable]
Bison no longer executes user-specified M4 code when processing a grammar.