X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=perly.c.diff;h=b4aec9d5981eb360bc764a2784a2e5d3d95d09eb;hb=a55e790a925a115b3805170b8df932e9cf7f0fba;hp=cc55c40ba97657277399866e1045beb880cfcbde;hpb=55497cffdd24c959994f9a8ddd56db8ce85e1c5b;p=p5sagit%2Fp5-mst-13.2.git diff --git a/perly.c.diff b/perly.c.diff index cc55c40..b4aec9d 100644 --- a/perly.c.diff +++ b/perly.c.diff @@ -1,82 +1,84 @@ Index: perly.c *************** -*** 12,83 **** - deprecate("\"do\" to call subroutines"); +*** 13,82 **** } -- #line 29 "perly.y" -- typedef union { -- I32 ival; -- char *pval; -- OP *opval; -- GV *gvval; -- } YYSTYPE; -- #line 23 "y.tab.c" -- #define WORD 257 -- #define METHOD 258 -- #define FUNCMETH 259 -- #define THING 260 -- #define PMFUNC 261 -- #define PRIVATEREF 262 -- #define FUNC0SUB 263 -- #define UNIOPSUB 264 -- #define LSTOPSUB 265 -- #define LABEL 266 -- #define FORMAT 267 -- #define SUB 268 -- #define ANONSUB 269 -- #define PACKAGE 270 -- #define USE 271 -- #define WHILE 272 -- #define UNTIL 273 -- #define IF 274 -- #define UNLESS 275 -- #define ELSE 276 -- #define ELSIF 277 -- #define CONTINUE 278 -- #define FOR 279 -- #define LOOPEX 280 -- #define DOTDOT 281 -- #define FUNC0 282 -- #define FUNC1 283 -- #define FUNC 284 -- #define RELOP 285 -- #define EQOP 286 -- #define MULOP 287 -- #define ADDOP 288 -- #define DOLSHARP 289 -- #define DO 290 -- #define HASHBRACK 291 -- #define NOAMP 292 -- #define LOCAL 293 -- #define MY 294 -- #define OROP 295 -- #define ANDOP 296 -- #define NOTOP 297 -- #define LSTOP 298 -- #define ASSIGNOP 299 -- #define OROR 300 -- #define ANDAND 301 -- #define BITOROP 302 -- #define BITANDOP 303 -- #define UNIOP 304 -- #define SHIFTOP 305 -- #define MATCHOP 306 -- #define UMINUS 307 -- #define REFGEN 308 -- #define POWOP 309 -- #define PREINC 310 -- #define PREDEC 311 -- #define POSTINC 312 -- #define POSTDEC 313 -- #define ARROW 314 +! #line 29 "perly.y" +! typedef union { +! I32 ival; +! char *pval; +! OP *opval; +! GV *gvval; +! } YYSTYPE; +! #line 23 "y.tab.c" +! #define WORD 257 +! #define METHOD 258 +! #define FUNCMETH 259 +! #define THING 260 +! #define PMFUNC 261 +! #define PRIVATEREF 262 +! #define FUNC0SUB 263 +! #define UNIOPSUB 264 +! #define LSTOPSUB 265 +! #define LABEL 266 +! #define FORMAT 267 +! #define SUB 268 +! #define ANONSUB 269 +! #define PACKAGE 270 +! #define USE 271 +! #define WHILE 272 +! #define UNTIL 273 +! #define IF 274 +! #define UNLESS 275 +! #define ELSE 276 +! #define ELSIF 277 +! #define CONTINUE 278 +! #define FOR 279 +! #define LOOPEX 280 +! #define DOTDOT 281 +! #define FUNC0 282 +! #define FUNC1 283 +! #define FUNC 284 +! #define UNIOP 285 +! #define LSTOP 286 +! #define RELOP 287 +! #define EQOP 288 +! #define MULOP 289 +! #define ADDOP 290 +! #define DOLSHARP 291 +! #define DO 292 +! #define HASHBRACK 293 +! #define NOAMP 294 +! #define LOCAL 295 +! #define MY 296 +! #define OROP 297 +! #define ANDOP 298 +! #define NOTOP 299 +! #define ASSIGNOP 300 +! #define OROR 301 +! #define ANDAND 302 +! #define BITOROP 303 +! #define BITANDOP 304 +! #define SHIFTOP 305 +! #define MATCHOP 306 +! #define UMINUS 307 +! #define REFGEN 308 +! #define POWOP 309 +! #define PREINC 310 +! #define PREDEC 311 +! #define POSTINC 312 +! #define POSTDEC 313 +! #define ARROW 314 + #define YYERRCODE 256 + short yylhs[] = { -1, +--- 13,17 ---- + } + +! #line 16 "perly.c" #define YYERRCODE 256 short yylhs[] = { -1, - 40, 0, 7, 5, 8, 9, 6, 10, 10, 10, ---- 12,17 ---- *************** -*** 1316,1342 **** - int yynerrs; +*** 1348,1358 **** int yyerrflag; int yychar; - short *yyssp; @@ -88,31 +90,10 @@ Index: perly.c - #define yystacksize YYSTACKSIZE #line 631 "perly.y" /* PROGRAM */ - #line 1329 "y.tab.c" - #define YYABORT goto yyabort - #define YYACCEPT goto yyaccept - #define YYERROR goto yyerrlab - int - yyparse() - { - register int yym, yyn, yystate; - #if YYDEBUG - register char *yys; - extern char *getenv(); - - if (yys = getenv("YYDEBUG")) - { - yyn = *yys; ---- 1250,1316 ---- - int yynerrs; - int yyerrflag; - int yychar; - YYSTYPE yyval; - YYSTYPE yylval; - #line 631 "perly.y" - /* PROGRAM */ - #line 1329 "y.tab.c" - #define YYABORT goto yyabort +--- 1283,1288 ---- +*************** +*** 1361,1372 **** +--- 1291,1347 ---- #define YYACCEPT goto yyaccept #define YYERROR goto yyerrlab + @@ -170,11 +151,9 @@ Index: perly.c + #if YYDEBUG if (yys = getenv("YYDEBUG")) { - yyn = *yys; *************** -*** 1349,1354 **** ---- 1323,1336 ---- - yyerrflag = 0; +*** 1381,1384 **** +--- 1356,1367 ---- yychar = (-1); + /* @@ -187,27 +166,21 @@ Index: perly.c + yyssp = yyss; yyvsp = yyvs; - *yyssp = yystate = 0; *************** -*** 1364,1370 **** - yys = 0; +*** 1396,1400 **** if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; ! printf("yydebug: state %d, reading %d (%s)\n", yystate, yychar, yys); } - #endif ---- 1346,1352 ---- - yys = 0; +--- 1379,1383 ---- if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; ! fprintf(stderr, "yydebug: state %d, reading %d (%s)\n", yystate, yychar, yys); } - #endif *************** -*** 1374,1385 **** - { +*** 1406,1415 **** #if YYDEBUG if (yydebug) ! printf("yydebug: state %d, shifting to state %d\n", @@ -218,9 +191,7 @@ Index: perly.c ! goto yyoverflow; } *++yyssp = yystate = yytable[yyn]; - *++yyvsp = yylval; ---- 1356,1381 ---- - { +--- 1389,1412 ---- #if YYDEBUG if (yydebug) ! fprintf(stderr, "yydebug: state %d, shifting to state %d\n", @@ -245,10 +216,8 @@ Index: perly.c ! yyvsp = yyvs + yypv_index; } *++yyssp = yystate = yytable[yyn]; - *++yyvsp = yylval; *************** -*** 1415,1426 **** - { +*** 1447,1456 **** #if YYDEBUG if (yydebug) ! printf("yydebug: state %d, error recovery shifting\ @@ -259,9 +228,7 @@ Index: perly.c ! goto yyoverflow; } *++yyssp = yystate = yytable[yyn]; - *++yyvsp = yylval; ---- 1411,1437 ---- - { +--- 1444,1468 ---- #if YYDEBUG if (yydebug) ! fprintf(stderr, @@ -287,19 +254,15 @@ Index: perly.c ! yyvsp = yyvs + yypv_index; } *++yyssp = yystate = yytable[yyn]; - *++yyvsp = yylval; *************** -*** 1430,1437 **** - { +*** 1462,1467 **** #if YYDEBUG if (yydebug) ! printf("yydebug: error recovery discarding state %d\n", ! *yyssp); #endif if (yyssp <= yyss) goto yyabort; - --yyssp; ---- 1441,1449 ---- - { +--- 1474,1480 ---- #if YYDEBUG if (yydebug) ! fprintf(stderr, @@ -307,19 +270,15 @@ Index: perly.c ! *yyssp); #endif if (yyssp <= yyss) goto yyabort; - --yyssp; *************** -*** 1448,1455 **** - yys = 0; +*** 1480,1485 **** if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; ! printf("yydebug: state %d, error recovery discards token %d (%s)\n", ! yystate, yychar, yys); } #endif - yychar = (-1); ---- 1460,1468 ---- - yys = 0; +--- 1493,1499 ---- if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; ! fprintf(stderr, @@ -327,36 +286,28 @@ Index: perly.c ! yystate, yychar, yys); } #endif - yychar = (-1); *************** -*** 1458,1464 **** - yyreduce: +*** 1490,1494 **** #if YYDEBUG if (yydebug) ! printf("yydebug: state %d, reducing by rule %d (%s)\n", yystate, yyn, yyrule[yyn]); #endif - yym = yylen[yyn]; ---- 1471,1477 ---- - yyreduce: +--- 1504,1508 ---- #if YYDEBUG if (yydebug) ! fprintf(stderr, "yydebug: state %d, reducing by rule %d (%s)\n", yystate, yyn, yyrule[yyn]); #endif - yym = yylen[yyn]; *************** -*** 2246,2253 **** - { +*** 2278,2283 **** #if YYDEBUG if (yydebug) ! printf("yydebug: after reduction, shifting from state 0 to\ ! state %d\n", YYFINAL); #endif yystate = YYFINAL; - *++yyssp = YYFINAL; ---- 2259,2267 ---- - { +--- 2292,2298 ---- #if YYDEBUG if (yydebug) ! fprintf(stderr, @@ -364,27 +315,21 @@ Index: perly.c ! YYFINAL); #endif yystate = YYFINAL; - *++yyssp = YYFINAL; *************** -*** 2261,2267 **** - yys = 0; +*** 2293,2297 **** if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; ! printf("yydebug: state %d, reading %d (%s)\n", YYFINAL, yychar, yys); } - #endif ---- 2275,2281 ---- - yys = 0; +--- 2308,2312 ---- if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; ! fprintf(stderr, "yydebug: state %d, reading %d (%s)\n", YYFINAL, yychar, yys); } - #endif *************** -*** 2276,2295 **** - yystate = yydgoto[yym]; +*** 2308,2317 **** #if YYDEBUG if (yydebug) ! printf("yydebug: after reduction, shifting from state %d \ @@ -395,17 +340,7 @@ Index: perly.c ! goto yyoverflow; } *++yyssp = yystate; - *++yyvsp = yyval; - goto yyloop; - yyoverflow: -! yyerror("yacc stack overflow"); - yyabort: -! return (1); - yyaccept: -! return (0); - } ---- 2290,2324 ---- - yystate = yydgoto[yym]; +--- 2323,2347 ---- #if YYDEBUG if (yydebug) ! fprintf(stderr, @@ -431,7 +366,17 @@ Index: perly.c ! yyvsp = yyvs + yypv_index; } *++yyssp = yystate; - *++yyvsp = yyval; +*************** +*** 2319,2326 **** + goto yyloop; + yyoverflow: +! yyerror("yacc stack overflow"); + yyabort: +! return (1); + yyaccept: +! return (0); + } +--- 2349,2356 ---- goto yyloop; yyoverflow: ! yyerror("Out of memory for yacc stack");