I installed this:

2006-07-09  Paul Eggert  <[EMAIL PROTECTED]>

        * 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.

--- data/yacc.c 8 Jul 2006 20:38:14 -0000       1.148
+++ data/yacc.c 9 Jul 2006 07:32:13 -0000
@@ -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");
 }
 


Reply via email to