-Index: perly.c
-*** perly.c.old Wed Jun 10 03:48:43 1998
---- perly.c Wed Jun 10 03:55:10 1998
+*** perly.c.orig Sun Feb 7 04:48:56 1999
+--- perly.c Sun Feb 7 05:30:49 1999
***************
*** 7,10 ****
---- 7,18 ----
+--- 7,25 ----
#include "perl.h"
++ #define yydebug PL_yydebug
++ #define yynerrs PL_yynerrs
++ #define yyerrflag PL_yyerrflag
++ #define yychar PL_yychar
++ #define yyval PL_yyval
++ #define yylval PL_yylval
++
+ #ifdef PERL_OBJECT
+ static void
+ Dep(CPerlObj *pPerl)
static void
dep(void)
***************
-*** 12,82 ****
+*** 12,93 ****
deprecate("\"do\" to call subroutines");
}
-! #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
+ #line 30 "perly.y"
+- /* I sense a Big Blue pattern here... */
+- #if !defined(OEMVS) && !defined(__OPEN_VM) && !defined(POSIX_BC)
+- #line 34 "perly.y"
+- typedef union {
+- I32 ival;
+- char *pval;
+- OP *opval;
+- GV *gvval;
+- } YYSTYPE;
+- #line 42 "perly.y"
+- #endif /* !OEMVS && !__OPEN_VM && !POSIX_BC */
+-
+- #ifdef USE_PURE_BISON
+- #define YYLEX_PARAM (&yychar)
+- #endif
+- #line 32 "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,
---- 20,26 ----
+! short yylhs[] = { -1,
+ 45, 0, 9, 7, 10, 8, 11, 11, 11, 12,
+ 12, 12, 12, 24, 24, 24, 24, 24, 24, 24,
+--- 27,35 ----
deprecate("\"do\" to call subroutines");
}
+ #endif
-! #line 16 "perly.c"
+ #line 30 "perly.y"
#define YYERRCODE 256
- short yylhs[] = { -1,
+! static short yylhs[] = { -1,
+ 45, 0, 9, 7, 10, 8, 11, 11, 11, 12,
+ 12, 12, 12, 24, 24, 24, 24, 24, 24, 24,
+***************
+*** 109,113 ****
+ 20, 21, 22, 35, 35, 35, 35,
+ };
+! short yylen[] = { 2,
+ 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
+ 1, 2, 3, 1, 1, 3, 3, 3, 3, 3,
+--- 51,55 ----
+ 20, 21, 22, 35, 35, 35, 35,
+ };
+! static short yylen[] = { 2,
+ 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
+ 1, 2, 3, 1, 1, 3, 3, 3, 3, 3,
+***************
+*** 129,133 ****
+ 2, 2, 2, 1, 1, 1, 1,
+ };
+! short yydefred[] = { 1,
+ 0, 7, 0, 45, 56, 54, 0, 54, 8, 46,
+ 9, 11, 0, 47, 48, 49, 0, 0, 0, 63,
+--- 71,75 ----
+ 2, 2, 2, 1, 1, 1, 1,
+ };
+! static short yydefred[] = { 1,
+ 0, 7, 0, 45, 56, 54, 0, 54, 8, 46,
+ 9, 11, 0, 47, 48, 49, 0, 0, 0, 63,
+***************
+*** 168,172 ****
+ 33, 0, 23,
+ };
+! short yydgoto[] = { 1,
+ 9, 66, 10, 18, 95, 17, 86, 339, 89, 328,
+ 3, 11, 12, 68, 344, 263, 70, 71, 72, 73,
+--- 110,114 ----
+ 33, 0, 23,
+ };
+! static short yydgoto[] = { 1,
+ 9, 66, 10, 18, 95, 17, 86, 339, 89, 328,
+ 3, 11, 12, 68, 344, 263, 70, 71, 72, 73,
+***************
+*** 175,179 ****
+ 250, 142, 267, 13, 2, 14, 15, 16, 85, 256,
+ };
+! short yysindex[] = { 0,
+ 0, 0, -66, 0, 0, 0, -48, 0, 0, 0,
+ 0, 0, 645, 0, 0, 0, -232, -227, -27, 0,
+--- 117,121 ----
+ 250, 142, 267, 13, 2, 14, 15, 16, 85, 256,
+ };
+! static short yysindex[] = { 0,
+ 0, 0, -66, 0, 0, 0, -48, 0, 0, 0,
+ 0, 0, 645, 0, 0, 0, -232, -227, -27, 0,
+***************
+*** 214,218 ****
+ 0, -238, 0,
+ };
+! short yyrindex[] = { 0,
+ 0, 0, 249, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+--- 156,160 ----
+ 0, -238, 0,
+ };
+! static short yyrindex[] = { 0,
+ 0, 0, 249, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+***************
+*** 253,257 ****
+ 0, 154, 0,
+ };
+! short yygindex[] = { 0,
+ 0, 0, 0, 374, 351, 0, -12, 0, 946, 413,
+ -83, 0, 0, 0, -311, -13, 4139, 4198, 0, 0,
+--- 195,199 ----
+ 0, 154, 0,
+ };
+! static short yygindex[] = { 0,
+ 0, 0, 0, 374, 351, 0, -12, 0, 946, 413,
+ -83, 0, 0, 0, -311, -13, 4139, 4198, 0, 0,
+***************
+*** 261,265 ****
+ };
+ #define YYTABLESIZE 4425
+! short yytable[] = { 69,
+ 207, 62, 181, 105, 168, 102, 105, 204, 168, 248,
+ 20, 208, 62, 253, 58, 285, 274, 170, 298, 345,
+--- 203,207 ----
+ };
+ #define YYTABLESIZE 4425
+! static short yytable[] = { 69,
+ 207, 62, 181, 105, 168, 102, 105, 204, 168, 248,
+ 20, 208, 62, 253, 58, 285, 274, 170, 298, 345,
+***************
+*** 706,710 ****
+ 0, 0, 0, 0, 317,
+ };
+! short yycheck[] = { 13,
+ 41, 36, 86, 41, 91, 40, 44, 59, 91, 59,
+ 59, 93, 36, 183, 59, 59, 41, 91, 41, 331,
+--- 648,652 ----
+ 0, 0, 0, 0, 317,
+ };
+! static short yycheck[] = { 13,
+ 41, 36, 86, 41, 91, 40, 44, 59, 91, 59,
+ 59, 93, 36, 183, 59, 59, 41, 91, 41, 331,
+***************
+*** 1157,1161 ****
+ #define YYMAXTOKEN 314
+ #if YYDEBUG
+! 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,
+--- 1099,1103 ----
+ #define YYMAXTOKEN 314
+ #if YYDEBUG
+! 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,
***************
-*** 1337,1361 ****
- int yyerrflag;
- int yychar;
+*** 1174,1178 ****
+ "POSTDEC","ARROW",
+ };
+! char *yyrule[] = {
+ "$accept : prog",
+ "$$1 :",
+--- 1116,1120 ----
+ "POSTDEC","ARROW",
+ };
+! static char *yyrule[] = {
+ "$accept : prog",
+ "$$1 :",
+***************
+*** 1369,1397 ****
+ #endif
+ #endif
+- int yydebug;
+- int yynerrs;
+- int yyerrflag;
+- int yychar;
- short *yyssp;
- YYSTYPE *yyvsp;
- YYSTYPE yyval;
- YYSTYPE yylval;
+- YYSTYPE yyval;
+- YYSTYPE yylval;
- short yyss[YYSTACKSIZE];
- YYSTYPE yyvs[YYSTACKSIZE];
- #define yystacksize YYSTACKSIZE
- #line 635 "perly.y"
+ #line 652 "perly.y"
/* PROGRAM */
-! #line 1349 "y.tab.c"
+! #line 1385 "y.tab.c"
#define YYABORT goto yyabort
#define YYACCEPT goto yyaccept
#define YYERROR goto yyerrlab
if (yys = getenv("YYDEBUG"))
{
---- 1281,1347 ----
- int yyerrflag;
- int yychar;
- YYSTYPE yyval;
- YYSTYPE yylval;
- #line 635 "perly.y"
+--- 1311,1375 ----
+ #endif
+ #endif
+ #line 652 "perly.y"
/* PROGRAM */
-! #line 1349 "perly.c"
+! #line 1318 "perly.c"
#define YYABORT goto yyabort
#define YYACCEPT goto yyaccept
#define YYERROR goto yyerrlab
if (yys = getenv("YYDEBUG"))
{
***************
-*** 1370,1373 ****
---- 1356,1369 ----
+*** 1406,1409 ****
+--- 1384,1397 ----
yychar = (-1);
+ /*
yyssp = yyss;
yyvsp = yyvs;
***************
-*** 1385,1389 ****
- if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
- if (!yys) yys = "illegal-symbol";
-! printf("yydebug: state %d, reading %d (%s)\n", yystate,
- yychar, yys);
- }
---- 1381,1385 ----
- if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
- if (!yys) yys = "illegal-symbol";
-! PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
- yychar, yys);
- }
-***************
-*** 1395,1404 ****
+*** 1431,1440 ****
#if YYDEBUG
if (yydebug)
! printf("yydebug: state %d, shifting to state %d\n",
! goto yyoverflow;
}
*++yyssp = yystate = yytable[yyn];
---- 1391,1414 ----
+--- 1419,1442 ----
#if YYDEBUG
if (yydebug)
! PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
! int yypv_index = (yyvsp - yyvs);
! yystacksize += YYSTACKSIZE;
! ysave->yyvs = yyvs =
-! (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
+! (YYSTYPE*)PerlMem_realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
! ysave->yyss = yyss =
-! (short*)realloc((char*)yyss,yystacksize * sizeof(short));
+! (short*)PerlMem_realloc((char*)yyss,yystacksize * sizeof(short));
! if (!yyvs || !yyss)
! goto yyoverflow;
! yyssp = yyss + yyps_index;
}
*++yyssp = yystate = yytable[yyn];
***************
-*** 1436,1445 ****
+*** 1472,1481 ****
#if YYDEBUG
if (yydebug)
! printf("yydebug: state %d, error recovery shifting\
! goto yyoverflow;
}
*++yyssp = yystate = yytable[yyn];
---- 1446,1470 ----
+--- 1474,1498 ----
#if YYDEBUG
if (yydebug)
! PerlIO_printf(Perl_debug_log,
! int yyps_index = (yyssp - yyss);
! int yypv_index = (yyvsp - yyvs);
! yystacksize += YYSTACKSIZE;
-! ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
+! ysave->yyvs = yyvs = (YYSTYPE*)PerlMem_realloc((char*)yyvs,
! yystacksize * sizeof(YYSTYPE));
-! ysave->yyss = yyss = (short*)realloc((char*)yyss,
+! ysave->yyss = yyss = (short*)PerlMem_realloc((char*)yyss,
! yystacksize * sizeof(short));
! if (!yyvs || !yyss)
! goto yyoverflow;
}
*++yyssp = yystate = yytable[yyn];
***************
-*** 1451,1456 ****
+*** 1487,1492 ****
#if YYDEBUG
if (yydebug)
! printf("yydebug: error recovery discarding state %d\n",
! *yyssp);
#endif
if (yyssp <= yyss) goto yyabort;
---- 1476,1482 ----
+--- 1504,1510 ----
#if YYDEBUG
if (yydebug)
! PerlIO_printf(Perl_debug_log,
#endif
if (yyssp <= yyss) goto yyabort;
***************
-*** 1469,1474 ****
+*** 1505,1510 ****
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
---- 1495,1501 ----
+--- 1523,1529 ----
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
if (!yys) yys = "illegal-symbol";
! PerlIO_printf(Perl_debug_log,
}
#endif
***************
-*** 1479,1483 ****
+*** 1515,1519 ****
#if YYDEBUG
if (yydebug)
! printf("yydebug: state %d, reducing by rule %d (%s)\n",
yystate, yyn, yyrule[yyn]);
#endif
---- 1506,1510 ----
+--- 1534,1538 ----
#if YYDEBUG
if (yydebug)
! PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
yystate, yyn, yyrule[yyn]);
#endif
***************
-*** 2263,2267 ****
+*** 2305,2309 ****
{ yyval.opval = yyvsp[0].opval; }
break;
-! #line 2266 "y.tab.c"
+! #line 2308 "y.tab.c"
}
yyssp -= yym;
---- 2290,2294 ----
+--- 2324,2328 ----
{ yyval.opval = yyvsp[0].opval; }
break;
-! #line 2266 "perly.c"
+! #line 2329 "perly.c"
}
yyssp -= yym;
***************
-*** 2273,2278 ****
+*** 2315,2320 ****
#if YYDEBUG
if (yydebug)
! printf("yydebug: after reduction, shifting from state 0 to\
! state %d\n", YYFINAL);
#endif
yystate = YYFINAL;
---- 2300,2306 ----
+--- 2334,2340 ----
#if YYDEBUG
if (yydebug)
! PerlIO_printf(Perl_debug_log,
#endif
yystate = YYFINAL;
***************
-*** 2288,2292 ****
+*** 2330,2334 ****
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
if (!yys) yys = "illegal-symbol";
! printf("yydebug: state %d, reading %d (%s)\n",
YYFINAL, yychar, yys);
}
---- 2316,2320 ----
+--- 2350,2354 ----
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
if (!yys) yys = "illegal-symbol";
! PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
YYFINAL, yychar, yys);
}
***************
-*** 2303,2312 ****
+*** 2345,2354 ****
#if YYDEBUG
if (yydebug)
! printf("yydebug: after reduction, shifting from state %d \
! goto yyoverflow;
}
*++yyssp = yystate;
---- 2331,2355 ----
+--- 2365,2389 ----
#if YYDEBUG
if (yydebug)
! PerlIO_printf(Perl_debug_log,
! int yypv_index = (yyvsp - yyvs);
! yystacksize += YYSTACKSIZE;
! ysave->yyvs = yyvs =
-! (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
+! (YYSTYPE*)PerlMem_realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
! ysave->yyss = yyss =
-! (short*)realloc((char*)yyss,yystacksize * sizeof(short));
+! (short*)PerlMem_realloc((char*)yyss,yystacksize * sizeof(short));
! if (!yyvs || !yyss)
! goto yyoverflow;
! yyssp = yyss + yyps_index;
}
*++yyssp = yystate;
***************
-*** 2314,2321 ****
+*** 2356,2363 ****
goto yyloop;
yyoverflow:
! yyerror("yacc stack overflow");
yyaccept:
! return (0);
}
---- 2357,2364 ----
+--- 2391,2398 ----
goto yyloop;
yyoverflow:
! yyerror("Out of memory for yacc stack");