]> git.saurik.com Git - bison.git/blobdiff - NEWS
Regen.
[bison.git] / NEWS
diff --git a/NEWS b/NEWS
index cef62ee53760541e580a05f1c943d4b9672f7941..d5e40d55676501551d73199baa5261250fb82da2 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -9,14 +9,14 @@ Bison News
   Also, it is possible to add code to the parser's constructors using
   "%code init" and "%define init_throws".
 
-** Variable token.prefix
+** Variable api.tokens.prefix
 
-  The variable token.prefix changes the way tokens are identified in
+  The variable api.tokens.prefix changes the way tokens are identified in
   the generated files.  This is especially useful to avoid collisions
   with identifiers in the target language.  For instance
 
       %token FILE for ERROR
-      %define token.prefix "TOK_"
+      %define api.tokens.prefix "TOK_"
       %%
       start: FILE for ERROR;
 
@@ -25,6 +25,11 @@ Bison News
   use these prefixed token names, although the grammar itself still
   uses the short names (as in the sample rule given above).
 
+** Variable api.namespace
+
+  The "namespace" variable is renamed "api.namespace".  Backward
+  compatibility is ensured, but upgrading is recommended.
+
 * Changes in version 2.5 (????-??-??):
 
 ** IELR(1) and Canonical LR(1) Support
@@ -57,19 +62,26 @@ Bison News
   These features are experimental.  More user feedback will help to
   stabilize them.
 
+** Multiple %define's for any variable is now an error not a warning.
+
 ** %define can now be invoked via the command line.
 
-  Each of these bison command-line options
+  Each of these command-line options
 
-    -D NAME=VALUE
-    --define=NAME=VALUE
+    -D NAME[=VALUE]
+    --define=NAME[=VALUE]
+
+    -F NAME[=VALUE]
+    --force-define=NAME[=VALUE]
 
   is equivalent to this grammar file declaration
 
-    %define NAME "VALUE"
+    %define NAME ["VALUE"]
 
-  for any NAME and VALUE.  Omitting `=VALUE' on the command line is
-  equivalent to omitting `"VALUE"' in the declaration.
+  except that the manner in which Bison processes multiple definitions
+  for the same NAME differs.  Most importantly, -F and --force-define
+  quietly override %define, but -D and --define do not.  For further
+  details, see the section "Bison Options" in the Bison manual.
 
 ** %define variables renamed.