From ed10c308fa116cac083297499095e6382fdbd256 Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Sun, 28 Jun 2020 15:08:15 +0200 Subject: [PATCH] yacc.c: simplify initialization of push parsers The previous commit ("yacc.c: declare and initialize and the same time") made b4_initialize_parser_state_variables useless. * data/skeletons/yacc.c (b4_initialize_parser_state_variables): Inline into... (yypstate_clear): here. --- data/skeletons/yacc.c | 34 +++++++++++++--------------------- 1 file changed, 13 insertions(+), 21 deletions(-) diff --git a/data/skeletons/yacc.c b/data/skeletons/yacc.c index 386fc184..0cd204b0 100644 --- a/data/skeletons/yacc.c +++ b/data/skeletons/yacc.c @@ -219,26 +219,6 @@ m4_define([b4_declare_parser_state_variables], [ : YYMAXDEPTH])])[;]])]) -# b4_initialize_parser_state_variables -# ------------------------------------ -# Initialize these variables. -m4_define([b4_initialize_parser_state_variables], -[[ yynerrs = 0; - yystate = 0; - yyerrstatus = 0; - - yystacksize = YYINITDEPTH; - yyssp = yyss = yyssa; - yyvsp = yyvs = yyvsa;]b4_locations_if([[ - yylsp = yyls = yylsa;]])[]b4_lac_if([[ - - yyes = yyesa; - yyes_capacity = ]b4_percent_define_get([[parse.lac.es-capacity-initial]])[; - if (YYMAXDEPTH < yyes_capacity) - yyes_capacity = YYMAXDEPTH;]])[ -]]) - - m4_define([b4_macro_define], [[#]define $1 $2]) @@ -1479,7 +1459,19 @@ yypull_parse (yypstate *yyps]b4_user_formals[) static void yypstate_clear (yypstate *yyps) { -]b4_initialize_parser_state_variables[ + yynerrs = 0; + yystate = 0; + yyerrstatus = 0; + + yystacksize = YYINITDEPTH; + yyssp = yyss = yyssa; + yyvsp = yyvs = yyvsa;]b4_locations_if([[ + yylsp = yyls = yylsa;]])[]b4_lac_if([[ + + yyes = yyesa; + yyes_capacity = ]b4_percent_define_get([[parse.lac.es-capacity-initial]])[; + if (YYMAXDEPTH < yyes_capacity) + yyes_capacity = YYMAXDEPTH;]])[ /* Initialize the state stack, in case yypcontext_expected_tokens is called before the first call to yyparse. */ *yyssp = 0;