+2005-07-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ * data/glr.c (yyparse): Don't assume that the initial calls
+ to YYMALLOC succeed; in that case, yyparse incorrectly returned 0.
+ Print a stack-overflow message and fail instead.
+ Initialize the line-number information before creating the stack,
+ so that the stack-overflow message can report line zero safely.
+
2005-07-14 Paul Eggert <eggert@cs.ucla.edu>
Fix problems reported by twlevo@xs4all.nl.
YYDPRINTF ((stderr, "Starting parse\n"));
yytoken = YYEMPTY;
-
- if (setjmp (yystack.yyexception_buffer) != 0)
- goto yyDone;
-
- if (! yyinitGLRStack (&yystack, YYINITDEPTH))
- goto yyDone;
- yystack.yytokenp = &yytoken;
-
yylval = yyval_default;
]b4_location_if([
#if YYLTYPE_IS_TRIVIAL
/* Line __line__ of glr.c. */
b4_syncline([@oline@], [@ofile@])])dnl
[
+ if (setjmp (yystack.yyexception_buffer) != 0)
+ goto yyDone;
+ if (! yyinitGLRStack (&yystack, YYINITDEPTH))
+ yyStackOverflow (&yystack]b4_lpure_args[);
+ yystack.yytokenp = &yytoken;
yyglrShift (&yystack, 0, 0, 0, yylval, &yylloc]b4_user_args[);
yyposn = 0;