YYFAIL: deprecate.

* NEWS (2.4.2): Document deprecation and the phase-out plan.
* data/lalr1.java (parser::YYStack::YYFAIL): Add comment about
deprecation.
* data/yacc.c (YYFAIL): Likewise, and suppress warnings about
YYFAIL from GCC cpp's -Wunused-macros.
* doc/bison.texinfo (Java Action Features): Remove YYFAIL
documentation.
(cherry picked from commit 1625df5b18)

Conflicts:

	doc/bison.texinfo
	src/parse-gram.c
	src/parse-gram.h
This commit is contained in:
Joel E. Denny
2009-12-21 14:51:40 -05:00
parent 3d04b5673d
commit 43dc3c8bc4
7 changed files with 218 additions and 154 deletions

View File

@@ -1,3 +1,14 @@
2009-12-21 Joel E. Denny <jdenny@clemson.edu>
YYFAIL: deprecate.
* NEWS (2.4.2): Document deprecation and the phase-out plan.
* data/lalr1.java (parser::YYStack::YYFAIL): Add comment about
deprecation.
* data/yacc.c (YYFAIL): Likewise, and suppress warnings about
YYFAIL from GCC cpp's -Wunused-macros.
* doc/bison.texinfo (Java Action Features): Remove YYFAIL
documentation.
2009-12-16 Joel E. Denny <jdenny@clemson.edu> 2009-12-16 Joel E. Denny <jdenny@clemson.edu>
Add gcc's -Wundef to test suite and fix another warning from it. Add gcc's -Wundef to test suite and fix another warning from it.

39
NEWS
View File

@@ -32,6 +32,45 @@ Bison News
Bison's Java feature as a whole including its current usage of %code Bison's Java feature as a whole including its current usage of %code
is still considered experimental. is still considered experimental.
** YYFAIL is deprecated and will eventually be removed.
YYFAIL has existed for many years as an undocumented feature of
deterministic parsers in C generated by Bison. Previously, it was
documented for Bison's experimental Java parsers. YYFAIL is no longer
documented for Java parsers and is formally deprecated in both cases.
Users are strongly encouraged to migrate to YYERROR, which is
specified by POSIX.
Like YYERROR, you can invoke YYFAIL from a semantic action in order to
induce a syntax error. The most obvious difference from YYERROR is
that YYFAIL will automatically invoke yyerror to report the syntax
error so that you don't have to. However, there are several other
subtle differences between YYERROR and YYFAIL, and YYFAIL suffers from
inherent flaws when %error-verbose or `#define YYERROR_VERBOSE' is
used. For a more detailed discussion, see:
http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html
The upcoming Bison 2.5 will remove YYFAIL from Java parsers, but
deterministic parsers in C will continue to implement it. However,
because YYFAIL is already flawed, it seems futile to try to make new
Bison features compatible with it. Thus, during parser generation,
Bison 2.5 will produce a warning whenever it discovers YYFAIL in a
rule action. In a later release, YYFAIL will be disabled for
%error-verbose and `#define YYERROR_VERBOSE'. Eventually, YYFAIL will
be removed altogether.
There exists at least one case where Bison 2.5's YYFAIL warning will
be a false positive. Some projects add phony uses of YYFAIL and other
Bison-defined macros for the sole purpose of suppressing C
preprocessor warnings (from GCC cpp's -Wunused-macros, for example).
To avoid Bison's future warning, such YYFAIL uses can be moved to the
epilogue (that is, after the second `%%') in the Bison input file. In
this release (2.4.2), Bison already generates its own code to suppress
C preprocessor warnings for YYFAIL, so projects can remove their own
phony uses of YYFAIL if compatibility with Bison releases prior to
2.4.2 is not necessary.
** Internationalization. ** Internationalization.
Fix a regression introduced in Bison 2.4: Under some circumstances, Fix a regression introduced in Bison 2.4: Under some circumstances,

View File

@@ -310,7 +310,8 @@ b4_lexer_if([[
/** /**
* Returned by a Bison action in order to print an error message and start * Returned by a Bison action in order to print an error message and start
* error recovery. */ * error recovery. Formally deprecated in Bison 2.4.2's NEWS entry, where
* a plan to phase it out is discussed. */
public static final int YYFAIL = 3; public static final int YYFAIL = 3;
private static final int YYNEWSTATE = 4; private static final int YYNEWSTATE = 4;

View File

@@ -610,9 +610,18 @@ static const ]b4_int_type_for([b4_stos])[ yystos[] =
/* Like YYERROR except do call yyerror. This remains here temporarily /* Like YYERROR except do call yyerror. This remains here temporarily
to ease the transition to the new meaning of YYERROR, for GCC. to ease the transition to the new meaning of YYERROR, for GCC.
Once GCC version 2 has supplanted version 1, this can go. */ Once GCC version 2 has supplanted version 1, this can go. However,
YYFAIL appears to be in use. Nevertheless, it is formally deprecated
in Bison 2.4.2's NEWS entry, where a plan to phase it out is
discussed. */
#define YYFAIL goto yyerrlab #define YYFAIL goto yyerrlab
#if defined YYFAIL
/* This is here to suppress warnings from the GCC cpp's
-Wunused-macros. Normally we don't worry about that warning, but
some users do, and we want to make it easy for users to remove
YYFAIL uses, which will produce warnings from Bison 2.5. */
#endif
#define YYRECOVERING() (!!yyerrstatus) #define YYRECOVERING() (!!yyerrstatus)

View File

@@ -9069,11 +9069,6 @@ Start error recovery without printing an error message.
@xref{Error Recovery}. @xref{Error Recovery}.
@end deffn @end deffn
@deffn {Statement} {return YYFAIL;}
Print an error message and start error recovery.
@xref{Error Recovery}.
@end deffn
@deftypefn {Function} {boolean} recovering () @deftypefn {Function} {boolean} recovering ()
Return whether error recovery is being done. In this state, the parser Return whether error recovery is being done. In this state, the parser
reads token until it reaches a known state, and then restarts normal reads token until it reaches a known state, and then restarts normal

View File

@@ -1,4 +1,4 @@
/* A Bison parser, made by GNU Bison 2.4.1.50-3249. */ /* A Bison parser, made by GNU Bison 2.4.1.58-3d04. */
/* Skeleton implementation for Bison's Yacc-like parsers in C /* Skeleton implementation for Bison's Yacc-like parsers in C
@@ -45,7 +45,7 @@
#define YYBISON 1 #define YYBISON 1
/* Bison version. */ /* Bison version. */
#define YYBISON_VERSION "2.4.1.50-3249" #define YYBISON_VERSION "2.4.1.58-3d04"
/* Skeleton name. */ /* Skeleton name. */
#define YYSKELETON_NAME "yacc.c" #define YYSKELETON_NAME "yacc.c"
@@ -388,7 +388,7 @@ typedef short int yytype_int16;
#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
#ifndef YY_ #ifndef YY_
# if YYENABLE_NLS # if defined YYENABLE_NLS && YYENABLE_NLS
# if ENABLE_NLS # if ENABLE_NLS
# include <libintl.h> /* INFRINGES ON USER NAME SPACE */ # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
# define YY_(msgid) dgettext ("bison-runtime", msgid) # define YY_(msgid) dgettext ("bison-runtime", msgid)
@@ -893,9 +893,18 @@ static const yytype_uint8 yystos[] =
/* Like YYERROR except do call yyerror. This remains here temporarily /* Like YYERROR except do call yyerror. This remains here temporarily
to ease the transition to the new meaning of YYERROR, for GCC. to ease the transition to the new meaning of YYERROR, for GCC.
Once GCC version 2 has supplanted version 1, this can go. */ Once GCC version 2 has supplanted version 1, this can go. However,
YYFAIL appears to be in use. Nevertheless, it is formally deprecated
in Bison 2.4.2's NEWS entry, where a plan to phase it out is
discussed. */
#define YYFAIL goto yyerrlab #define YYFAIL goto yyerrlab
#if defined YYFAIL
/* This is here to suppress warnings from the GCC cpp's
-Wunused-macros. Normally we don't worry about that warning, but
some users do, and we want to make it easy for users to remove
YYFAIL uses, which will produce warnings from Bison 2.5. */
#endif
#define YYRECOVERING() (!!yyerrstatus) #define YYRECOVERING() (!!yyerrstatus)
@@ -952,7 +961,7 @@ while (YYID (0))
we won't break user code: when these are the locations we know. */ we won't break user code: when these are the locations we know. */
#ifndef YY_LOCATION_PRINT #ifndef YY_LOCATION_PRINT
# if YYLTYPE_IS_TRIVIAL # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
# define YY_LOCATION_PRINT(File, Loc) \ # define YY_LOCATION_PRINT(File, Loc) \
fprintf (File, "%d.%d-%d.%d", \ fprintf (File, "%d.%d-%d.%d", \
(Loc).first_line, (Loc).first_column, \ (Loc).first_line, (Loc).first_column, \
@@ -1028,147 +1037,147 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp)
{ {
case 3: /* "\"string\"" */ case 3: /* "\"string\"" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 180 "parse-gram.y" #line 180 "parse-gram.y"
{ fputs (quotearg_style (c_quoting_style, (yyvaluep->chars)), stderr); }; { fputs (quotearg_style (c_quoting_style, (yyvaluep->chars)), stderr); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1037 "parse-gram.c" #line 1046 "parse-gram.c"
break; break;
case 4: /* "\"integer\"" */ case 4: /* "\"integer\"" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 191 "parse-gram.y" #line 191 "parse-gram.y"
{ fprintf (stderr, "%d", (yyvaluep->integer)); }; { fprintf (stderr, "%d", (yyvaluep->integer)); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1046 "parse-gram.c" #line 1055 "parse-gram.c"
break; break;
case 43: /* "\"{...}\"" */ case 43: /* "\"{...}\"" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 182 "parse-gram.y" #line 182 "parse-gram.y"
{ fprintf (stderr, "{\n%s\n}", (yyvaluep->code)); }; { fprintf (stderr, "{\n%s\n}", (yyvaluep->code)); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1055 "parse-gram.c" #line 1064 "parse-gram.c"
break; break;
case 44: /* "\"char\"" */ case 44: /* "\"char\"" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 174 "parse-gram.y" #line 174 "parse-gram.y"
{ fputs (char_name ((yyvaluep->character)), stderr); }; { fputs (char_name ((yyvaluep->character)), stderr); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1064 "parse-gram.c" #line 1073 "parse-gram.c"
break; break;
case 45: /* "\"epilogue\"" */ case 45: /* "\"epilogue\"" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 182 "parse-gram.y" #line 182 "parse-gram.y"
{ fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); }; { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1073 "parse-gram.c" #line 1082 "parse-gram.c"
break; break;
case 47: /* "\"identifier\"" */ case 47: /* "\"identifier\"" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 187 "parse-gram.y" #line 187 "parse-gram.y"
{ fputs ((yyvaluep->uniqstr), stderr); }; { fputs ((yyvaluep->uniqstr), stderr); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1082 "parse-gram.c" #line 1091 "parse-gram.c"
break; break;
case 48: /* "\"identifier:\"" */ case 48: /* "\"identifier:\"" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 188 "parse-gram.y" #line 188 "parse-gram.y"
{ fprintf (stderr, "%s:", (yyvaluep->uniqstr)); }; { fprintf (stderr, "%s:", (yyvaluep->uniqstr)); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1091 "parse-gram.c" #line 1100 "parse-gram.c"
break; break;
case 51: /* "\"%{...%}\"" */ case 51: /* "\"%{...%}\"" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 182 "parse-gram.y" #line 182 "parse-gram.y"
{ fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); }; { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1100 "parse-gram.c" #line 1109 "parse-gram.c"
break; break;
case 53: /* "\"type\"" */ case 53: /* "\"type\"" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 186 "parse-gram.y" #line 186 "parse-gram.y"
{ fprintf (stderr, "<%s>", (yyvaluep->uniqstr)); }; { fprintf (stderr, "<%s>", (yyvaluep->uniqstr)); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1109 "parse-gram.c" #line 1118 "parse-gram.c"
break; break;
case 82: /* "variable" */ case 82: /* "variable" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 187 "parse-gram.y" #line 187 "parse-gram.y"
{ fputs ((yyvaluep->uniqstr), stderr); }; { fputs ((yyvaluep->uniqstr), stderr); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1118 "parse-gram.c" #line 1127 "parse-gram.c"
break; break;
case 83: /* "content.opt" */ case 83: /* "content.opt" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 182 "parse-gram.y" #line 182 "parse-gram.y"
{ fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); }; { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1127 "parse-gram.c" #line 1136 "parse-gram.c"
break; break;
case 84: /* "braceless" */ case 84: /* "braceless" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 182 "parse-gram.y" #line 182 "parse-gram.y"
{ fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); }; { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1136 "parse-gram.c" #line 1145 "parse-gram.c"
break; break;
case 85: /* "id" */ case 85: /* "id" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 194 "parse-gram.y" #line 194 "parse-gram.y"
{ fprintf (stderr, "%s", (yyvaluep->symbol)->tag); }; { fprintf (stderr, "%s", (yyvaluep->symbol)->tag); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1145 "parse-gram.c" #line 1154 "parse-gram.c"
break; break;
case 86: /* "id_colon" */ case 86: /* "id_colon" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 195 "parse-gram.y" #line 195 "parse-gram.y"
{ fprintf (stderr, "%s:", (yyvaluep->symbol)->tag); }; { fprintf (stderr, "%s:", (yyvaluep->symbol)->tag); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1154 "parse-gram.c" #line 1163 "parse-gram.c"
break; break;
case 87: /* "symbol" */ case 87: /* "symbol" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 194 "parse-gram.y" #line 194 "parse-gram.y"
{ fprintf (stderr, "%s", (yyvaluep->symbol)->tag); }; { fprintf (stderr, "%s", (yyvaluep->symbol)->tag); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1163 "parse-gram.c" #line 1172 "parse-gram.c"
break; break;
case 88: /* "string_as_id" */ case 88: /* "string_as_id" */
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 194 "parse-gram.y" #line 194 "parse-gram.y"
{ fprintf (stderr, "%s", (yyvaluep->symbol)->tag); }; { fprintf (stderr, "%s", (yyvaluep->symbol)->tag); };
/* Line 716 of yacc.c */ /* Line 725 of yacc.c */
#line 1172 "parse-gram.c" #line 1181 "parse-gram.c"
break; break;
default: default:
break; break;
@@ -1679,7 +1688,7 @@ YYLTYPE yylloc;
yyvsp = yyvs; yyvsp = yyvs;
yylsp = yyls; yylsp = yyls;
#if YYLTYPE_IS_TRIVIAL #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
/* Initialize the default location before parsing starts. */ /* Initialize the default location before parsing starts. */
yylloc.first_line = yylloc.last_line = 1; yylloc.first_line = yylloc.last_line = 1;
yylloc.first_column = yylloc.last_column = 1; yylloc.first_column = yylloc.last_column = 1;
@@ -1687,7 +1696,7 @@ YYLTYPE yylloc;
/* User initialization code. */ /* User initialization code. */
/* Line 1243 of yacc.c */ /* Line 1252 of yacc.c */
#line 84 "parse-gram.y" #line 84 "parse-gram.y"
{ {
/* Bison's grammar can initial empty locations, hence a default /* Bison's grammar can initial empty locations, hence a default
@@ -1696,8 +1705,8 @@ YYLTYPE yylloc;
boundary_set (&yylloc.end, current_file, 1, 1); boundary_set (&yylloc.end, current_file, 1, 1);
} }
/* Line 1243 of yacc.c */ /* Line 1252 of yacc.c */
#line 1701 "parse-gram.c" #line 1710 "parse-gram.c"
yylsp[0] = yylloc; yylsp[0] = yylloc;
goto yysetstate; goto yysetstate;
@@ -1884,7 +1893,7 @@ yyreduce:
{ {
case 6: case 6:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 218 "parse-gram.y" #line 218 "parse-gram.y"
{ {
code_props plain_code; code_props plain_code;
@@ -1899,14 +1908,14 @@ yyreduce:
case 7: case 7:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 227 "parse-gram.y" #line 227 "parse-gram.y"
{ debug_flag = true; } { debug_flag = true; }
break; break;
case 8: case 8:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 229 "parse-gram.y" #line 229 "parse-gram.y"
{ {
muscle_percent_define_insert ((yyvsp[(2) - (3)].uniqstr), (yylsp[(2) - (3)]), (yyvsp[(3) - (3)].chars)); muscle_percent_define_insert ((yyvsp[(2) - (3)].uniqstr), (yylsp[(2) - (3)]), (yyvsp[(3) - (3)].chars));
@@ -1915,14 +1924,14 @@ yyreduce:
case 9: case 9:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 232 "parse-gram.y" #line 232 "parse-gram.y"
{ defines_flag = true; } { defines_flag = true; }
break; break;
case 10: case 10:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 234 "parse-gram.y" #line 234 "parse-gram.y"
{ {
defines_flag = true; defines_flag = true;
@@ -1932,42 +1941,42 @@ yyreduce:
case 11: case 11:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 238 "parse-gram.y" #line 238 "parse-gram.y"
{ error_verbose = true; } { error_verbose = true; }
break; break;
case 12: case 12:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 239 "parse-gram.y" #line 239 "parse-gram.y"
{ expected_sr_conflicts = (yyvsp[(2) - (2)].integer); } { expected_sr_conflicts = (yyvsp[(2) - (2)].integer); }
break; break;
case 13: case 13:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 240 "parse-gram.y" #line 240 "parse-gram.y"
{ expected_rr_conflicts = (yyvsp[(2) - (2)].integer); } { expected_rr_conflicts = (yyvsp[(2) - (2)].integer); }
break; break;
case 14: case 14:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 241 "parse-gram.y" #line 241 "parse-gram.y"
{ spec_file_prefix = (yyvsp[(2) - (2)].chars); } { spec_file_prefix = (yyvsp[(2) - (2)].chars); }
break; break;
case 15: case 15:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 242 "parse-gram.y" #line 242 "parse-gram.y"
{ spec_file_prefix = (yyvsp[(3) - (3)].chars); } { spec_file_prefix = (yyvsp[(3) - (3)].chars); }
break; break;
case 16: case 16:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 244 "parse-gram.y" #line 244 "parse-gram.y"
{ {
nondeterministic_parser = true; nondeterministic_parser = true;
@@ -1977,7 +1986,7 @@ yyreduce:
case 17: case 17:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 249 "parse-gram.y" #line 249 "parse-gram.y"
{ {
code_props action; code_props action;
@@ -1991,77 +2000,77 @@ yyreduce:
case 18: case 18:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 257 "parse-gram.y" #line 257 "parse-gram.y"
{ language_argmatch ((yyvsp[(2) - (2)].chars), grammar_prio, &(yylsp[(1) - (2)])); } { language_argmatch ((yyvsp[(2) - (2)].chars), grammar_prio, &(yylsp[(1) - (2)])); }
break; break;
case 19: case 19:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 258 "parse-gram.y" #line 258 "parse-gram.y"
{ add_param ("lex_param", (yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); } { add_param ("lex_param", (yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); }
break; break;
case 20: case 20:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 259 "parse-gram.y" #line 259 "parse-gram.y"
{ locations_flag = true; } { locations_flag = true; }
break; break;
case 21: case 21:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 260 "parse-gram.y" #line 260 "parse-gram.y"
{ spec_name_prefix = (yyvsp[(2) - (2)].chars); } { spec_name_prefix = (yyvsp[(2) - (2)].chars); }
break; break;
case 22: case 22:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 261 "parse-gram.y" #line 261 "parse-gram.y"
{ spec_name_prefix = (yyvsp[(3) - (3)].chars); } { spec_name_prefix = (yyvsp[(3) - (3)].chars); }
break; break;
case 23: case 23:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 262 "parse-gram.y" #line 262 "parse-gram.y"
{ no_lines_flag = true; } { no_lines_flag = true; }
break; break;
case 24: case 24:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 263 "parse-gram.y" #line 263 "parse-gram.y"
{ nondeterministic_parser = true; } { nondeterministic_parser = true; }
break; break;
case 25: case 25:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 264 "parse-gram.y" #line 264 "parse-gram.y"
{ spec_outfile = (yyvsp[(2) - (2)].chars); } { spec_outfile = (yyvsp[(2) - (2)].chars); }
break; break;
case 26: case 26:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 265 "parse-gram.y" #line 265 "parse-gram.y"
{ spec_outfile = (yyvsp[(3) - (3)].chars); } { spec_outfile = (yyvsp[(3) - (3)].chars); }
break; break;
case 27: case 27:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 266 "parse-gram.y" #line 266 "parse-gram.y"
{ add_param ("parse_param", (yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); } { add_param ("parse_param", (yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); }
break; break;
case 28: case 28:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 268 "parse-gram.y" #line 268 "parse-gram.y"
{ {
/* %pure-parser is deprecated in favor of `%define api.pure', so use /* %pure-parser is deprecated in favor of `%define api.pure', so use
@@ -2079,14 +2088,14 @@ yyreduce:
case 29: case 29:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 280 "parse-gram.y" #line 280 "parse-gram.y"
{ version_check (&(yylsp[(2) - (2)]), (yyvsp[(2) - (2)].chars)); } { version_check (&(yylsp[(2) - (2)]), (yyvsp[(2) - (2)].chars)); }
break; break;
case 30: case 30:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 282 "parse-gram.y" #line 282 "parse-gram.y"
{ {
char const *skeleton_user = (yyvsp[(2) - (2)].chars); char const *skeleton_user = (yyvsp[(2) - (2)].chars);
@@ -2115,28 +2124,28 @@ yyreduce:
case 31: case 31:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 305 "parse-gram.y" #line 305 "parse-gram.y"
{ token_table_flag = true; } { token_table_flag = true; }
break; break;
case 32: case 32:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 306 "parse-gram.y" #line 306 "parse-gram.y"
{ report_flag |= report_states; } { report_flag |= report_states; }
break; break;
case 33: case 33:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 307 "parse-gram.y" #line 307 "parse-gram.y"
{ yacc_flag = true; } { yacc_flag = true; }
break; break;
case 37: case 37:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 315 "parse-gram.y" #line 315 "parse-gram.y"
{ {
grammar_start_symbol_set ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)])); grammar_start_symbol_set ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)]));
@@ -2145,7 +2154,7 @@ yyreduce:
case 38: case 38:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 319 "parse-gram.y" #line 319 "parse-gram.y"
{ {
symbol_list *list; symbol_list *list;
@@ -2157,7 +2166,7 @@ yyreduce:
case 39: case 39:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 326 "parse-gram.y" #line 326 "parse-gram.y"
{ {
symbol_list *list; symbol_list *list;
@@ -2169,7 +2178,7 @@ yyreduce:
case 40: case 40:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 333 "parse-gram.y" #line 333 "parse-gram.y"
{ {
default_prec = true; default_prec = true;
@@ -2178,7 +2187,7 @@ yyreduce:
case 41: case 41:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 337 "parse-gram.y" #line 337 "parse-gram.y"
{ {
default_prec = false; default_prec = false;
@@ -2187,7 +2196,7 @@ yyreduce:
case 42: case 42:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 341 "parse-gram.y" #line 341 "parse-gram.y"
{ {
/* Do not invoke muscle_percent_code_grow here since it invokes /* Do not invoke muscle_percent_code_grow here since it invokes
@@ -2199,7 +2208,7 @@ yyreduce:
case 43: case 43:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 348 "parse-gram.y" #line 348 "parse-gram.y"
{ {
muscle_percent_code_grow ((yyvsp[(2) - (3)].uniqstr), (yylsp[(2) - (3)]), (yyvsp[(3) - (3)].chars), (yylsp[(3) - (3)])); muscle_percent_code_grow ((yyvsp[(2) - (3)].uniqstr), (yylsp[(2) - (3)]), (yyvsp[(3) - (3)].chars), (yylsp[(3) - (3)]));
@@ -2209,21 +2218,21 @@ yyreduce:
case 44: case 44:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 362 "parse-gram.y" #line 362 "parse-gram.y"
{} {}
break; break;
case 45: case 45:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 363 "parse-gram.y" #line 363 "parse-gram.y"
{ muscle_code_grow ("union_name", (yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); } { muscle_code_grow ("union_name", (yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
break; break;
case 46: case 46:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 368 "parse-gram.y" #line 368 "parse-gram.y"
{ {
union_seen = true; union_seen = true;
@@ -2234,14 +2243,14 @@ yyreduce:
case 47: case 47:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 379 "parse-gram.y" #line 379 "parse-gram.y"
{ current_class = nterm_sym; } { current_class = nterm_sym; }
break; break;
case 48: case 48:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 380 "parse-gram.y" #line 380 "parse-gram.y"
{ {
current_class = unknown_sym; current_class = unknown_sym;
@@ -2251,14 +2260,14 @@ yyreduce:
case 49: case 49:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 384 "parse-gram.y" #line 384 "parse-gram.y"
{ current_class = token_sym; } { current_class = token_sym; }
break; break;
case 50: case 50:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 385 "parse-gram.y" #line 385 "parse-gram.y"
{ {
current_class = unknown_sym; current_class = unknown_sym;
@@ -2268,7 +2277,7 @@ yyreduce:
case 51: case 51:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 390 "parse-gram.y" #line 390 "parse-gram.y"
{ {
symbol_list *list; symbol_list *list;
@@ -2281,7 +2290,7 @@ yyreduce:
case 52: case 52:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 401 "parse-gram.y" #line 401 "parse-gram.y"
{ {
symbol_list *list; symbol_list *list;
@@ -2298,126 +2307,126 @@ yyreduce:
case 53: case 53:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 415 "parse-gram.y" #line 415 "parse-gram.y"
{ (yyval.assoc) = left_assoc; } { (yyval.assoc) = left_assoc; }
break; break;
case 54: case 54:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 416 "parse-gram.y" #line 416 "parse-gram.y"
{ (yyval.assoc) = right_assoc; } { (yyval.assoc) = right_assoc; }
break; break;
case 55: case 55:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 417 "parse-gram.y" #line 417 "parse-gram.y"
{ (yyval.assoc) = non_assoc; } { (yyval.assoc) = non_assoc; }
break; break;
case 56: case 56:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 421 "parse-gram.y" #line 421 "parse-gram.y"
{ current_type = NULL; } { current_type = NULL; }
break; break;
case 57: case 57:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 422 "parse-gram.y" #line 422 "parse-gram.y"
{ current_type = (yyvsp[(1) - (1)].uniqstr); tag_seen = true; } { current_type = (yyvsp[(1) - (1)].uniqstr); tag_seen = true; }
break; break;
case 58: case 58:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 428 "parse-gram.y" #line 428 "parse-gram.y"
{ (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); } { (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); }
break; break;
case 59: case 59:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 430 "parse-gram.y" #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)]))); } { (yyval.list) = symbol_list_prepend ((yyvsp[(1) - (2)].list), symbol_list_sym_new ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)]))); }
break; break;
case 60: case 60:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 434 "parse-gram.y" #line 434 "parse-gram.y"
{ (yyval.symbol) = (yyvsp[(1) - (1)].symbol); } { (yyval.symbol) = (yyvsp[(1) - (1)].symbol); }
break; break;
case 61: case 61:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 435 "parse-gram.y" #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)])); } { (yyval.symbol) = (yyvsp[(1) - (2)].symbol); symbol_user_token_number_set ((yyvsp[(1) - (2)].symbol), (yyvsp[(2) - (2)].integer), (yylsp[(2) - (2)])); }
break; break;
case 62: case 62:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 441 "parse-gram.y" #line 441 "parse-gram.y"
{ (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); } { (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); }
break; break;
case 63: case 63:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 443 "parse-gram.y" #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)]))); } { (yyval.list) = symbol_list_prepend ((yyvsp[(1) - (2)].list), symbol_list_sym_new ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)]))); }
break; break;
case 64: case 64:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 447 "parse-gram.y" #line 447 "parse-gram.y"
{ (yyval.list) = (yyvsp[(1) - (1)].list); } { (yyval.list) = (yyvsp[(1) - (1)].list); }
break; break;
case 65: case 65:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 448 "parse-gram.y" #line 448 "parse-gram.y"
{ (yyval.list) = symbol_list_prepend ((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].list)); } { (yyval.list) = symbol_list_prepend ((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].list)); }
break; break;
case 66: case 66:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 452 "parse-gram.y" #line 452 "parse-gram.y"
{ (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); } { (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); }
break; break;
case 67: case 67:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 453 "parse-gram.y" #line 453 "parse-gram.y"
{ (yyval.list) = symbol_list_type_new ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); } { (yyval.list) = symbol_list_type_new ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
break; break;
case 68: case 68:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 454 "parse-gram.y" #line 454 "parse-gram.y"
{ (yyval.list) = symbol_list_default_tagged_new ((yylsp[(1) - (1)])); } { (yyval.list) = symbol_list_default_tagged_new ((yylsp[(1) - (1)])); }
break; break;
case 69: case 69:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 455 "parse-gram.y" #line 455 "parse-gram.y"
{ (yyval.list) = symbol_list_default_tagless_new ((yylsp[(1) - (1)])); } { (yyval.list) = symbol_list_default_tagless_new ((yylsp[(1) - (1)])); }
break; break;
case 70: case 70:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 461 "parse-gram.y" #line 461 "parse-gram.y"
{ {
current_type = (yyvsp[(1) - (1)].uniqstr); current_type = (yyvsp[(1) - (1)].uniqstr);
@@ -2427,7 +2436,7 @@ yyreduce:
case 71: case 71:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 466 "parse-gram.y" #line 466 "parse-gram.y"
{ {
symbol_class_set ((yyvsp[(1) - (1)].symbol), current_class, (yylsp[(1) - (1)]), true); symbol_class_set ((yyvsp[(1) - (1)].symbol), current_class, (yylsp[(1) - (1)]), true);
@@ -2437,7 +2446,7 @@ yyreduce:
case 72: case 72:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 471 "parse-gram.y" #line 471 "parse-gram.y"
{ {
symbol_class_set ((yyvsp[(1) - (2)].symbol), current_class, (yylsp[(1) - (2)]), true); symbol_class_set ((yyvsp[(1) - (2)].symbol), current_class, (yylsp[(1) - (2)]), true);
@@ -2448,7 +2457,7 @@ yyreduce:
case 73: case 73:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 477 "parse-gram.y" #line 477 "parse-gram.y"
{ {
symbol_class_set ((yyvsp[(1) - (2)].symbol), current_class, (yylsp[(1) - (2)]), true); symbol_class_set ((yyvsp[(1) - (2)].symbol), current_class, (yylsp[(1) - (2)]), true);
@@ -2459,7 +2468,7 @@ yyreduce:
case 74: case 74:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 483 "parse-gram.y" #line 483 "parse-gram.y"
{ {
symbol_class_set ((yyvsp[(1) - (3)].symbol), current_class, (yylsp[(1) - (3)]), true); symbol_class_set ((yyvsp[(1) - (3)].symbol), current_class, (yylsp[(1) - (3)]), true);
@@ -2471,7 +2480,7 @@ yyreduce:
case 81: case 81:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 513 "parse-gram.y" #line 513 "parse-gram.y"
{ {
yyerrok; yyerrok;
@@ -2480,77 +2489,77 @@ yyreduce:
case 82: case 82:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 519 "parse-gram.y" #line 519 "parse-gram.y"
{ current_lhs = (yyvsp[(1) - (1)].symbol); current_lhs_location = (yylsp[(1) - (1)]); } { current_lhs = (yyvsp[(1) - (1)].symbol); current_lhs_location = (yylsp[(1) - (1)]); }
break; break;
case 84: case 84:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 523 "parse-gram.y" #line 523 "parse-gram.y"
{ grammar_current_rule_end ((yylsp[(1) - (1)])); } { grammar_current_rule_end ((yylsp[(1) - (1)])); }
break; break;
case 85: case 85:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 524 "parse-gram.y" #line 524 "parse-gram.y"
{ grammar_current_rule_end ((yylsp[(3) - (3)])); } { grammar_current_rule_end ((yylsp[(3) - (3)])); }
break; break;
case 87: case 87:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 530 "parse-gram.y" #line 530 "parse-gram.y"
{ grammar_current_rule_begin (current_lhs, current_lhs_location); } { grammar_current_rule_begin (current_lhs, current_lhs_location); }
break; break;
case 88: case 88:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 532 "parse-gram.y" #line 532 "parse-gram.y"
{ grammar_current_rule_symbol_append ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)])); } { grammar_current_rule_symbol_append ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)])); }
break; break;
case 89: case 89:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 534 "parse-gram.y" #line 534 "parse-gram.y"
{ grammar_current_rule_action_append ((yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); } { grammar_current_rule_action_append ((yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); }
break; break;
case 90: case 90:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 536 "parse-gram.y" #line 536 "parse-gram.y"
{ grammar_current_rule_prec_set ((yyvsp[(3) - (3)].symbol), (yylsp[(3) - (3)])); } { grammar_current_rule_prec_set ((yyvsp[(3) - (3)].symbol), (yylsp[(3) - (3)])); }
break; break;
case 91: case 91:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 538 "parse-gram.y" #line 538 "parse-gram.y"
{ grammar_current_rule_dprec_set ((yyvsp[(3) - (3)].integer), (yylsp[(3) - (3)])); } { grammar_current_rule_dprec_set ((yyvsp[(3) - (3)].integer), (yylsp[(3) - (3)])); }
break; break;
case 92: case 92:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 540 "parse-gram.y" #line 540 "parse-gram.y"
{ grammar_current_rule_merge_set ((yyvsp[(3) - (3)].uniqstr), (yylsp[(3) - (3)])); } { grammar_current_rule_merge_set ((yyvsp[(3) - (3)].uniqstr), (yylsp[(3) - (3)])); }
break; break;
case 94: case 94:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 550 "parse-gram.y" #line 550 "parse-gram.y"
{ (yyval.uniqstr) = uniqstr_new ((yyvsp[(1) - (1)].chars)); } { (yyval.uniqstr) = uniqstr_new ((yyvsp[(1) - (1)].chars)); }
break; break;
case 95: case 95:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 556 "parse-gram.y" #line 556 "parse-gram.y"
{ {
(yyval.chars) = ""; (yyval.chars) = "";
@@ -2559,7 +2568,7 @@ yyreduce:
case 97: case 97:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 569 "parse-gram.y" #line 569 "parse-gram.y"
{ {
code_props plain_code; code_props plain_code;
@@ -2573,14 +2582,14 @@ yyreduce:
case 98: case 98:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 589 "parse-gram.y" #line 589 "parse-gram.y"
{ (yyval.symbol) = symbol_from_uniqstr ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); } { (yyval.symbol) = symbol_from_uniqstr ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
break; break;
case 99: case 99:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 591 "parse-gram.y" #line 591 "parse-gram.y"
{ {
(yyval.symbol) = symbol_get (char_name ((yyvsp[(1) - (1)].character)), (yylsp[(1) - (1)])); (yyval.symbol) = symbol_get (char_name ((yyvsp[(1) - (1)].character)), (yylsp[(1) - (1)]));
@@ -2591,14 +2600,14 @@ yyreduce:
case 100: case 100:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 599 "parse-gram.y" #line 599 "parse-gram.y"
{ (yyval.symbol) = symbol_from_uniqstr ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); } { (yyval.symbol) = symbol_from_uniqstr ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
break; break;
case 103: case 103:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 611 "parse-gram.y" #line 611 "parse-gram.y"
{ {
(yyval.symbol) = symbol_get (quotearg_style (c_quoting_style, (yyvsp[(1) - (1)].chars)), (yylsp[(1) - (1)])); (yyval.symbol) = symbol_get (quotearg_style (c_quoting_style, (yyvsp[(1) - (1)].chars)), (yylsp[(1) - (1)]));
@@ -2608,7 +2617,7 @@ yyreduce:
case 105: case 105:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 620 "parse-gram.y" #line 620 "parse-gram.y"
{ {
code_props plain_code; code_props plain_code;
@@ -2622,8 +2631,8 @@ yyreduce:
/* Line 1456 of yacc.c */ /* Line 1465 of yacc.c */
#line 2627 "parse-gram.c" #line 2636 "parse-gram.c"
default: break; default: break;
} }
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
@@ -2841,7 +2850,7 @@ yyreturn:
/* Line 1676 of yacc.c */ /* Line 1685 of yacc.c */
#line 630 "parse-gram.y" #line 630 "parse-gram.y"

View File

@@ -1,4 +1,4 @@
/* A Bison parser, made by GNU Bison 2.4.1.50-3249. */ /* A Bison parser, made by GNU Bison 2.4.1.58-3d04. */
/* Skeleton interface for Bison's Yacc-like parsers in C /* Skeleton interface for Bison's Yacc-like parsers in C
@@ -159,7 +159,7 @@
typedef union YYSTYPE typedef union YYSTYPE
{ {
/* Line 1677 of yacc.c */ /* Line 1686 of yacc.c */
#line 92 "parse-gram.y" #line 92 "parse-gram.y"
symbol *symbol; symbol *symbol;
@@ -173,7 +173,7 @@ typedef union YYSTYPE
/* Line 1677 of yacc.c */ /* Line 1686 of yacc.c */
#line 178 "parse-gram.h" #line 178 "parse-gram.h"
} YYSTYPE; } YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1 # define YYSTYPE_IS_TRIVIAL 1