From: Akim Demaille Date: Sat, 1 Mar 2003 08:31:06 +0000 (+0000) Subject: Regen. X-Git-Tag: BISON-2_0~375 X-Git-Url: https://git.saurik.com/bison.git/commitdiff_plain/6d5aa694aacbae8e330a195327cf3763b01da202?ds=sidebyside Regen. --- diff --git a/src/parse-gram.c b/src/parse-gram.c index 7f37a5e0..9273f9f2 100644 --- a/src/parse-gram.c +++ b/src/parse-gram.c @@ -1,4 +1,4 @@ -/* A Bison parser, made by GNU Bison 1.875a. */ +/* A Bison parser, made by GNU Bison 1.875b. */ /* Skeleton parser for Yacc-like parsing with Bison, Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. @@ -654,7 +654,14 @@ static const unsigned char yystos[] = #define YYACCEPT goto yyacceptlab #define YYABORT goto yyabortlab -#define YYERROR goto yyerrlab1 +#define YYERROR do \ + { \ + yylerrsp = yylsp; \ + *++yylerrsp = yyloc; \ + goto yyerrlab1; \ + } \ + while (0) + /* Like YYERROR except do call yyerror. This remains here temporarily to ease the transition to the new meaning of YYERROR, for GCC. @@ -776,9 +783,9 @@ yy_reduce_print (yyrule) #endif { int yyi; - unsigned int yylineno = yyrline[yyrule]; + unsigned int yylno = yyrline[yyrule]; YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ", - yyrule - 1, yylineno); + yyrule - 1, yylno); /* Print the symbols being reduced, and their result. */ for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++) YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]); @@ -1610,8 +1617,8 @@ yyreduce: } -/* Line 991 of yacc.c. */ -#line 1615 "parse-gram.c" +/* Line 999 of yacc.c. */ +#line 1622 "parse-gram.c" yyvsp -= yylen; yyssp -= yylen; @@ -1653,17 +1660,34 @@ yyerrlab: YYSIZE_T yysize = 0; int yytype = YYTRANSLATE (yychar); char *yymsg; - int yyx, yycount; + int yyx; - yycount = 0; /* Start YYX at -YYN if negative to avoid negative indexes in YYCHECK. */ - for (yyx = yyn < 0 ? -yyn : 0; - yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++) + int yyxbase = yyn < 0 ? -yyn : 0; + + /* 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 yycount = 0; + + for (yyx = yyxbase; yyx < yyxlim; yyx++) if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) - yysize += yystrlen (yytname[yyx]) + 15, yycount++; - yysize += yystrlen ("syntax error, unexpected ") + 1; - yysize += yystrlen (yytname[yytype]); + { + yysize += (! yycount + ? sizeof (", expecting ") - 1 + : sizeof (" or ") - 1); + yysize += yystrlen (yytname[yyx]); + yycount++; + if (yycount == 5) + { + yysize = 0; + break; + } + } + yysize += (sizeof ("syntax error, unexpected ") + + yystrlen (yytname[yytype])); yymsg = (char *) YYSTACK_ALLOC (yysize); if (yymsg != 0) { @@ -1673,9 +1697,7 @@ yyerrlab: if (yycount < 5) { yycount = 0; - for (yyx = yyn < 0 ? -yyn : 0; - yyx < (int) (sizeof (yytname) / sizeof (char *)); - yyx++) + for (yyx = yyxbase; yyx < yyxlim; yyx++) if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) { const char *yyq = ! yycount ? ", expecting " : " or "; @@ -1725,33 +1747,13 @@ yyerrlab: /* Else will try to reuse lookahead token after shifting the error token. */ - goto yyerrlab2; + goto yyerrlab1; /*----------------------------------------------------. | yyerrlab1 -- error raised explicitly by an action. | `----------------------------------------------------*/ yyerrlab1: - - /* Suppress GCC warning that yyerrlab1 is unused when no action - invokes YYERROR. MacOS 10.2.3's buggy "smart preprocessor" - insists on the trailing semicolon. */ -#if defined (__GNUC_MINOR__) && 2093 <= (__GNUC__ * 1000 + __GNUC_MINOR__) - /* GNU C++ (as of version 3.2.1) does not allow attributes on labels. */ -# ifndef __cplusplus - __attribute__ ((__unused__)); -# endif -#endif - - yylerrsp = yylsp; - *++yylerrsp = yyloc; - goto yyerrlab2; - - -/*---------------------------------------------------------------. -| yyerrlab2 -- pop states until the error token can be shifted. | -`---------------------------------------------------------------*/ -yyerrlab2: yyerrstatus = 3; /* Each real token shifted decrements this. */ for (;;) diff --git a/src/parse-gram.h b/src/parse-gram.h index 3a85a062..69dc51bc 100644 --- a/src/parse-gram.h +++ b/src/parse-gram.h @@ -1,4 +1,4 @@ -/* A Bison parser, made by GNU Bison 1.875a. */ +/* A Bison parser, made by GNU Bison 1.875b. */ /* Skeleton parser for Yacc-like parsing with Bison, Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. @@ -133,7 +133,7 @@ typedef union YYSTYPE { assoc assoc; uniqstr uniqstr; } YYSTYPE; -/* Line 1252 of yacc.c. */ +/* Line 1255 of yacc.c. */ #line 138 "y.tab.h" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1