]> git.saurik.com Git - bison.git/blobdiff - NEWS
Finish implementing %define lr.type.
[bison.git] / NEWS
diff --git a/NEWS b/NEWS
index b436896f6531a4b23a46369ab737cbe721afc8d0..960164823460212dfaf2c8a645b0acb7a82aa785 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -25,6 +25,27 @@ Bison News
   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):