X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=perly_c.diff;h=84c24f548877313ded5747b85816d64a1585905f;hb=0d55c8f7c05ceae7db13bb3863932232a57c2a7b;hp=c15e95be27faa5976f355e4a7413c391f3681c89;hpb=7b57b0ead8ab6b3f08be8b4ded2364d260db25a1;p=p5sagit%2Fp5-mst-13.2.git diff --git a/perly_c.diff b/perly_c.diff index c15e95b..84c24f5 100644 --- a/perly_c.diff +++ b/perly_c.diff @@ -1,6 +1,22 @@ ---- perly.c.orig Sun Jun 10 21:13:50 2001 -+++ perly.c Sun Jun 10 21:13:51 2001 -@@ -50,70 +50,9 @@ +--- y.tab.c Mon Sep 30 04:20:57 2002 ++++ perly.c Mon Sep 30 04:18:04 2002 +@@ -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" +@@ -9,7 +9,7 @@ + #ifdef EBCDIC + #undef YYDEBUG + #endif +-#define dep() deprecate("\"do\" to call subroutines") ++#define dep() deprecate_old("\"do\" to call subroutines") + + /* stuff included here to make perly_c.diff apply better */ + +@@ -50,72 +50,9 @@ #define yylex yylex_r #endif @@ -49,121 +65,123 @@ -#define COLONATTR 298 -#define PREC_LOW 299 -#define OROP 300 --#define ANDOP 301 --#define NOTOP 302 --#define ASSIGNOP 303 --#define OROR 304 --#define ANDAND 305 --#define BITOROP 306 --#define BITANDOP 307 --#define SHIFTOP 308 --#define MATCHOP 309 --#define UMINUS 310 --#define REFGEN 311 --#define POWOP 312 --#define PREINC 313 --#define PREDEC 314 --#define POSTINC 315 --#define POSTDEC 316 --#define ARROW 317 +-#define DOROP 301 +-#define ANDOP 302 +-#define NOTOP 303 +-#define ASSIGNOP 304 +-#define OROR 305 +-#define DORDOR 306 +-#define ANDAND 307 +-#define BITOROP 308 +-#define BITANDOP 309 +-#define SHIFTOP 310 +-#define MATCHOP 311 +-#define UMINUS 312 +-#define REFGEN 313 +-#define POWOP 314 +-#define PREINC 315 +-#define PREDEC 316 +-#define POSTINC 317 +-#define POSTDEC 318 +-#define ARROW 319 +#line 54 "perly.c" #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, -@@ -135,7 +74,7 @@ - 48, 33, 33, 34, 34, 34, 43, 23, 18, 19, - 20, 21, 22, 35, 35, 35, 35, + 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, +@@ -137,7 +74,7 @@ + 49, 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, +@@ -159,7 +96,7 @@ + 1, 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, -@@ -199,7 +138,7 @@ - 0, 22, 0, 0, 0, 31, 5, 0, 30, 0, - 0, 33, 0, 23, + 0, 70, 0, 14, 3, 174, 0, 0, 155, 0, +@@ -201,7 +138,7 @@ + 32, 0, 0, 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, -@@ -207,7 +146,7 @@ - 327, 156, 289, 271, 225, 14, 83, 137, 84, 85, - 86, 87, 15, 2, 16, 17, 18, 93, 278, + 10, 11, 20, 103, 19, 2, 94, 373, 97, 362, + 3, 12, 13, 69, 378, 288, 71, 72, 73, 74, + 75, 76, 77, 78, 294, 80, 295, 284, 286, 289, +@@ -209,7 +146,7 @@ + 195, 330, 155, 292, 274, 226, 14, 82, 136, 83, + 84, 85, 86, 15, 16, 17, 18, 92, 281, }; -short yysindex[] = { 0, +static short yysindex[] = { 0, - 0, 0, -132, 0, 0, 0, -51, 0, 0, 0, - 0, 0, 0, 0, 650, 0, 0, 0, -239, -215, - 5, 0, 0, -215, 0, 0, 0, -31, -31, 0, -@@ -249,7 +188,7 @@ - 449, 0, 2181, -150, 340, 0, 0, 355, 0, 216, - 216, 0, -123, 0, + 0, 0, -236, 0, 0, 0, -231, 0, 0, 0, + 0, 0, 0, 0, 819, 0, 0, 0, -211, -209, + 3, 0, -209, 0, 0, 0, -32, -32, 0, 23, +@@ -251,7 +188,7 @@ + 0, 1859, -173, 350, 0, 2213, -173, 360, 0, 0, + 361, 0, 221, 221, 0, -240, 0, }; -short yyrindex[] = { 0, +static short yyrindex[] = { 0, - 0, 0, 247, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 274, 0, + 0, 0, 371, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -@@ -291,7 +230,7 @@ - 917, 0, 0, 119, 0, 0, 0, 0, 0, 0, - 0, 0, 179, 0, +@@ -293,7 +230,7 @@ + 0, 435, 90, 880, 0, 0, 90, 0, 0, 0, + 0, 0, 0, 0, 0, 186, 0, }; -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, -@@ -300,7 +239,7 @@ + 0, 0, 50, 453, 0, 0, -22, 0, 63, 153, + -93, 0, 0, 0, -346, -15, 2480, 0, 1744, 437, + 439, 0, 0, 0, 481, 755, 0, 0, 341, -186, +@@ -302,7 +239,7 @@ 0, 0, 0, 0, 0, 0, 0, 0, 0, }; - #define YYTABLESIZE 4568 --short yytable[] = { 71, -+static short yytable[] = { 71, - 197, 65, 121, 227, 65, 111, 220, 22, 198, 293, - 139, 296, 315, 275, 305, 102, 273, 88, 113, 228, - 60, 113, 279, 65, 317, 60, 182, 254, 325, 101, -@@ -759,7 +698,7 @@ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 77, 77, + #define YYTABLESIZE 5051 +-short yytable[] = { 70, ++static short yytable[] = { 70, + 198, 300, 75, 64, 60, 280, 228, 60, 279, 64, + 199, 328, 183, 257, 219, 62, 278, 64, 379, 186, + 75, 110, 296, 188, 15, 21, 197, 170, 64, 4, +@@ -810,7 +747,7 @@ + 0, 0, 0, 0, 114, 114, 114, 0, 114, 114, + 114, }; -short yycheck[] = { 15, +static short yycheck[] = { 15, - 95, 36, 46, 41, 36, 40, 59, 59, 100, 208, - 54, 41, 59, 199, 41, 40, 196, 257, 41, 93, - 123, 44, 202, 36, 93, 59, 40, 40, 59, 29, -@@ -1224,7 +1163,7 @@ + 94, 44, 41, 36, 59, 41, 41, 123, 44, 36, + 99, 59, 40, 40, 40, 59, 200, 36, 365, 91, + 59, 40, 209, 91, 41, 257, 93, 63, 59, 266, +@@ -1324,7 +1261,7 @@ #endif - #define YYMAXTOKEN 317 + #define YYMAXTOKEN 319 #if YYDEBUG -char *yyname[] = { +static char *yyname[] = { "end-of-file",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0, 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -@@ -1241,7 +1180,7 @@ - "ANDAND","BITOROP","BITANDOP","SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP", - "PREINC","PREDEC","POSTINC","POSTDEC","ARROW", +@@ -1341,7 +1278,7 @@ + "DORDOR","ANDAND","BITOROP","BITANDOP","SHIFTOP","MATCHOP","UMINUS","REFGEN", + "POWOP","PREINC","PREDEC","POSTINC","POSTDEC","ARROW", }; -char *yyrule[] = { +static char *yyrule[] = { "$accept : prog", - "$$1 :", - "prog : $$1 lineseq", -@@ -1456,17 +1395,6 @@ + "prog : progstart lineseq", + "block : '{' remember lineseq '}'", +@@ -1557,17 +1494,6 @@ #define YYMAXDEPTH 500 #endif #endif @@ -178,19 +196,19 @@ -short yyss[YYSTACKSIZE]; -YYSTYPE yyvs[YYSTACKSIZE]; -#define yystacksize YYSTACKSIZE - #line 789 "perly.y" + #line 795 "perly.y" /* PROGRAM */ -@@ -1477,7 +1405,7 @@ +@@ -1578,7 +1504,7 @@ #endif #define yyparse() Perl_yyparse(pTHX) --#line 1481 "y.tab.c" -+#line 1481 "perly.c" +-#line 1582 "y.tab.c" ++#line 1582 "perly.c" #define YYABORT goto yyabort #define YYACCEPT goto yyaccept #define YYERROR goto yyerrlab -@@ -1485,10 +1413,30 @@ +@@ -1586,11 +1512,31 @@ yyparse() { register int yym, yyn, yystate; @@ -204,7 +222,7 @@ register char *yys; - extern char *getenv(); +#endif - ++ + struct ysv *ysave; +#ifdef USE_ITHREADS + ENTER; /* force yydestruct() before we return */ @@ -217,12 +235,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') +@@ -1602,12 +1548,22 @@ yyerrflag = 0; yychar = (-1); @@ -239,7 +259,14 @@ yyssp = yyss; yyvsp = yyvs; *yyssp = yystate = 0; -@@ -1516,7 +1474,7 @@ + + yyloop: +- if (yyn = yydefred[yystate]) goto yyreduce; ++ if ((yyn = yydefred[yystate])) goto yyreduce; + if (yychar < 0) + { + if ((yychar = yylex()) < 0) yychar = 0; +@@ -1617,7 +1573,7 @@ yys = 0; if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; @@ -248,7 +275,7 @@ yychar, yys); } #endif -@@ -1526,12 +1484,24 @@ +@@ -1627,12 +1583,24 @@ { #if YYDEBUG if (yydebug) @@ -258,7 +285,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,28 +295,32 @@ + 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 @@ +@@ -1648,14 +1616,14 @@ + } + if (yyerrflag) goto yyinrecovery; #ifdef lint - goto yynewerror; +- goto yynewerror; ++ #endif -yynewerror: + yyerror("syntax error"); #ifdef lint - goto yyerrlab; +- goto yyerrlab; ++ #endif -yyerrlab: + ++yynerrs; yyinrecovery: if (yyerrflag < 3) -@@ -1567,12 +1537,24 @@ +@@ -1668,12 +1636,24 @@ { #if YYDEBUG if (yydebug) @@ -300,7 +330,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,13 +340,13 @@ + 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; -@@ -1582,7 +1564,7 @@ +@@ -1683,7 +1663,7 @@ { #if YYDEBUG if (yydebug) @@ -326,7 +355,7 @@ *yyssp); #endif if (yyssp <= yyss) goto yyabort; -@@ -1600,7 +1582,7 @@ +@@ -1701,7 +1681,7 @@ yys = 0; if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; @@ -335,7 +364,7 @@ yystate, yychar, yys); } #endif -@@ -1610,7 +1592,7 @@ +@@ -1711,7 +1691,7 @@ yyreduce: #if YYDEBUG if (yydebug) @@ -344,16 +373,16 @@ yystate, yyn, yyrule[yyn]); #endif yym = yylen[yyn]; -@@ -2473,7 +2455,7 @@ - #line 786 "perly.y" +@@ -2578,7 +2558,7 @@ + #line 792 "perly.y" { yyval.opval = yyvsp[0].opval; } break; --#line 2477 "y.tab.c" -+#line 2477 "perly.c" +-#line 2582 "y.tab.c" ++#line 2582 "perly.c" } yyssp -= yym; yystate = *yyssp; -@@ -2483,7 +2465,7 @@ +@@ -2588,7 +2568,7 @@ { #if YYDEBUG if (yydebug) @@ -362,7 +391,7 @@ state %d\n", YYFINAL); #endif yystate = YYFINAL; -@@ -2498,7 +2480,7 @@ +@@ -2603,7 +2583,7 @@ yys = 0; if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; @@ -371,7 +400,7 @@ YYFINAL, yychar, yys); } #endif -@@ -2513,20 +2495,54 @@ +@@ -2618,20 +2598,50 @@ yystate = yydgoto[yym]; #if YYDEBUG if (yydebug) @@ -381,7 +410,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 +420,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; } @@ -413,12 +441,8 @@ + return retval; +} + -+#ifdef PERL_OBJECT -+#include "XSUB.h" -+#endif -+ +static void -+yydestruct(pTHXo_ void *ptr) ++yydestruct(pTHX_ void *ptr) +{ + struct ysv* ysave = (struct ysv*)ptr; + if (ysave->yyss) Safefree(ysave->yyss);