X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/41d35e54d59bebb68af3d2dde45a1f7e83b71b83..d67e37a74bc91e2fe254e5b7a28c62537a20e206:/NEWS diff --git a/NEWS b/NEWS index 492aa876..9933922c 100644 --- a/NEWS +++ b/NEWS @@ -119,6 +119,23 @@ Bison News POSIX Yacc whose use is reported by -Wyacc, and rejected in Yacc mode (--yacc). +** YYFAIL now produces warnings and Java parsers no longer implement it. + + YYFAIL has existed for many years as an undocumented feature of + deterministic parsers in C generated by Bison. More recently, it was + a documented feature of Bison's experimental Java parsers. As + promised in Bison 2.4.2's NEWS entry, any appearance of YYFAIL in a + semantic action now produces a deprecation warning, and Java parsers + no longer implement YYFAIL at all. For further details, including a + discussion of how to suppress C preprocessor warnings about YYFAIL + being unused, see the Bison 2.4.2 NEWS entry. + +** `%prec IDENTIFIER' requires IDENTIFIER to be defined separately. + + As promised in Bison 2.4.2's NEWS entry, it is now an error if a token + that appears after a %prec directive is not defined by %token, %left, + %right, or %nonassoc. This is required by POSIX. + ** Temporary hack for adding a semicolon to the user action. Previously, Bison appended a semicolon to every user action for @@ -162,8 +179,25 @@ Bison News were resolved with %nonassoc. Such tokens are now properly omitted from the list. +** Destructor calls fixed for lookaheads altered in semantic actions. + + Previously for deterministic parsers in C, if a user semantic action + altered yychar, the parser in some cases used the old yychar value to + determine which destructor to call for the lookahead upon a syntax + error or upon parser return. This bug has been fixed. + * Changes in version 2.4.2 (????-??-??): +** `%prec IDENTIFIER' requires IDENTIFIER to be defined separately. + + POSIX specifies that an error be reported for any identifier that does + not appear on the LHS of a grammar rule and that is not defined by + %token, %left, %right, or %nonassoc. Bison 2.3b and later lost this + error report for the case when an identifier appears only after a + %prec directive. It is now restored. However, for backward + compatibility with recent Bison releases, it is only a warning for + now. In Bison 2.5 and later, it will return to being an error. + ** Detection of GNU M4 1.4.6 or newer during configure is improved. ** Warnings from gcc's -Wundef option about undefined YYENABLE_NLS, @@ -1285,8 +1319,7 @@ End: ----- -Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, -2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. +Copyright (C) 1995-2010 Free Software Foundation, Inc. This file is part of Bison, the GNU Parser Generator.