]> git.saurik.com Git - bison.git/commitdiff
Regen.
authorAkim Demaille <akim@epita.fr>
Mon, 3 Mar 2003 09:00:12 +0000 (09:00 +0000)
committerAkim Demaille <akim@epita.fr>
Mon, 3 Mar 2003 09:00:12 +0000 (09:00 +0000)
src/parse-gram.c
src/parse-gram.h

index 9273f9f2c9eb399267abfc38088e1fa093ca3e2b..c69b294c61118f0be6e08c57507c73f4caebe544 100644 (file)
@@ -1659,32 +1659,30 @@ yyerrlab:
        {
          YYSIZE_T yysize = 0;
          int yytype = YYTRANSLATE (yychar);
        {
          YYSIZE_T yysize = 0;
          int yytype = YYTRANSLATE (yychar);
+         const char* yyprefix;
          char *yymsg;
          int yyx;
 
          /* Start YYX at -YYN if negative to avoid negative indexes in
             YYCHECK.  */
          char *yymsg;
          int yyx;
 
          /* Start YYX at -YYN if negative to avoid negative indexes in
             YYCHECK.  */
-         int yyxbase = yyn < 0 ? -yyn : 0;
+         int yyxbegin = yyn < 0 ? -yyn : 0;
 
          /* Stay within bounds of both yycheck and yytname.  */
          int yychecklim = YYLAST - yyn;
 
          /* Stay within bounds of both yycheck and yytname.  */
          int yychecklim = YYLAST - yyn;
-         int yynsyms = sizeof (yytname) / sizeof (yytname[0]);
-         int yyxlim = yychecklim < yynsyms ? yychecklim : yynsyms;
+         int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
          int yycount = 0;
 
          int yycount = 0;
 
-         for (yyx = yyxbase; yyx < yyxlim; yyx++)
+         yyprefix = ", expecting ";
+         for (yyx = yyxbegin; yyx < yyxend; ++yyx)
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
              {
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
              {
-               yysize += (! yycount
-                          ? sizeof (", expecting ") - 1
-                          : sizeof (" or ") - 1);
-               yysize += yystrlen (yytname[yyx]);
-               yycount++;
+               yysize += yystrlen (yyprefix) + yystrlen (yytname [yyx]);
+               yycount += 1;
                if (yycount == 5)
                  {
                    yysize = 0;
                    break;
                if (yycount == 5)
                  {
                    yysize = 0;
                    break;
-                 }             
+                 }
              }
          yysize += (sizeof ("syntax error, unexpected ")
                     + yystrlen (yytname[yytype]));
              }
          yysize += (sizeof ("syntax error, unexpected ")
                     + yystrlen (yytname[yytype]));
@@ -1696,14 +1694,13 @@ yyerrlab:
 
              if (yycount < 5)
                {
 
              if (yycount < 5)
                {
-                 yycount = 0;
-                 for (yyx = yyxbase; yyx < yyxlim; yyx++)
+                 yyprefix = ", expecting ";
+                 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
                    if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
                      {
                    if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
                      {
-                       const char *yyq = ! yycount ? ", expecting " : " or ";
-                       yyp = yystpcpy (yyp, yyq);
+                       yyp = yystpcpy (yyp, yyprefix);
                        yyp = yystpcpy (yyp, yytname[yyx]);
                        yyp = yystpcpy (yyp, yytname[yyx]);
-                       yycount++;
+                       yyprefix = " or ";
                      }
                }
              yyerror (yymsg);
                      }
                }
              yyerror (yymsg);
index 69dc51bc4e83f6f12b66a15d26abeb0c01279fdc..3194692847b698e178c6247932e53522fa8fcee4 100644 (file)
@@ -133,7 +133,7 @@ typedef union YYSTYPE {
   assoc assoc;
   uniqstr uniqstr;
 } YYSTYPE;
   assoc assoc;
   uniqstr uniqstr;
 } YYSTYPE;
-/* Line 1255 of yacc.c.  */
+/* Line 1252 of yacc.c.  */
 #line 138 "y.tab.h"
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
 #line 138 "y.tab.h"
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1