summaryrefslogtreecommitdiff
path: root/perly_c.diff
diff options
context:
space:
mode:
Diffstat (limited to 'perly_c.diff')
-rw-r--r--perly_c.diff95
1 files changed, 56 insertions, 39 deletions
diff --git a/perly_c.diff b/perly_c.diff
index c15e95be27..8d584193de 100644
--- a/perly_c.diff
+++ b/perly_c.diff
@@ -1,5 +1,12 @@
---- perly.c.orig Sun Jun 10 21:13:50 2001
-+++ perly.c Sun Jun 10 21:13:51 2001
+--- perly.c.orig Tue Jun 19 08:39:52 2001
++++ perly.c Tue Jun 19 08:39:24 2001
+@@ -1,5 +1,5 @@
+ #ifndef lint
+-static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
++/* static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91"; */
+ #endif
+ #define YYBYACC 1
+ #line 16 "perly.y"
@@ -50,70 +50,9 @@
#define yylex yylex_r
#endif
@@ -70,39 +77,39 @@
#define YYERRCODE 256
-short yylhs[] = { -1,
+static short yylhs[] = { -1,
- 54, 0, 8, 6, 9, 7, 10, 10, 10, 11,
- 11, 11, 11, 24, 24, 24, 24, 24, 24, 24,
- 14, 14, 14, 13, 13, 42, 42, 12, 12, 12,
+ 0, 9, 7, 6, 10, 8, 11, 11, 11, 12,
+ 12, 12, 12, 25, 25, 25, 25, 25, 25, 25,
+ 15, 15, 15, 14, 14, 43, 43, 13, 13, 13,
@@ -135,7 +74,7 @@
- 48, 33, 33, 34, 34, 34, 43, 23, 18, 19,
- 20, 21, 22, 35, 35, 35, 35,
+ 49, 34, 34, 35, 35, 35, 44, 24, 19, 20,
+ 21, 22, 23, 36, 36, 36, 36,
};
-short yylen[] = { 2,
+static short yylen[] = { 2,
- 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
+ 2, 4, 0, 0, 4, 0, 0, 2, 2, 2,
1, 2, 3, 1, 1, 3, 3, 3, 3, 3,
0, 2, 6, 7, 7, 0, 2, 8, 8, 10,
@@ -157,7 +96,7 @@
1, 0, 1, 0, 1, 2, 1, 2, 2, 2,
2, 2, 2, 1, 1, 1, 1,
};
--short yydefred[] = { 1,
-+static short yydefred[] = { 1,
+-short yydefred[] = { 4,
++static short yydefred[] = { 4,
0, 7, 0, 45, 58, 56, 0, 56, 56, 8,
46, 9, 11, 48, 0, 47, 49, 50, 0, 0,
- 0, 70, 71, 0, 14, 4, 173, 0, 0, 154,
+ 0, 70, 71, 0, 14, 3, 173, 0, 0, 154,
@@ -199,7 +138,7 @@
0, 22, 0, 0, 0, 31, 5, 0, 30, 0,
0, 33, 0, 23,
};
-short yydgoto[] = { 1,
+static short yydgoto[] = { 1,
- 10, 11, 20, 104, 19, 95, 370, 98, 359, 3,
- 12, 13, 70, 375, 285, 72, 73, 74, 75, 76,
- 77, 78, 79, 291, 81, 292, 281, 283, 286, 294,
+ 10, 11, 20, 104, 19, 2, 95, 370, 98, 359,
+ 3, 12, 13, 70, 375, 285, 72, 73, 74, 75,
+ 76, 77, 78, 79, 291, 81, 292, 281, 283, 286,
@@ -207,7 +146,7 @@
- 327, 156, 289, 271, 225, 14, 83, 137, 84, 85,
- 86, 87, 15, 2, 16, 17, 18, 93, 278,
+ 194, 327, 156, 289, 271, 225, 14, 83, 137, 84,
+ 85, 86, 87, 15, 16, 17, 18, 93, 278,
};
-short yysindex[] = { 0,
+static short yysindex[] = { 0,
@@ -124,9 +131,9 @@
};
-short yygindex[] = { 0,
+static short yygindex[] = { 0,
- 0, 0, 196, 425, 0, -2, 0, 37, 634, -94,
- 0, 0, 0, -323, -15, 2445, 0, 999, 414, 417,
- 0, 0, 0, 463, -43, 0, 0, 321, -198, 103,
+ 0, 0, 196, 425, 0, 0, -2, 0, 37, 634,
+ -94, 0, 0, 0, -323, -15, 2445, 0, 999, 414,
+ 417, 0, 0, 0, 463, -43, 0, 0, 321, -198,
@@ -300,7 +239,7 @@
0, 0, 0, 0, 0, 0, 0, 0, 0,
};
@@ -161,8 +168,8 @@
-char *yyrule[] = {
+static char *yyrule[] = {
"$accept : prog",
- "$$1 :",
- "prog : $$1 lineseq",
+ "prog : progstart lineseq",
+ "block : '{' remember lineseq '}'",
@@ -1456,17 +1395,6 @@
#define YYMAXDEPTH 500
#endif
@@ -178,7 +185,7 @@
-short yyss[YYSTACKSIZE];
-YYSTYPE yyvs[YYSTACKSIZE];
-#define yystacksize YYSTACKSIZE
- #line 789 "perly.y"
+ #line 793 "perly.y"
/* PROGRAM */
@@ -1477,7 +1405,7 @@
@@ -186,11 +193,11 @@
#define yyparse() Perl_yyparse(pTHX)
-#line 1481 "y.tab.c"
-+#line 1481 "perly.c"
++#line 1409 "perly.c"
#define YYABORT goto yyabort
#define YYACCEPT goto yyaccept
#define YYERROR goto yyerrlab
-@@ -1485,10 +1413,30 @@
+@@ -1485,11 +1413,31 @@
yyparse()
{
register int yym, yyn, yystate;
@@ -204,7 +211,7 @@
register char *yys;
- extern char *getenv();
+#endif
-
++
+ struct ysv *ysave;
+#ifdef USE_ITHREADS
+ ENTER; /* force yydestruct() before we return */
@@ -217,12 +224,14 @@
+ ysave->oldyychar = yychar;
+ ysave->oldyyval = yyval;
+ ysave->oldyylval = yylval;
-+
+
+- if (yys = getenv("YYDEBUG"))
+#if YYDEBUG
- if (yys = getenv("YYDEBUG"))
++ if ((yys = getenv("YYDEBUG")))
{
yyn = *yys;
-@@ -1501,6 +1449,16 @@
+ if (yyn >= '0' && yyn <= '9')
+@@ -1501,12 +1449,22 @@
yyerrflag = 0;
yychar = (-1);
@@ -239,6 +248,13 @@
yyssp = yyss;
yyvsp = yyvs;
*yyssp = yystate = 0;
+
+ yyloop:
+- if (yyn = yydefred[yystate]) goto yyreduce;
++ if ((yyn = yydefred[yystate])) goto yyreduce;
+ if (yychar < 0)
+ {
+ if ((yychar = yylex()) < 0) yychar = 0;
@@ -1516,7 +1474,7 @@
yys = 0;
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
@@ -258,7 +274,6 @@
#endif
if (yyssp >= yyss + yystacksize - 1)
{
-- goto yyoverflow;
+ /*
+ ** reallocate and recover. Note that pointers
+ ** have to be reset, or bad things will happen
@@ -269,21 +284,25 @@
+ ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
+ ysave->yyss = Renew(yyss, yystacksize, short);
+ if (!yyvs || !yyss)
-+ goto yyoverflow;
+ goto yyoverflow;
+ yyssp = yyss + yyps_index;
+ yyvsp = yyvs + yypv_index;
}
*++yyssp = yystate = yytable[yyn];
*++yyvsp = yylval;
-@@ -1549,12 +1519,12 @@
+@@ -1547,14 +1517,14 @@
+ }
+ if (yyerrflag) goto yyinrecovery;
#ifdef lint
- goto yynewerror;
+- goto yynewerror;
++
#endif
-yynewerror:
+
yyerror("syntax error");
#ifdef lint
- goto yyerrlab;
+- goto yyerrlab;
++
#endif
-yyerrlab:
+
@@ -300,7 +319,6 @@
#endif
if (yyssp >= yyss + yystacksize - 1)
{
-- goto yyoverflow;
+ /*
+ ** reallocate and recover. Note that pointers
+ ** have to be reset, or bad things will happen
@@ -311,7 +329,7 @@
+ ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
+ ysave->yyss = Renew(yyss, yystacksize, short);
+ if (!yyvs || !yyss)
-+ goto yyoverflow;
+ goto yyoverflow;
+ yyssp = yyss + yyps_index;
+ yyvsp = yyvs + yypv_index;
}
@@ -345,11 +363,11 @@
#endif
yym = yylen[yyn];
@@ -2473,7 +2455,7 @@
- #line 786 "perly.y"
+ #line 790 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
-#line 2477 "y.tab.c"
-+#line 2477 "perly.c"
++#line 2459 "perly.c"
}
yyssp -= yym;
yystate = *yyssp;
@@ -381,7 +399,6 @@
#endif
if (yyssp >= yyss + yystacksize - 1)
{
-- goto yyoverflow;
+ /*
+ ** reallocate and recover. Note that pointers
+ ** have to be reset, or bad things will happen
@@ -392,7 +409,7 @@
+ ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
+ ysave->yyss = Renew(yyss, yystacksize, short);
+ if (!yyvs || !yyss)
-+ goto yyoverflow;
+ goto yyoverflow;
+ yyssp = yyss + yyps_index;
+ yyvsp = yyvs + yypv_index;
}