+2006-12-07 Bob Rossi <bob@brasko.net>
+ and Joel Denny <jdenny@ces.clemson.edu>
+
+ * data/push.c (yypvarsinit): Change return type from void* to struct
+ yypvars*. No longer cast to void* on return.
+ (struct yypvars): Remove yylen since it need not be remembered between
+ yypushparse invocations.
+ (yypushparse): Don't copy between yylen and pv->yylen.
+
2006-12-05 Bob Rossi <bob@brasko.net>
* data/push.c (yychar_set, yylval_set, yylloc_set): Delete.
]b4_push_if([
struct yypvars;
enum { YYPUSH_MORE = 4 };
-]b4_c_function_decl([yypvarsinit], [void *], [[void], []])[
+]b4_c_function_decl([yypvarsinit], [struct yypvars *], [[void], []])[
]b4_c_function_decl([yypushparse], [int],
[[struct yypvars *yypvars], [yypvars]],
[[int yynchar], [yynchar]],
/* The locations where the error started and ended. */
YYLTYPE yyerror_range[2];]]])[
YYSIZE_T yystacksize;
- int yylen;
/* The variables used to return semantic value and location from the
action routines. */
YYSTYPE yyval;
};
/* Initialize the parser data structure. */
-void *
+struct yypvars*
yypvarsinit (void)
{
struct yypvars *pv = (struct yypvars *) malloc (sizeof *pv);
]b4_locations_if([ pv->yylsp = pv->yyls;])[
- return (void *) pv;
+ return pv;
}])
m4_divert_pop([KILL])dnl# ====================== End of M4 code.
yylsp = pv->yylsp;]])[
yystacksize = pv->yystacksize;
- yylen = pv->yylen;
yyval = pv->yyval;
]b4_locations_if([yyloc = pv->yyloc;])[
if (pv->yynew == 0)
pv->yylsp = yylsp;]])[
pv->yystacksize = yystacksize;
- pv->yylen = yylen;
pv->yyval = yyval;
]b4_locations_if([pv->yyloc = yyloc;])[
goto yypushreturn;