]> git.saurik.com Git - bison.git/commitdiff
* data/yacc.c (YYID, yy_stack_print): Prefix local vars with "yy"
authorPaul Eggert <eggert@cs.ucla.edu>
Sun, 9 Jul 2006 07:38:12 +0000 (07:38 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Sun, 9 Jul 2006 07:38:12 +0000 (07:38 +0000)
so they don't collide with user-defined macros.
(yy_stack_print): Don't assume that yytype_int16 promotes to int;
this was never guaranteed, and now that we're using gnulib stdint,
which defines int_fast16_t to long int, the problem is exposed.

ChangeLog
data/yacc.c

index 51e3a41e1ce323523d2b5322c9dc2ad59a530cd5..a1823b9dccbd7a4cf888f937588447a15503699c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * data/yacc.c (YYID, yy_stack_print): Prefix local vars with "yy"
+       so they don't collide with user-defined macros.
+       (yy_stack_print): Don't assume that yytype_int16 promotes to int;
+       this was never guaranteed, and now that we're using gnulib stdint,
+       which defines int_fast16_t to long int, the problem is exposed.
+
 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
 
        * data/c.m4 (b4_basename): Simplify a bit, since we don't
index 2b1cadbaec710e05b45f93ba1dc23dbb38d82906..e297c643efe1990d2fe9248f5233c3a03e013a69 100644 (file)
@@ -286,9 +286,9 @@ typedef short int yytype_int16;
 #ifndef lint
 # define YYID(n) (n)
 #else
-]b4_c_function_def([YYID], [static int], [[int i], [i]])[
+]b4_c_function_def([YYID], [static int], [[int yyi], [yyi]])[
 {
-  return i;
+  return yyi;
 }
 #endif
 
@@ -673,12 +673,15 @@ do {                                                                        \
 `------------------------------------------------------------------*/
 
 ]b4_c_function_def([yy_stack_print], [static void],
-                  [[yytype_int16 *bottom], [bottom]],
-                  [[yytype_int16 *top],    [top]])[
+                  [[yytype_int16 *yybottom], [yybottom]],
+                  [[yytype_int16 *yytop],    [yytop]])[
 {
   YYFPRINTF (stderr, "Stack now");
-  for (; bottom <= top; ++bottom)
-    YYFPRINTF (stderr, " %d", *bottom);
+  for (; yybottom <= yytop; yybottom++)
+    {
+      int yybot = *yybottom;
+      YYFPRINTF (stderr, " %d", yybot);
+    }
   YYFPRINTF (stderr, "\n");
 }