X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/ab7f29f8f9a7ad89b6a3163f913e1ee2b7889223..9b9e0a7d46123c50e51f6742eba1bfa0d091b8aa:/src/parse-gram.c diff --git a/src/parse-gram.c b/src/parse-gram.c index ec80e44a..3ad42185 100644 --- a/src/parse-gram.c +++ b/src/parse-gram.c @@ -1,10 +1,9 @@ +/* A Bison parser, made by GNU Bison 2.3b.153-3d8d7. */ -/* A Bison parser, made by GNU Bison 2.3a+. */ - -/* Skeleton implementation for Bison's Yacc-like parsers in C +/* Implementation for Bison's Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006, + 2007, 2008 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -46,7 +45,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.3a+" +#define YYBISON_VERSION "2.3b.153-3d8d7" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -54,22 +53,28 @@ /* Pure parsers. */ #define YYPURE 1 +/* Push parsers. */ +#define YYPUSH 0 + +/* Pull parsers. */ +#define YYPULL 1 + /* Using locations. */ #define YYLSP_NEEDED 1 /* Substitute the variable and function names. */ -#define yyparse gram_parse -#define yylex gram_lex -#define yyerror gram_error -#define yylval gram_lval -#define yychar gram_char -#define yydebug gram_debug -#define yynerrs gram_nerrs -#define yylloc gram_lloc +#define yyparse gram_parse +#define yylex gram_lex +#define yyerror gram_error +#define yylval gram_lval +#define yychar gram_char +#define yydebug gram_debug +#define yynerrs gram_nerrs +#define yylloc gram_lloc /* Copy the first part of user declarations. */ -/* Line 22 of yacc.c */ +/* Line 191 of yacc.c */ #line 1 "parse-gram.y" /* Bison Grammar Parser -*- C -*- @@ -94,8 +99,6 @@ #include #include "system.h" -#include - #include "complain.h" #include "conflicts.h" #include "files.h" @@ -146,8 +149,8 @@ static int current_prec = 0; #define YYTYPE_UINT8 uint_fast8_t -/* Line 22 of yacc.c */ -#line 151 "parse-gram.c" +/* Line 191 of yacc.c */ +#line 154 "../../../src/parse-gram.c" /* Enabling traces. */ #ifndef YYDEBUG @@ -295,8 +298,8 @@ static int current_prec = 0; typedef union YYSTYPE { -/* Line 22 of yacc.c */ -#line 94 "parse-gram.y" +/* Line 216 of yacc.c */ +#line 92 "parse-gram.y" symbol *symbol; symbol_list *list; @@ -309,8 +312,8 @@ typedef union YYSTYPE -/* Line 22 of yacc.c */ -#line 314 "parse-gram.c" +/* Line 216 of yacc.c */ +#line 317 "../../../src/parse-gram.c" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -334,8 +337,8 @@ typedef struct YYLTYPE /* Copy the second part of user declarations. */ -/* Line 22 of yacc.c */ -#line 339 "parse-gram.c" +/* Line 266 of yacc.c */ +#line 342 "../../../src/parse-gram.c" #ifdef short # undef short @@ -499,9 +502,9 @@ void free (void *); /* INFRINGES ON USER NAME SPACE */ /* A type that is properly aligned for any stack member. */ union yyalloc { - yytype_int16 yyss; - YYSTYPE yyvs; - YYLTYPE yyls; + yytype_int16 yyss_alloc; + YYSTYPE yyvs_alloc; + YYLTYPE yyls_alloc; }; /* The size of the maximum gap between one aligned stack and the next. */ @@ -536,12 +539,12 @@ union yyalloc elements in the stack, and YYPTR gives the new location of the stack. Advance YYPTR to a properly aligned location for the next stack. */ -# define YYSTACK_RELOCATE(Stack) \ +# define YYSTACK_RELOCATE(Stack_alloc, Stack) \ do \ { \ YYSIZE_T yynewbytes; \ - YYCOPY (&yyptr->Stack, Stack, yysize); \ - Stack = &yyptr->Stack; \ + YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ + Stack = &yyptr->Stack_alloc; \ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ yyptr += yynewbytes / sizeof (*yyptr); \ } \ @@ -660,17 +663,17 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 204, 204, 212, 214, 218, 219, 229, 230, 234, - 235, 240, 241, 242, 243, 244, 245, 250, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 282, - 283, 307, 308, 309, 310, 314, 315, 316, 320, 327, - 334, 338, 342, 349, 364, 365, 369, 381, 381, 386, - 386, 391, 402, 417, 418, 419, 423, 424, 429, 431, - 436, 437, 442, 444, 449, 450, 454, 455, 456, 457, - 462, 467, 472, 478, 484, 495, 496, 505, 506, 512, - 513, 514, 521, 521, 525, 526, 527, 532, 533, 535, - 537, 539, 541, 551, 552, 558, 561, 570, 590, 592, - 601, 606, 607, 612, 619, 621 + 0, 202, 202, 210, 212, 216, 217, 227, 228, 232, + 233, 238, 239, 240, 241, 242, 243, 248, 257, 258, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 280, + 281, 305, 306, 307, 308, 312, 313, 314, 318, 325, + 332, 336, 340, 347, 362, 363, 367, 379, 379, 384, + 384, 389, 400, 415, 416, 417, 421, 422, 427, 429, + 434, 435, 440, 442, 447, 448, 452, 453, 454, 455, + 460, 465, 470, 476, 482, 493, 494, 503, 504, 510, + 511, 512, 519, 519, 523, 524, 525, 530, 531, 533, + 535, 537, 539, 549, 550, 556, 559, 568, 588, 590, + 599, 604, 605, 610, 617, 619 }; #endif @@ -1025,147 +1028,147 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp) { case 3: /* "\"string\"" */ -/* Line 22 of yacc.c */ -#line 182 "parse-gram.y" - { fputs (quotearg_style (c_quoting_style, (yyvaluep->chars)), stderr); }; +/* Line 717 of yacc.c */ +#line 180 "parse-gram.y" + { fputs (quotearg_style (c_quoting_style, ((*yyvaluep).chars)), stderr); }; -/* Line 22 of yacc.c */ -#line 1034 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1037 "../../../src/parse-gram.c" break; case 4: /* "\"integer\"" */ -/* Line 22 of yacc.c */ -#line 193 "parse-gram.y" - { fprintf (stderr, "%d", (yyvaluep->integer)); }; +/* Line 717 of yacc.c */ +#line 191 "parse-gram.y" + { fprintf (stderr, "%d", ((*yyvaluep).integer)); }; -/* Line 22 of yacc.c */ -#line 1043 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1046 "../../../src/parse-gram.c" break; case 43: /* "\"{...}\"" */ -/* Line 22 of yacc.c */ -#line 184 "parse-gram.y" - { fprintf (stderr, "{\n%s\n}", (yyvaluep->code)); }; +/* Line 717 of yacc.c */ +#line 182 "parse-gram.y" + { fprintf (stderr, "{\n%s\n}", ((*yyvaluep).code)); }; -/* Line 22 of yacc.c */ -#line 1052 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1055 "../../../src/parse-gram.c" break; case 44: /* "\"char\"" */ -/* Line 22 of yacc.c */ -#line 176 "parse-gram.y" - { fputs (char_name ((yyvaluep->character)), stderr); }; +/* Line 717 of yacc.c */ +#line 174 "parse-gram.y" + { fputs (char_name (((*yyvaluep).character)), stderr); }; -/* Line 22 of yacc.c */ -#line 1061 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1064 "../../../src/parse-gram.c" break; case 45: /* "\"epilogue\"" */ -/* Line 22 of yacc.c */ -#line 184 "parse-gram.y" - { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); }; +/* Line 717 of yacc.c */ +#line 182 "parse-gram.y" + { fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); }; -/* Line 22 of yacc.c */ -#line 1070 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1073 "../../../src/parse-gram.c" break; case 47: /* "\"identifier\"" */ -/* Line 22 of yacc.c */ -#line 189 "parse-gram.y" - { fputs ((yyvaluep->uniqstr), stderr); }; +/* Line 717 of yacc.c */ +#line 187 "parse-gram.y" + { fputs (((*yyvaluep).uniqstr), stderr); }; -/* Line 22 of yacc.c */ -#line 1079 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1082 "../../../src/parse-gram.c" break; case 48: /* "\"identifier:\"" */ -/* Line 22 of yacc.c */ -#line 190 "parse-gram.y" - { fprintf (stderr, "%s:", (yyvaluep->uniqstr)); }; +/* Line 717 of yacc.c */ +#line 188 "parse-gram.y" + { fprintf (stderr, "%s:", ((*yyvaluep).uniqstr)); }; -/* Line 22 of yacc.c */ -#line 1088 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1091 "../../../src/parse-gram.c" break; case 51: /* "\"%{...%}\"" */ -/* Line 22 of yacc.c */ -#line 184 "parse-gram.y" - { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); }; +/* Line 717 of yacc.c */ +#line 182 "parse-gram.y" + { fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); }; -/* Line 22 of yacc.c */ -#line 1097 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1100 "../../../src/parse-gram.c" break; case 53: /* "\"type\"" */ -/* Line 22 of yacc.c */ -#line 188 "parse-gram.y" - { fprintf (stderr, "<%s>", (yyvaluep->uniqstr)); }; +/* Line 717 of yacc.c */ +#line 186 "parse-gram.y" + { fprintf (stderr, "<%s>", ((*yyvaluep).uniqstr)); }; -/* Line 22 of yacc.c */ -#line 1106 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1109 "../../../src/parse-gram.c" break; case 82: /* "variable" */ -/* Line 22 of yacc.c */ -#line 189 "parse-gram.y" - { fputs ((yyvaluep->uniqstr), stderr); }; +/* Line 717 of yacc.c */ +#line 187 "parse-gram.y" + { fputs (((*yyvaluep).uniqstr), stderr); }; -/* Line 22 of yacc.c */ -#line 1115 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1118 "../../../src/parse-gram.c" break; case 83: /* "content.opt" */ -/* Line 22 of yacc.c */ -#line 184 "parse-gram.y" - { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); }; +/* Line 717 of yacc.c */ +#line 182 "parse-gram.y" + { fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); }; -/* Line 22 of yacc.c */ -#line 1124 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1127 "../../../src/parse-gram.c" break; case 84: /* "braceless" */ -/* Line 22 of yacc.c */ -#line 184 "parse-gram.y" - { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); }; +/* Line 717 of yacc.c */ +#line 182 "parse-gram.y" + { fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); }; -/* Line 22 of yacc.c */ -#line 1133 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1136 "../../../src/parse-gram.c" break; case 85: /* "id" */ -/* Line 22 of yacc.c */ -#line 196 "parse-gram.y" - { fprintf (stderr, "%s", (yyvaluep->symbol)->tag); }; +/* Line 717 of yacc.c */ +#line 194 "parse-gram.y" + { fprintf (stderr, "%s", ((*yyvaluep).symbol)->tag); }; -/* Line 22 of yacc.c */ -#line 1142 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1145 "../../../src/parse-gram.c" break; case 86: /* "id_colon" */ -/* Line 22 of yacc.c */ -#line 197 "parse-gram.y" - { fprintf (stderr, "%s:", (yyvaluep->symbol)->tag); }; +/* Line 717 of yacc.c */ +#line 195 "parse-gram.y" + { fprintf (stderr, "%s:", ((*yyvaluep).symbol)->tag); }; -/* Line 22 of yacc.c */ -#line 1151 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1154 "../../../src/parse-gram.c" break; case 87: /* "symbol" */ -/* Line 22 of yacc.c */ -#line 196 "parse-gram.y" - { fprintf (stderr, "%s", (yyvaluep->symbol)->tag); }; +/* Line 717 of yacc.c */ +#line 194 "parse-gram.y" + { fprintf (stderr, "%s", ((*yyvaluep).symbol)->tag); }; -/* Line 22 of yacc.c */ -#line 1160 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1163 "../../../src/parse-gram.c" break; case 88: /* "string_as_id" */ -/* Line 22 of yacc.c */ -#line 196 "parse-gram.y" - { fprintf (stderr, "%s", (yyvaluep->symbol)->tag); }; +/* Line 717 of yacc.c */ +#line 194 "parse-gram.y" + { fprintf (stderr, "%s", ((*yyvaluep).symbol)->tag); }; -/* Line 22 of yacc.c */ -#line 1169 "parse-gram.c" +/* Line 717 of yacc.c */ +#line 1172 "../../../src/parse-gram.c" break; default: break; @@ -1543,10 +1546,8 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) break; } } - /* Prevent warnings from -Wmissing-prototypes. */ - #ifdef YYPARSE_PARAM #if defined __STDC__ || defined __cplusplus int yyparse (void *YYPARSE_PARAM); @@ -1565,10 +1566,9 @@ int yyparse (); - -/*----------. -| yyparse. | -`----------*/ +/*-------------------------. +| yyparse or yypush_parse. | +`-------------------------*/ #ifdef YYPARSE_PARAM #if (defined __STDC__ || defined __C99__FUNC__ \ @@ -1592,95 +1592,103 @@ yyparse () #endif #endif { - /* The lookahead symbol. */ +/* The lookahead symbol. */ int yychar; /* The semantic value of the lookahead symbol. */ YYSTYPE yylval; -/* Number of syntax errors so far. */ -int yynerrs; /* Location data for the lookahead symbol. */ YYLTYPE yylloc; - int yystate; - int yyn; - int yyresult; - /* Number of tokens to shift before error messages enabled. */ - int yyerrstatus; - /* Lookahead token as an internal (translated) token number. */ - int yytoken = 0; -#if YYERROR_VERBOSE - /* Buffer for error messages, and its allocated size. */ - char yymsgbuf[128]; - char *yymsg = yymsgbuf; - YYSIZE_T yymsg_alloc = sizeof yymsgbuf; -#endif + /* Number of syntax errors so far. */ + int yynerrs; - /* The stacks and their tools: - `yyss' is related to states. - `yyvs' is related to semantic values. - `yyls' is related to locations. + int yystate; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus; - Refer to the stacks thru separate pointers, to allow yyoverflow - to reallocate them elsewhere. */ + /* The stacks and their tools: + `yyss': related to states. + `yyvs': related to semantic values. + `yyls': related to locations. - /* The state stack. */ - yytype_int16 yyssa[YYINITDEPTH]; - yytype_int16 *yyss = yyssa; - yytype_int16 *yyssp; + Refer to the stacks thru separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ - /* The semantic value stack. */ - YYSTYPE yyvsa[YYINITDEPTH]; - YYSTYPE *yyvs = yyvsa; - YYSTYPE *yyvsp; + /* The state stack. */ + yytype_int16 yyssa[YYINITDEPTH]; + yytype_int16 *yyss; + yytype_int16 *yyssp; - /* The location stack. */ - YYLTYPE yylsa[YYINITDEPTH]; - YYLTYPE *yyls = yylsa; - YYLTYPE *yylsp; - /* The locations where the error started and ended. */ - YYLTYPE yyerror_range[2]; + /* The semantic value stack. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs; + YYSTYPE *yyvsp; -#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N)) + /* The location stack. */ + YYLTYPE yylsa[YYINITDEPTH]; + YYLTYPE *yyls; + YYLTYPE *yylsp; - YYSIZE_T yystacksize = YYINITDEPTH; + /* The locations where the error started and ended. */ + YYLTYPE yyerror_range[2]; + YYSIZE_T yystacksize; + + int yyn; + int yyresult; + /* Lookahead token as an internal (translated) token number. */ + int yytoken; /* The variables used to return semantic value and location from the action routines. */ YYSTYPE yyval; YYLTYPE yyloc; +#if YYERROR_VERBOSE + /* Buffer for error messages, and its allocated size. */ + char yymsgbuf[128]; + char *yymsg = yymsgbuf; + YYSIZE_T yymsg_alloc = sizeof yymsgbuf; +#endif + +#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N)) + /* The number of symbols on the RHS of the reduced rule. Keep to zero when no symbol should be popped. */ int yylen = 0; + yytoken = 0; + yyss = yyssa; + yyvs = yyvsa; + yyls = yylsa; + yystacksize = YYINITDEPTH; + YYDPRINTF ((stderr, "Starting parse\n")); yystate = 0; yyerrstatus = 0; yynerrs = 0; - yychar = YYEMPTY; /* Cause a token to be read. */ + yychar = YYEMPTY; /* Cause a token to be read. */ /* Initialize stack pointers. Waste one element of value and location stack so that they stay on the same level as the state stack. The wasted elements are never initialized. */ - yyssp = yyss; yyvsp = yyvs; yylsp = yyls; + #if YYLTYPE_IS_TRIVIAL /* Initialize the default location before parsing starts. */ yylloc.first_line = yylloc.last_line = 1; yylloc.first_column = yylloc.last_column = 1; #endif +/* User initialization code. */ - /* User initialization code. */ - -/* Line 22 of yacc.c */ -#line 86 "parse-gram.y" +/* Line 1244 of yacc.c */ +#line 84 "parse-gram.y" { /* Bison's grammar can initial empty locations, hence a default location is needed. */ @@ -1688,9 +1696,10 @@ YYLTYPE yylloc; boundary_set (&yylloc.end, current_file, 1, 1); } -/* Line 22 of yacc.c */ -#line 1693 "parse-gram.c" +/* Line 1244 of yacc.c */ +#line 1701 "../../../src/parse-gram.c" yylsp[0] = yylloc; + goto yysetstate; /*------------------------------------------------------------. @@ -1727,6 +1736,7 @@ YYLTYPE yylloc; &yyvs1, yysize * sizeof (*yyvsp), &yyls1, yysize * sizeof (*yylsp), &yystacksize); + yyls = yyls1; yyss = yyss1; yyvs = yyvs1; @@ -1748,9 +1758,9 @@ YYLTYPE yylloc; (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); if (! yyptr) goto yyexhaustedlab; - YYSTACK_RELOCATE (yyss); - YYSTACK_RELOCATE (yyvs); - YYSTACK_RELOCATE (yyls); + YYSTACK_RELOCATE (yyss_alloc, yyss); + YYSTACK_RELOCATE (yyvs_alloc, yyvs); + YYSTACK_RELOCATE (yyls_alloc, yyls); # undef YYSTACK_RELOCATE if (yyss1 != yyssa) YYSTACK_FREE (yyss1); @@ -1874,8 +1884,8 @@ yyreduce: { case 6: -/* Line 22 of yacc.c */ -#line 220 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 218 "parse-gram.y" { code_props plain_code; code_props_plain_init (&plain_code, (yyvsp[(1) - (1)].chars), (yylsp[(1) - (1)])); @@ -1885,90 +1895,123 @@ yyreduce: plain_code.code, (yylsp[(1) - (1)])); code_scanner_last_string_free (); } + +/* Line 1457 of yacc.c */ +#line 1901 "../../../src/parse-gram.c" break; case 7: -/* Line 22 of yacc.c */ -#line 229 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 227 "parse-gram.y" { debug_flag = true; } + +/* Line 1457 of yacc.c */ +#line 1911 "../../../src/parse-gram.c" break; case 8: -/* Line 22 of yacc.c */ -#line 231 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 229 "parse-gram.y" { muscle_percent_define_insert ((yyvsp[(2) - (3)].uniqstr), (yylsp[(2) - (3)]), (yyvsp[(3) - (3)].chars)); } + +/* Line 1457 of yacc.c */ +#line 1923 "../../../src/parse-gram.c" break; case 9: -/* Line 22 of yacc.c */ -#line 234 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 232 "parse-gram.y" { defines_flag = true; } + +/* Line 1457 of yacc.c */ +#line 1933 "../../../src/parse-gram.c" break; case 10: -/* Line 22 of yacc.c */ -#line 236 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 234 "parse-gram.y" { defines_flag = true; spec_defines_file = xstrdup ((yyvsp[(2) - (2)].chars)); } + +/* Line 1457 of yacc.c */ +#line 1946 "../../../src/parse-gram.c" break; case 11: -/* Line 22 of yacc.c */ -#line 240 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 238 "parse-gram.y" { error_verbose = true; } + +/* Line 1457 of yacc.c */ +#line 1956 "../../../src/parse-gram.c" break; case 12: -/* Line 22 of yacc.c */ -#line 241 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 239 "parse-gram.y" { expected_sr_conflicts = (yyvsp[(2) - (2)].integer); } + +/* Line 1457 of yacc.c */ +#line 1966 "../../../src/parse-gram.c" break; case 13: -/* Line 22 of yacc.c */ -#line 242 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 240 "parse-gram.y" { expected_rr_conflicts = (yyvsp[(2) - (2)].integer); } + +/* Line 1457 of yacc.c */ +#line 1976 "../../../src/parse-gram.c" break; case 14: -/* Line 22 of yacc.c */ -#line 243 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 241 "parse-gram.y" { spec_file_prefix = (yyvsp[(2) - (2)].chars); } + +/* Line 1457 of yacc.c */ +#line 1986 "../../../src/parse-gram.c" break; case 15: -/* Line 22 of yacc.c */ -#line 244 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 242 "parse-gram.y" { spec_file_prefix = (yyvsp[(3) - (3)].chars); } + +/* Line 1457 of yacc.c */ +#line 1996 "../../../src/parse-gram.c" break; case 16: -/* Line 22 of yacc.c */ -#line 246 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 244 "parse-gram.y" { nondeterministic_parser = true; glr_parser = true; } + +/* Line 1457 of yacc.c */ +#line 2009 "../../../src/parse-gram.c" break; case 17: -/* Line 22 of yacc.c */ -#line 251 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 249 "parse-gram.y" { code_props action; code_props_symbol_action_init (&action, (yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); @@ -1977,82 +2020,115 @@ yyreduce: muscle_code_grow ("initial_action", action.code, (yylsp[(2) - (2)])); code_scanner_last_string_free (); } + +/* Line 1457 of yacc.c */ +#line 2026 "../../../src/parse-gram.c" break; case 18: -/* Line 22 of yacc.c */ -#line 259 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 257 "parse-gram.y" { language_argmatch ((yyvsp[(2) - (2)].chars), 1, &(yylsp[(1) - (2)])); } + +/* Line 1457 of yacc.c */ +#line 2036 "../../../src/parse-gram.c" break; case 19: -/* Line 22 of yacc.c */ -#line 260 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 258 "parse-gram.y" { add_param ("lex_param", (yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); } + +/* Line 1457 of yacc.c */ +#line 2046 "../../../src/parse-gram.c" break; case 20: -/* Line 22 of yacc.c */ -#line 261 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 259 "parse-gram.y" { locations_flag = true; } + +/* Line 1457 of yacc.c */ +#line 2056 "../../../src/parse-gram.c" break; case 21: -/* Line 22 of yacc.c */ -#line 262 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 260 "parse-gram.y" { spec_name_prefix = (yyvsp[(2) - (2)].chars); } + +/* Line 1457 of yacc.c */ +#line 2066 "../../../src/parse-gram.c" break; case 22: -/* Line 22 of yacc.c */ -#line 263 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 261 "parse-gram.y" { spec_name_prefix = (yyvsp[(3) - (3)].chars); } + +/* Line 1457 of yacc.c */ +#line 2076 "../../../src/parse-gram.c" break; case 23: -/* Line 22 of yacc.c */ -#line 264 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 262 "parse-gram.y" { no_lines_flag = true; } + +/* Line 1457 of yacc.c */ +#line 2086 "../../../src/parse-gram.c" break; case 24: -/* Line 22 of yacc.c */ -#line 265 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 263 "parse-gram.y" { nondeterministic_parser = true; } + +/* Line 1457 of yacc.c */ +#line 2096 "../../../src/parse-gram.c" break; case 25: -/* Line 22 of yacc.c */ -#line 266 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 264 "parse-gram.y" { spec_outfile = (yyvsp[(2) - (2)].chars); } + +/* Line 1457 of yacc.c */ +#line 2106 "../../../src/parse-gram.c" break; case 26: -/* Line 22 of yacc.c */ -#line 267 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 265 "parse-gram.y" { spec_outfile = (yyvsp[(3) - (3)].chars); } + +/* Line 1457 of yacc.c */ +#line 2116 "../../../src/parse-gram.c" break; case 27: -/* Line 22 of yacc.c */ -#line 268 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 266 "parse-gram.y" { add_param ("parse_param", (yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); } + +/* Line 1457 of yacc.c */ +#line 2126 "../../../src/parse-gram.c" break; case 28: -/* Line 22 of yacc.c */ -#line 270 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 268 "parse-gram.y" { /* %pure-parser is deprecated in favor of `%define api.pure', so use `%define api.pure' in a backward-compatible manner here. First, don't @@ -2065,19 +2141,25 @@ yyreduce: if (!muscle_percent_define_flag_if ("api.pure")) muscle_percent_define_insert ("api.pure", (yylsp[(1) - (1)]), ""); } + +/* Line 1457 of yacc.c */ +#line 2147 "../../../src/parse-gram.c" break; case 29: -/* Line 22 of yacc.c */ -#line 282 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 280 "parse-gram.y" { version_check (&(yylsp[(2) - (2)]), (yyvsp[(2) - (2)].chars)); } + +/* Line 1457 of yacc.c */ +#line 2157 "../../../src/parse-gram.c" break; case 30: -/* Line 22 of yacc.c */ -#line 284 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 282 "parse-gram.y" { char const *skeleton_user = (yyvsp[(2) - (2)].chars); if (strchr (skeleton_user, '/')) @@ -2101,165 +2183,219 @@ yyreduce: } skeleton_arg (skeleton_user, 1, &(yylsp[(1) - (2)])); } + +/* Line 1457 of yacc.c */ +#line 2189 "../../../src/parse-gram.c" break; case 31: -/* Line 22 of yacc.c */ -#line 307 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 305 "parse-gram.y" { token_table_flag = true; } + +/* Line 1457 of yacc.c */ +#line 2199 "../../../src/parse-gram.c" break; case 32: -/* Line 22 of yacc.c */ -#line 308 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 306 "parse-gram.y" { report_flag |= report_states; } + +/* Line 1457 of yacc.c */ +#line 2209 "../../../src/parse-gram.c" break; case 33: -/* Line 22 of yacc.c */ -#line 309 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 307 "parse-gram.y" { yacc_flag = true; } + +/* Line 1457 of yacc.c */ +#line 2219 "../../../src/parse-gram.c" break; case 37: -/* Line 22 of yacc.c */ -#line 317 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 315 "parse-gram.y" { grammar_start_symbol_set ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)])); } + +/* Line 1457 of yacc.c */ +#line 2231 "../../../src/parse-gram.c" break; case 38: -/* Line 22 of yacc.c */ -#line 321 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 319 "parse-gram.y" { symbol_list *list; for (list = (yyvsp[(3) - (3)].list); list; list = list->next) symbol_list_destructor_set (list, (yyvsp[(2) - (3)].code), (yylsp[(2) - (3)])); symbol_list_free ((yyvsp[(3) - (3)].list)); } + +/* Line 1457 of yacc.c */ +#line 2246 "../../../src/parse-gram.c" break; case 39: -/* Line 22 of yacc.c */ -#line 328 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 326 "parse-gram.y" { symbol_list *list; for (list = (yyvsp[(3) - (3)].list); list; list = list->next) symbol_list_printer_set (list, (yyvsp[(2) - (3)].code), (yylsp[(2) - (3)])); symbol_list_free ((yyvsp[(3) - (3)].list)); } + +/* Line 1457 of yacc.c */ +#line 2261 "../../../src/parse-gram.c" break; case 40: -/* Line 22 of yacc.c */ -#line 335 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 333 "parse-gram.y" { default_prec = true; } + +/* Line 1457 of yacc.c */ +#line 2273 "../../../src/parse-gram.c" break; case 41: -/* Line 22 of yacc.c */ -#line 339 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 337 "parse-gram.y" { default_prec = false; } + +/* Line 1457 of yacc.c */ +#line 2285 "../../../src/parse-gram.c" break; case 42: -/* Line 22 of yacc.c */ -#line 343 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 341 "parse-gram.y" { /* Do not invoke muscle_percent_code_grow here since it invokes muscle_user_name_list_grow. */ muscle_code_grow ("percent_code()", (yyvsp[(2) - (2)].chars), (yylsp[(2) - (2)])); code_scanner_last_string_free (); } + +/* Line 1457 of yacc.c */ +#line 2300 "../../../src/parse-gram.c" break; case 43: -/* Line 22 of yacc.c */ -#line 350 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 348 "parse-gram.y" { muscle_percent_code_grow ((yyvsp[(2) - (3)].uniqstr), (yylsp[(2) - (3)]), (yyvsp[(3) - (3)].chars), (yylsp[(3) - (3)])); code_scanner_last_string_free (); } + +/* Line 1457 of yacc.c */ +#line 2313 "../../../src/parse-gram.c" break; case 44: -/* Line 22 of yacc.c */ -#line 364 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 362 "parse-gram.y" {} + +/* Line 1457 of yacc.c */ +#line 2323 "../../../src/parse-gram.c" break; case 45: -/* Line 22 of yacc.c */ -#line 365 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 363 "parse-gram.y" { muscle_code_grow ("union_name", (yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2333 "../../../src/parse-gram.c" break; case 46: -/* Line 22 of yacc.c */ -#line 370 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 368 "parse-gram.y" { union_seen = true; muscle_code_grow ("stype", (yyvsp[(3) - (3)].chars), (yylsp[(3) - (3)])); code_scanner_last_string_free (); } + +/* Line 1457 of yacc.c */ +#line 2347 "../../../src/parse-gram.c" break; case 47: -/* Line 22 of yacc.c */ -#line 381 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 379 "parse-gram.y" { current_class = nterm_sym; } + +/* Line 1457 of yacc.c */ +#line 2357 "../../../src/parse-gram.c" break; case 48: -/* Line 22 of yacc.c */ -#line 382 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 380 "parse-gram.y" { current_class = unknown_sym; current_type = NULL; } + +/* Line 1457 of yacc.c */ +#line 2370 "../../../src/parse-gram.c" break; case 49: -/* Line 22 of yacc.c */ -#line 386 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 384 "parse-gram.y" { current_class = token_sym; } + +/* Line 1457 of yacc.c */ +#line 2380 "../../../src/parse-gram.c" break; case 50: -/* Line 22 of yacc.c */ -#line 387 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 385 "parse-gram.y" { current_class = unknown_sym; current_type = NULL; } + +/* Line 1457 of yacc.c */ +#line 2393 "../../../src/parse-gram.c" break; case 51: -/* Line 22 of yacc.c */ -#line 392 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 390 "parse-gram.y" { symbol_list *list; tag_seen = true; @@ -2267,12 +2403,15 @@ yyreduce: symbol_type_set (list->content.sym, (yyvsp[(2) - (3)].uniqstr), (yylsp[(2) - (3)])); symbol_list_free ((yyvsp[(3) - (3)].list)); } + +/* Line 1457 of yacc.c */ +#line 2409 "../../../src/parse-gram.c" break; case 52: -/* Line 22 of yacc.c */ -#line 403 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 401 "parse-gram.y" { symbol_list *list; ++current_prec; @@ -2284,273 +2423,378 @@ yyreduce: symbol_list_free ((yyvsp[(3) - (3)].list)); current_type = NULL; } + +/* Line 1457 of yacc.c */ +#line 2429 "../../../src/parse-gram.c" break; case 53: -/* Line 22 of yacc.c */ -#line 417 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 415 "parse-gram.y" { (yyval.assoc) = left_assoc; } + +/* Line 1457 of yacc.c */ +#line 2439 "../../../src/parse-gram.c" break; case 54: -/* Line 22 of yacc.c */ -#line 418 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 416 "parse-gram.y" { (yyval.assoc) = right_assoc; } + +/* Line 1457 of yacc.c */ +#line 2449 "../../../src/parse-gram.c" break; case 55: -/* Line 22 of yacc.c */ -#line 419 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 417 "parse-gram.y" { (yyval.assoc) = non_assoc; } + +/* Line 1457 of yacc.c */ +#line 2459 "../../../src/parse-gram.c" break; case 56: -/* Line 22 of yacc.c */ -#line 423 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 421 "parse-gram.y" { current_type = NULL; } + +/* Line 1457 of yacc.c */ +#line 2469 "../../../src/parse-gram.c" break; case 57: -/* Line 22 of yacc.c */ -#line 424 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 422 "parse-gram.y" { current_type = (yyvsp[(1) - (1)].uniqstr); tag_seen = true; } + +/* Line 1457 of yacc.c */ +#line 2479 "../../../src/parse-gram.c" break; case 58: -/* Line 22 of yacc.c */ -#line 430 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 428 "parse-gram.y" { (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2489 "../../../src/parse-gram.c" break; case 59: -/* Line 22 of yacc.c */ -#line 432 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 430 "parse-gram.y" { (yyval.list) = symbol_list_prepend ((yyvsp[(1) - (2)].list), symbol_list_sym_new ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)]))); } + +/* Line 1457 of yacc.c */ +#line 2499 "../../../src/parse-gram.c" break; case 60: -/* Line 22 of yacc.c */ -#line 436 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 434 "parse-gram.y" { (yyval.symbol) = (yyvsp[(1) - (1)].symbol); } + +/* Line 1457 of yacc.c */ +#line 2509 "../../../src/parse-gram.c" break; case 61: -/* Line 22 of yacc.c */ -#line 437 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 435 "parse-gram.y" { (yyval.symbol) = (yyvsp[(1) - (2)].symbol); symbol_user_token_number_set ((yyvsp[(1) - (2)].symbol), (yyvsp[(2) - (2)].integer), (yylsp[(2) - (2)])); } + +/* Line 1457 of yacc.c */ +#line 2519 "../../../src/parse-gram.c" break; case 62: -/* Line 22 of yacc.c */ -#line 443 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 441 "parse-gram.y" { (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2529 "../../../src/parse-gram.c" break; case 63: -/* Line 22 of yacc.c */ -#line 445 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 443 "parse-gram.y" { (yyval.list) = symbol_list_prepend ((yyvsp[(1) - (2)].list), symbol_list_sym_new ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)]))); } + +/* Line 1457 of yacc.c */ +#line 2539 "../../../src/parse-gram.c" break; case 64: -/* Line 22 of yacc.c */ -#line 449 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 447 "parse-gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); } + +/* Line 1457 of yacc.c */ +#line 2549 "../../../src/parse-gram.c" break; case 65: -/* Line 22 of yacc.c */ -#line 450 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 448 "parse-gram.y" { (yyval.list) = symbol_list_prepend ((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].list)); } + +/* Line 1457 of yacc.c */ +#line 2559 "../../../src/parse-gram.c" break; case 66: -/* Line 22 of yacc.c */ -#line 454 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 452 "parse-gram.y" { (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2569 "../../../src/parse-gram.c" break; case 67: -/* Line 22 of yacc.c */ -#line 455 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 453 "parse-gram.y" { (yyval.list) = symbol_list_type_new ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2579 "../../../src/parse-gram.c" break; case 68: -/* Line 22 of yacc.c */ -#line 456 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 454 "parse-gram.y" { (yyval.list) = symbol_list_default_tagged_new ((yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2589 "../../../src/parse-gram.c" break; case 69: -/* Line 22 of yacc.c */ -#line 457 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 455 "parse-gram.y" { (yyval.list) = symbol_list_default_tagless_new ((yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2599 "../../../src/parse-gram.c" break; case 70: -/* Line 22 of yacc.c */ -#line 463 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 461 "parse-gram.y" { current_type = (yyvsp[(1) - (1)].uniqstr); tag_seen = true; } + +/* Line 1457 of yacc.c */ +#line 2612 "../../../src/parse-gram.c" break; case 71: -/* Line 22 of yacc.c */ -#line 468 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 466 "parse-gram.y" { symbol_class_set ((yyvsp[(1) - (1)].symbol), current_class, (yylsp[(1) - (1)]), true); symbol_type_set ((yyvsp[(1) - (1)].symbol), current_type, (yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2625 "../../../src/parse-gram.c" break; case 72: -/* Line 22 of yacc.c */ -#line 473 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 471 "parse-gram.y" { symbol_class_set ((yyvsp[(1) - (2)].symbol), current_class, (yylsp[(1) - (2)]), true); symbol_type_set ((yyvsp[(1) - (2)].symbol), current_type, (yylsp[(1) - (2)])); symbol_user_token_number_set ((yyvsp[(1) - (2)].symbol), (yyvsp[(2) - (2)].integer), (yylsp[(2) - (2)])); } + +/* Line 1457 of yacc.c */ +#line 2639 "../../../src/parse-gram.c" break; case 73: -/* Line 22 of yacc.c */ -#line 479 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 477 "parse-gram.y" { symbol_class_set ((yyvsp[(1) - (2)].symbol), current_class, (yylsp[(1) - (2)]), true); symbol_type_set ((yyvsp[(1) - (2)].symbol), current_type, (yylsp[(1) - (2)])); symbol_make_alias ((yyvsp[(1) - (2)].symbol), (yyvsp[(2) - (2)].symbol), (yyloc)); } + +/* Line 1457 of yacc.c */ +#line 2653 "../../../src/parse-gram.c" break; case 74: -/* Line 22 of yacc.c */ -#line 485 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 483 "parse-gram.y" { symbol_class_set ((yyvsp[(1) - (3)].symbol), current_class, (yylsp[(1) - (3)]), true); symbol_type_set ((yyvsp[(1) - (3)].symbol), current_type, (yylsp[(1) - (3)])); symbol_user_token_number_set ((yyvsp[(1) - (3)].symbol), (yyvsp[(2) - (3)].integer), (yylsp[(2) - (3)])); symbol_make_alias ((yyvsp[(1) - (3)].symbol), (yyvsp[(3) - (3)].symbol), (yyloc)); } + +/* Line 1457 of yacc.c */ +#line 2668 "../../../src/parse-gram.c" break; case 81: -/* Line 22 of yacc.c */ -#line 515 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 513 "parse-gram.y" { yyerrok; } + +/* Line 1457 of yacc.c */ +#line 2680 "../../../src/parse-gram.c" break; case 82: -/* Line 22 of yacc.c */ -#line 521 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 519 "parse-gram.y" { current_lhs = (yyvsp[(1) - (1)].symbol); current_lhs_location = (yylsp[(1) - (1)]); } + +/* Line 1457 of yacc.c */ +#line 2690 "../../../src/parse-gram.c" break; case 84: -/* Line 22 of yacc.c */ -#line 525 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 523 "parse-gram.y" { grammar_current_rule_end ((yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2700 "../../../src/parse-gram.c" break; case 85: -/* Line 22 of yacc.c */ -#line 526 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 524 "parse-gram.y" { grammar_current_rule_end ((yylsp[(3) - (3)])); } + +/* Line 1457 of yacc.c */ +#line 2710 "../../../src/parse-gram.c" break; case 87: -/* Line 22 of yacc.c */ -#line 532 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 530 "parse-gram.y" { grammar_current_rule_begin (current_lhs, current_lhs_location); } + +/* Line 1457 of yacc.c */ +#line 2720 "../../../src/parse-gram.c" break; case 88: -/* Line 22 of yacc.c */ -#line 534 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 532 "parse-gram.y" { grammar_current_rule_symbol_append ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)])); } + +/* Line 1457 of yacc.c */ +#line 2730 "../../../src/parse-gram.c" break; case 89: -/* Line 22 of yacc.c */ -#line 536 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 534 "parse-gram.y" { grammar_current_rule_action_append ((yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); } + +/* Line 1457 of yacc.c */ +#line 2740 "../../../src/parse-gram.c" break; case 90: -/* Line 22 of yacc.c */ -#line 538 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 536 "parse-gram.y" { grammar_current_rule_prec_set ((yyvsp[(3) - (3)].symbol), (yylsp[(3) - (3)])); } + +/* Line 1457 of yacc.c */ +#line 2750 "../../../src/parse-gram.c" break; case 91: -/* Line 22 of yacc.c */ -#line 540 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 538 "parse-gram.y" { grammar_current_rule_dprec_set ((yyvsp[(3) - (3)].integer), (yylsp[(3) - (3)])); } + +/* Line 1457 of yacc.c */ +#line 2760 "../../../src/parse-gram.c" break; case 92: -/* Line 22 of yacc.c */ -#line 542 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 540 "parse-gram.y" { grammar_current_rule_merge_set ((yyvsp[(3) - (3)].uniqstr), (yylsp[(3) - (3)])); } + +/* Line 1457 of yacc.c */ +#line 2770 "../../../src/parse-gram.c" break; case 94: -/* Line 22 of yacc.c */ -#line 552 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 550 "parse-gram.y" { (yyval.uniqstr) = uniqstr_new ((yyvsp[(1) - (1)].chars)); } + +/* Line 1457 of yacc.c */ +#line 2780 "../../../src/parse-gram.c" break; case 95: -/* Line 22 of yacc.c */ -#line 558 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 556 "parse-gram.y" { (yyval.chars) = ""; } + +/* Line 1457 of yacc.c */ +#line 2792 "../../../src/parse-gram.c" break; case 97: -/* Line 22 of yacc.c */ -#line 571 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 569 "parse-gram.y" { code_props plain_code; (yyvsp[(1) - (1)].code)[strlen ((yyvsp[(1) - (1)].code)) - 1] = '\n'; @@ -2559,47 +2803,62 @@ yyreduce: gram_scanner_last_string_free (); (yyval.chars) = plain_code.code; } + +/* Line 1457 of yacc.c */ +#line 2809 "../../../src/parse-gram.c" break; case 98: -/* Line 22 of yacc.c */ -#line 591 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 589 "parse-gram.y" { (yyval.symbol) = symbol_from_uniqstr ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2819 "../../../src/parse-gram.c" break; case 99: -/* Line 22 of yacc.c */ -#line 593 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 591 "parse-gram.y" { (yyval.symbol) = symbol_get (char_name ((yyvsp[(1) - (1)].character)), (yylsp[(1) - (1)])); symbol_class_set ((yyval.symbol), token_sym, (yylsp[(1) - (1)]), false); symbol_user_token_number_set ((yyval.symbol), (yyvsp[(1) - (1)].character), (yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2833 "../../../src/parse-gram.c" break; case 100: -/* Line 22 of yacc.c */ -#line 601 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 599 "parse-gram.y" { (yyval.symbol) = symbol_from_uniqstr ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); } + +/* Line 1457 of yacc.c */ +#line 2843 "../../../src/parse-gram.c" break; case 103: -/* Line 22 of yacc.c */ -#line 613 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 611 "parse-gram.y" { (yyval.symbol) = symbol_get (quotearg_style (c_quoting_style, (yyvsp[(1) - (1)].chars)), (yylsp[(1) - (1)])); symbol_class_set ((yyval.symbol), token_sym, (yylsp[(1) - (1)]), false); } + +/* Line 1457 of yacc.c */ +#line 2856 "../../../src/parse-gram.c" break; case 105: -/* Line 22 of yacc.c */ -#line 622 "parse-gram.y" +/* Line 1457 of yacc.c */ +#line 620 "parse-gram.y" { code_props plain_code; code_props_plain_init (&plain_code, (yyvsp[(2) - (2)].chars), (yylsp[(2) - (2)])); @@ -2608,12 +2867,15 @@ yyreduce: muscle_code_grow ("epilogue", plain_code.code, (yylsp[(2) - (2)])); code_scanner_last_string_free (); } + +/* Line 1457 of yacc.c */ +#line 2873 "../../../src/parse-gram.c" break; -/* Line 22 of yacc.c */ -#line 2617 "parse-gram.c" +/* Line 1457 of yacc.c */ +#line 2879 "../../../src/parse-gram.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2831,8 +3093,8 @@ yyreturn: -/* Line 22 of yacc.c */ -#line 632 "parse-gram.y" +/* Line 1677 of yacc.c */ +#line 630 "parse-gram.y"