]> git.saurik.com Git - bison.git/commitdiff
%define lr.type: make values lowercase IDs.
authorJoel E. Denny <jdenny@clemson.edu>
Fri, 28 Aug 2009 04:57:06 +0000 (00:57 -0400)
committerJoel E. Denny <jdenny@clemson.edu>
Fri, 28 Aug 2009 11:10:27 +0000 (07:10 -0400)
That is, "LALR" => "lalr", "IELR" => "ielr", and
"canonical LR" => "canonical-lr".
* NEWS (2.5): Update documentation.
* doc/bison.texinfo (Decl Summary): Likewise.
* src/ielr.c (ielr): Use new values.
* src/ielr.h (ielr): Update documentation.
* src/reader.c (prepare_percent_define_front_end_variables): Use
and validate new values.
* tests/existing.at (AT_TEST_EXISTING_GRAMMAR): Update test
grammars.
* tests/reduce.at (AT_TEST_LR_TYPE): Likewise.

ChangeLog
NEWS
doc/bison.texinfo
src/ielr.c
src/ielr.h
src/parse-gram.c
src/parse-gram.h
src/reader.c
tests/existing.at
tests/reduce.at

index fc9a27459a1cefb7d85e6d613165d7ed5ddaf088..83f0a2dcb48d7a48d2d6e407075b62ddee49ad3e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2009-08-28  Joel E. Denny  <jdenny@clemson.edu>
+
+       %define lr.type: make values lowercase IDs.
+       That is, "LALR" => "lalr", "IELR" => "ielr", and
+       "canonical LR" => "canonical-lr".
+       * NEWS (2.5): Update documentation.
+       * doc/bison.texinfo (Decl Summary): Likewise.
+       * src/ielr.c (ielr): Use new values.
+       * src/ielr.h (ielr): Update documentation.
+       * src/reader.c (prepare_percent_define_front_end_variables): Use
+       and validate new values.
+       * tests/existing.at (AT_TEST_EXISTING_GRAMMAR): Update test
+       grammars.
+       * tests/reduce.at (AT_TEST_LR_TYPE): Likewise.
+
 2009-08-27  Eric Blake  <ebb9@byu.net>
 
        scan-gram: avoid portability trap with ctype usage.
diff --git a/NEWS b/NEWS
index 7a5009cc16b9b81a50adf753070e1504dbc55918..6bfe53a73c56c695280d02d9cfa1fce3b028abd1 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -55,9 +55,9 @@ Bison News
   default.  You can specify the type of parser tables in the grammar
   file with these directives:
 
-    %define lr.type "LALR"
-    %define lr.type "IELR"
-    %define lr.type "canonical LR"
+    %define lr.type "lalr"
+    %define lr.type "ielr"
+    %define lr.type "canonical-lr"
 
   The default reduction optimization in the parser tables can also be
   adjusted using `%define lr.default-reductions'.  See the documentation
index ccff9d51e3d91ee14889c511c0f91884e6da34ae..6dd6037fc8a83581c0559fb04be7b0f9b9bc132e 100644 (file)
@@ -5061,7 +5061,7 @@ without performing any extra reductions.
 
 @item Default Value:
 @itemize
-@item @code{"accepting"} if @code{lr.type} is @code{"canonical LR"}.
+@item @code{"accepting"} if @code{lr.type} is @code{"canonical-lr"}.
 @item @code{"all"} otherwise.
 @end itemize
 @end itemize
@@ -5126,7 +5126,7 @@ More user feedback will help to stabilize it.)
 
 @item Accepted Values:
 @itemize
-@item @code{"LALR"}.
+@item @code{"lalr"}.
 While Bison generates @acronym{LALR} parser tables by default for
 historical reasons, @acronym{IELR} or canonical @acronym{LR} is almost
 always preferable for deterministic parsers.
@@ -5155,7 +5155,7 @@ investigate such problems while ignoring the more subtle differences
 from @acronym{IELR} and canonical @acronym{LR}.
 @end itemize
 
-@item @code{"IELR"}.
+@item @code{"ielr"}.
 @acronym{IELR} is a minimal @acronym{LR} algorithm.
 That is, given any grammar (@acronym{LR} or non-@acronym{LR}),
 @acronym{IELR} and canonical @acronym{LR} always accept exactly the same
@@ -5169,7 +5169,7 @@ grammars, the number of conflicts for @acronym{IELR} is often an order
 of magnitude less as well.
 This can significantly reduce the complexity of developing of a grammar.
 
-@item @code{"canonical LR"}.
+@item @code{"canonical-lr"}.
 @cindex delayed syntax errors
 @cindex syntax errors delayed
 The only advantage of canonical @acronym{LR} over @acronym{IELR} is
@@ -5185,7 +5185,7 @@ Even when canonical @acronym{LR} behavior is ultimately desired,
 facilitate the development of a grammar.
 @end itemize
 
-@item Default Value: @code{"LALR"}
+@item Default Value: @code{"lalr"}
 @end itemize
 
 
index cdab6b88163db4827eef0210f3ac63cc9225078b..dfe981a53c31e6ebacd94c1bec9dd71f3ab30c87 100644 (file)
@@ -1095,11 +1095,11 @@ ielr (void)
   /* Examine user options.  */
   {
     char *type = muscle_percent_define_get ("lr.type");
-    if (0 == strcmp (type, "LALR"))
+    if (0 == strcmp (type, "lalr"))
       lr_type = LR_TYPE__LALR;
-    else if (0 == strcmp (type, "IELR"))
+    else if (0 == strcmp (type, "ielr"))
       lr_type = LR_TYPE__IELR;
-    else if (0 == strcmp (type, "canonical LR"))
+    else if (0 == strcmp (type, "canonical-lr"))
       lr_type = LR_TYPE__CANONICAL_LR;
     else
       aver (false);
index 27b3a4458ca086179eeb5b5dcddae1a360f86259..feab49a8d644ad1e5e1a4d6351a7041da68aec25 100644 (file)
@@ -33,9 +33,9 @@
  *   - \c ::states is of size \c ::nstates (which might be greater than
  *     <tt>::nstates \@pre</tt>) and defines the type of parser specified by
  *     the value of the \c \%define variable \c lr.type.  Its value can be:
- *     - \c "LALR".
- *     - \c "IELR".
- *     - \c "canonical LR".
+ *     - \c "lalr".
+ *     - \c "ielr".
+ *     - \c "canonical-lr".
  */
 void ielr (void);
 
index 82cf45679604427b362529ea0b894559875a63d8..feeef1a6d69dfa87f40c1cce20a81056f8584220 100644 (file)
@@ -1,4 +1,4 @@
-/* A Bison parser, made by GNU Bison 2.4.390-0aaa.  */
+/* A Bison parser, made by GNU Bison 2.4.394-10e5b80-dirty.  */
 
 /* Implementation for Bison's Yacc-like parsers in C
 
@@ -45,7 +45,7 @@
 #define YYBISON 1
 
 /* Bison version.  */
-#define YYBISON_VERSION "2.4.390-0aaa"
+#define YYBISON_VERSION "2.4.394-10e5b80-dirty"
 
 /* Skeleton name.  */
 #define YYSKELETON_NAME "yacc.c"
index c07408b89d05884fc1936ebe883c8f833252691b..1eeb8b780f9068fa8651322001eb152d843aa4df 100644 (file)
@@ -1,4 +1,4 @@
-/* A Bison parser, made by GNU Bison 2.4.390-0aaa.  */
+/* A Bison parser, made by GNU Bison 2.4.394-10e5b80-dirty.  */
 
 /* Interface for Bison's Yacc-like parsers in C
 
index 05fa9ee1360f7bc08105e7d98aac95c4ed6776f2..8a292b8ab014e39ac4a3e92578e48890313769ec 100644 (file)
@@ -608,9 +608,9 @@ prepare_percent_define_front_end_variables (void)
     char *lr_type;
     /* IELR would be a better default, but LALR is historically the
        default.  */
-    muscle_percent_define_default ("lr.type", "LALR");
+    muscle_percent_define_default ("lr.type", "lalr");
     lr_type = muscle_percent_define_get ("lr.type");
-    if (0 != strcmp (lr_type, "canonical LR"))
+    if (0 != strcmp (lr_type, "canonical-lr"))
       muscle_percent_define_default ("lr.default-reductions", "all");
     else
       muscle_percent_define_default ("lr.default-reductions", "accepting");
@@ -620,7 +620,7 @@ prepare_percent_define_front_end_variables (void)
   /* Check %define front-end variables.  */
   {
     static char const * const values[] = {
-      "lr.type", "LALR", "IELR", "canonical LR", NULL,
+      "lr.type", "lalr", "ielr", "canonical-lr", NULL,
       "lr.default-reductions", "all", "consistent", "accepting", NULL,
       NULL
     };
index 976ab0c6384af0ed99831738d6f528c9e7af98f2..5a89732457ad36456027fc66520f2d0bc7d00213 100644 (file)
@@ -42,18 +42,18 @@ AT_CHECK([[diff -u input-lalr.output input.output \
          [[0]], [$1])])
 
 AT_TEST_TABLES_AND_PARSE([$2[: LALR(1)]], [[LALR]], [[last-state]],
-                         [[%define lr.type "LALR"
+                         [[%define lr.type "lalr"
 ]$3],
                          [$4], [$5], [$6], [$7],
                          [AT_LALR1_DIFF_CHECK([$8])$9], [$10], [$11], [$12])
 AT_TEST_TABLES_AND_PARSE([$2[: IELR(1)]], [[IELR]], [[last-state]],
-                         [[%define lr.type "IELR"
+                         [[%define lr.type "ielr"
 ]$3],
                          [$4], [$5], [$6], [$7],
                          [AT_LALR1_DIFF_CHECK([$8])$9], [$10], [$11], [$12])
 AT_TEST_TABLES_AND_PARSE([$2[: Canonical LR(1)]], [[canonical LR]],
                          [[last-state,no-xml]],
-                         [[%define lr.type "canonical LR"
+                         [[%define lr.type "canonical-lr"
 ]$3],
                          [$4], [$5], [$6], [$7],
                          [$9], [$10], [$11], [$12])
index 0db3830b0f197413dcf928f5231bb8063c8b0c84..45a856a5277fc6206ad2b73c4aa6232f54eb5990 100644 (file)
@@ -375,19 +375,19 @@ m4_define([AT_TEST_LR_TYPE],
 AT_TEST_TABLES_AND_PARSE([[no %define lr.type: ]$1],
                          [[LALR]], [[]],
                          [$2], m4_shiftn(2, $@))
-AT_TEST_TABLES_AND_PARSE([[%define lr.type "LALR": ]$1],
+AT_TEST_TABLES_AND_PARSE([[%define lr.type "lalr": ]$1],
                          [[LALR]], [[]],
-                         [[%define lr.type "LALR"
+                         [[%define lr.type "lalr"
 ]$2],
                          m4_shiftn(2, $@))
-AT_TEST_TABLES_AND_PARSE([[%define lr.type "IELR": ]$1],
+AT_TEST_TABLES_AND_PARSE([[%define lr.type "ielr": ]$1],
                          [[IELR]], [[]],
-                         [[%define lr.type "IELR"
+                         [[%define lr.type "ielr"
 ]$2],
                          m4_shiftn(2, $@))
-AT_TEST_TABLES_AND_PARSE([[%define lr.type "canonical LR": ]$1],
+AT_TEST_TABLES_AND_PARSE([[%define lr.type "canonical-lr": ]$1],
                          [[canonical LR]], [[]],
-                         [[%define lr.type "canonical LR"
+                         [[%define lr.type "canonical-lr"
 ]$2],
                          m4_shiftn(2, $@))
 ])