1 *** y.tab.c.ORIG Thu Dec 5 13:55:38 1996
2 --- y.tab.c Thu Dec 5 13:56:27 1996
17 ! #define FUNCMETH 259
20 ! #define PRIVATEREF 262
21 ! #define FUNC0SUB 263
22 ! #define UNIOPSUB 264
23 ! #define LSTOPSUB 265
36 ! #define CONTINUE 278
49 ! #define DOLSHARP 291
51 ! #define HASHBRACK 293
58 ! #define ASSIGNOP 300
62 ! #define BITANDOP 304
89 - short yyss[YYSTACKSIZE];
90 - YYSTYPE yyvs[YYSTACKSIZE];
91 - #define yystacksize YYSTACKSIZE
98 #define YYACCEPT goto yyaccept
99 #define YYERROR goto yyerrlab
116 + struct ysv* ysave = (struct ysv*)ptr;
117 + if (ysave->yyss) Safefree(ysave->yyss);
118 + if (ysave->yyvs) Safefree(ysave->yyvs);
119 + yydebug = ysave->oldyydebug;
120 + yynerrs = ysave->oldyynerrs;
121 + yyerrflag = ysave->oldyyerrflag;
122 + yychar = ysave->oldyychar;
123 + yyval = ysave->oldyyval;
124 + yylval = ysave->oldyylval;
131 register int yym, yyn, yystate;
132 + register short *yyssp;
133 + register YYSTYPE *yyvsp;
136 + unsigned yystacksize = YYSTACKSIZE;
140 extern char *getenv();
143 + struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
144 + SAVEDESTRUCTOR(yydestruct, ysave);
145 + ysave->oldyydebug = yydebug;
146 + ysave->oldyynerrs = yynerrs;
147 + ysave->oldyyerrflag = yyerrflag;
148 + ysave->oldyychar = yychar;
149 + ysave->oldyyval = yyval;
150 + ysave->oldyylval = yylval;
153 if (yys = getenv("YYDEBUG"))
161 + ** Initialize private stacks (yyparse may be called from an action)
163 + ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
164 + ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
165 + if (!yyvs || !yyss)
172 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
173 if (!yys) yys = "illegal-symbol";
174 ! printf("yydebug: state %d, reading %d (%s)\n", yystate,
178 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
179 if (!yys) yys = "illegal-symbol";
180 ! fprintf(stderr, "yydebug: state %d, reading %d (%s)\n", yystate,
187 ! printf("yydebug: state %d, shifting to state %d\n",
188 yystate, yytable[yyn]);
190 if (yyssp >= yyss + yystacksize - 1)
194 *++yyssp = yystate = yytable[yyn];
198 ! fprintf(stderr, "yydebug: state %d, shifting to state %d\n",
199 yystate, yytable[yyn]);
201 if (yyssp >= yyss + yystacksize - 1)
204 ! ** reallocate and recover. Note that pointers
205 ! ** have to be reset, or bad things will happen
207 ! int yyps_index = (yyssp - yyss);
208 ! int yypv_index = (yyvsp - yyvs);
209 ! yystacksize += YYSTACKSIZE;
210 ! ysave->yyvs = yyvs =
211 ! (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
212 ! ysave->yyss = yyss =
213 ! (short*)realloc((char*)yyss,yystacksize * sizeof(short));
214 ! if (!yyvs || !yyss)
216 ! yyssp = yyss + yyps_index;
217 ! yyvsp = yyvs + yypv_index;
219 *++yyssp = yystate = yytable[yyn];
224 ! printf("yydebug: state %d, error recovery shifting\
225 ! to state %d\n", *yyssp, yytable[yyn]);
227 if (yyssp >= yyss + yystacksize - 1)
231 *++yyssp = yystate = yytable[yyn];
236 ! "yydebug: state %d, error recovery shifting to state %d\n",
237 ! *yyssp, yytable[yyn]);
239 if (yyssp >= yyss + yystacksize - 1)
242 ! ** reallocate and recover. Note that pointers
243 ! ** have to be reset, or bad things will happen
245 ! int yyps_index = (yyssp - yyss);
246 ! int yypv_index = (yyvsp - yyvs);
247 ! yystacksize += YYSTACKSIZE;
248 ! ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
249 ! yystacksize * sizeof(YYSTYPE));
250 ! ysave->yyss = yyss = (short*)realloc((char*)yyss,
251 ! yystacksize * sizeof(short));
252 ! if (!yyvs || !yyss)
254 ! yyssp = yyss + yyps_index;
255 ! yyvsp = yyvs + yypv_index;
257 *++yyssp = yystate = yytable[yyn];
262 ! printf("yydebug: error recovery discarding state %d\n",
265 if (yyssp <= yyss) goto yyabort;
270 ! "yydebug: error recovery discarding state %d\n",
273 if (yyssp <= yyss) goto yyabort;
276 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
277 if (!yys) yys = "illegal-symbol";
278 ! printf("yydebug: state %d, error recovery discards token %d (%s)\n",
279 ! yystate, yychar, yys);
283 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
284 if (!yys) yys = "illegal-symbol";
286 ! "yydebug: state %d, error recovery discards token %d (%s)\n",
287 ! yystate, yychar, yys);
294 ! printf("yydebug: state %d, reducing by rule %d (%s)\n",
295 yystate, yyn, yyrule[yyn]);
300 ! fprintf(stderr, "yydebug: state %d, reducing by rule %d (%s)\n",
301 yystate, yyn, yyrule[yyn]);
307 ! printf("yydebug: after reduction, shifting from state 0 to\
308 ! state %d\n", YYFINAL);
315 ! "yydebug: after reduction, shifting from state 0 to state %d\n",
321 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
322 if (!yys) yys = "illegal-symbol";
323 ! printf("yydebug: state %d, reading %d (%s)\n",
324 YYFINAL, yychar, yys);
327 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
328 if (!yys) yys = "illegal-symbol";
329 ! fprintf(stderr, "yydebug: state %d, reading %d (%s)\n",
330 YYFINAL, yychar, yys);
336 ! printf("yydebug: after reduction, shifting from state %d \
337 ! to state %d\n", *yyssp, yystate);
339 if (yyssp >= yyss + yystacksize - 1)
348 ! "yydebug: after reduction, shifting from state %d to state %d\n",
351 if (yyssp >= yyss + yystacksize - 1)
354 ! ** reallocate and recover. Note that pointers
355 ! ** have to be reset, or bad things will happen
357 ! int yyps_index = (yyssp - yyss);
358 ! int yypv_index = (yyvsp - yyvs);
359 ! yystacksize += YYSTACKSIZE;
360 ! ysave->yyvs = yyvs =
361 ! (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
362 ! ysave->yyss = yyss =
363 ! (short*)realloc((char*)yyss,yystacksize * sizeof(short));
364 ! if (!yyvs || !yyss)
366 ! yyssp = yyss + yyps_index;
367 ! yyvsp = yyvs + yypv_index;
374 ! yyerror("yacc stack overflow");
383 ! yyerror("Out of memory for yacc stack");