Reformat news for version 2.0.

This commit is contained in:
Paul Eggert
2004-12-26 05:49:52 +00:00
parent 6c7ffa8380
commit 82de6b0dde

94
NEWS
View File

@@ -1,73 +1,69 @@
Bison News Bison News
---------- ----------
Changes in version 1.875f: Changes in version 2.0, 2004-12-25:
* Bison-generated parsers no longer default to using the alloca function * Possibly-incompatible changes
(when available) to extend the parser stack, due to widespread
problems in unchecked stack-overflow detection. You can "#define
YYSTACK_USE_ALLOCA 1" to use alloca anyway, but please read the
manual to determine safe values for YYMAXDEPTH in that case.
Changes in version 1.875e, 2004-12-10: - Bison-generated parsers no longer default to using the alloca function
(when available) to extend the parser stack, due to widespread
problems in unchecked stack-overflow detection. You can "#define
YYSTACK_USE_ALLOCA 1" to require the use of alloca, but please read
the manual to determine safe values for YYMAXDEPTH in that case.
* New directive: %initial-action. - Error token location.
This directive allows the user to run arbitrary code (including During error recovery, the location of the syntax error is updated
initializing @$) from yyparse before parsing starts. to cover the whole sequence covered by the error token: it includes
the shifted symbols thrown away during the first part of the error
recovery, and the lookahead rejected during the second part.
* The option `--report=lookahead' was changed to `--report=look-ahead'. - Semicolon changes:
The old spelling still works, but is not documented and will be . Stray semicolons are no longer allowed at the start of a grammar.
removed. . Semicolons are now required after in-grammar declarations.
* Error token location. - Unescaped newlines are no longer allowed in character constants or
During error recovery, the location of the syntax error is updated string literals. They were never portable, and GCC 3.4.0 has
to cover the whole sequence covered by the error token: it includes dropped support for them. Better diagnostics are now generated if
the shifted symbols thrown away during the first part of the error forget a closing quote.
recovery, and the lookahead rejected during the second part.
* Goto numbers are no longer arbitrarily limited to 16-bit counts. - NUL bytes are no longer allowed in Bison string literals, unfortunately.
Changes in version 1.875d, 2004-05-21: * New features
* Unescaped newlines are no longer allowed in character constants or - GLR grammars now support locations.
string literals. They were never portable, and GCC 3.4.0 has
dropped support for them. Better diagnostics are now generated if
forget a closing quote.
* NUL bytes are no longer allowed in Bison string literals, unfortunately. - New directive: %initial-action.
This directive allows the user to run arbitrary code (including
initializing @$) from yyparse before parsing starts.
* %token numbers can now be hexadecimal integers, e.g., `%token FOO 0x12d'. - A new directive "%expect-rr N" specifies the expected number of
This is a GNU extension. reduce/reduce conflicts in GLR parsers.
* A new directive "%expect-rr N" specifies the expected number of - %token numbers can now be hexadecimal integers, e.g., `%token FOO 0x12d'.
reduce/reduce conflicts in GLR parsers. This is a GNU extension.
* Experimental %destructor support has been added to lalr1.cc. - The option `--report=lookahead' was changed to `--report=look-ahead'.
The old spelling still works, but is not documented and will be
removed.
Changes in version 1.875c, 2003-08-25: - Experimental %destructor support has been added to lalr1.cc.
(Just bug fixes.) - New configure option --disable-yacc, to disable installation of the
yacc command and -ly library introduced in 1.875 for POSIX conformance.
Changes in version 1.875b, 2003-06-17: * Bug fixes
* GLR grammars now support locations. - For now, %expect-count violations are now just warnings, not errors.
This is for compatibility with Bison 1.75 and earlier (when there are
reduce/reduce conflicts) and with Bison 1.30 and earlier (when there
are too many or too few shift/reduce conflicts). However, in future
versions of Bison we plan to improve the %expect machinery so that
these violations will become errors again.
- Within Bison itself, numbers (e.g., goto numbers) are no longer
arbitrarily limited to 16-bit counts.
* Semicolon changes:
- Semicolons are now allowed before "|" in grammar rules, as POSIX requires. - Semicolons are now allowed before "|" in grammar rules, as POSIX requires.
- Stray semicolons are no longer allowed at the start of a grammar.
- Semicolons are now required after in-grammar declarations.
Changes in version 1.875a, 2003-02-01:
* For now, %expect-count violations are now just warnings, not errors.
This is for compatibility with Bison 1.75 and earlier (when there are
reduce/reduce conflicts) and with Bison 1.30 and earlier (when there
are too many or too few shift/reduce conflicts). However, in future
versions of Bison we plan to improve the %expect machinery so that
these violations will become errors again.
* New configure option --disable-yacc, to disable installation of the
yacc command and -ly library introduced in 1.875 for POSIX conformance.
Changes in version 1.875, 2003-01-01: Changes in version 1.875, 2003-01-01: