X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/0ea583d25021695cff47b77b7d02df1f0d065301..1c72905811fa75e0715eb5ec1066dfcae520d070:/NEWS?ds=sidebyside diff --git a/NEWS b/NEWS index 2de1a5de..96016482 100644 --- a/NEWS +++ b/NEWS @@ -9,6 +9,43 @@ Bison News Also, it is possible to add code to the parser's constructors using "%code init" and "%define init_throws". +* Changes in version 2.5 (????-??-??): + +** %define can now be invoked via the command line. + + Each of these bison command-line options + + -D NAME=VALUE + --define=NAME=VALUE + + is equivalent to this grammar file declaration + + %define NAME "VALUE" + + for any NAME and VALUE. Omitting `=VALUE' on the command line is + equivalent to omitting `"VALUE"' in the declaration. + +** Temporary hack for adding a semicolon to the user action. + + Previously, Bison appended a semicolon to every user action for + reductions when the output language defaulted to C (specifically, when + neither %yacc, %language, %skeleton, or equivalent command-line + options were specified). This allowed actions such as + + exp: exp "+" exp { $$ = $1 + $3 }; + + instead of + + exp: exp "+" exp { $$ = $1 + $3; }; + + As a first step in removing this misfeature, Bison now issues a + warning when it appends a semicolon. Moreover, in cases where Bison + cannot easily determine whether a semicolon is needed (for example, an + action ending with a cpp directive or a braced compound initializer), + it no longer appends one. Thus, the C compiler might now complain + about a missing semicolon where it did not before. Future releases of + Bison will cease to append semicolons entirely. + * Changes in version 2.4.2 (????-??-??): * Changes in version 2.4.1 (2008-12-11):