* src/getargs.c (skeleton_prio): Use default_prio rather than 2, and
remove static qualifier because others will soon need to see it.
(language_prio): Likewise.
(getargs): Use command_line_prio rather than 0.
* src/getargs.h (command_line_prio, grammar_prio, default_prio): New
enum fields.
(skeleton_prio): Extern it.
(language_prio): Extern it.
* src/parse-gram.y: Use grammar_prio rather than 1.
+2008-11-07 Joel E. Denny <jdenny@ces.clemson.edu>
+
+ Clean up %skeleton and %language priority implementation.
+ * src/getargs.c (skeleton_prio): Use default_prio rather than 2, and
+ remove static qualifier because others will soon need to see it.
+ (language_prio): Likewise.
+ (getargs): Use command_line_prio rather than 0.
+ * src/getargs.h (command_line_prio, grammar_prio, default_prio): New
+ enum fields.
+ (skeleton_prio): Extern it.
+ (language_prio): Extern it.
+ * src/parse-gram.y: Use grammar_prio rather than 1.
+
2008-11-07 Akim Demaille <demaille@gostai.com>
Moving push traces into yypush_.
2008-11-07 Akim Demaille <demaille@gostai.com>
Moving push traces into yypush_.
{ "", "", "", "", false }
};
{ "", "", "", "", false }
};
-static int skeleton_prio = 2;
+int skeleton_prio = default_prio;
const char *skeleton = NULL;
const char *skeleton = NULL;
-static int language_prio = 2;
+int language_prio = default_prio;
struct bison_language const *language = &valid_languages[0];
const char *include = NULL;
struct bison_language const *language = &valid_languages[0];
const char *include = NULL;
- language_argmatch (optarg, 0, command_line_location ());
+ language_argmatch (optarg, command_line_prio,
+ command_line_location ());
- skeleton_arg (AS_FILE_NAME (optarg), 0, command_line_location ());
+ skeleton_arg (AS_FILE_NAME (optarg), command_line_prio,
+ command_line_location ());
#include "location.h"
extern char *program_name;
#include "location.h"
extern char *program_name;
+enum { command_line_prio, grammar_prio, default_prio };
/* flags set by % directives */
/* for -S */
extern char const *skeleton;
/* flags set by % directives */
/* for -S */
extern char const *skeleton;
+extern int skeleton_prio;
/* for -I */
extern char const *include;
/* for -I */
extern char const *include;
+extern int language_prio;
extern struct bison_language const *language;
/*-----------.
extern struct bison_language const *language;
/*-----------.
-/* A Bison parser, made by GNU Bison 2.3b.153-3d8d7. */
+/* A Bison parser, made by GNU Bison 2.4.58-9380c. */
/* Implementation for Bison's Yacc-like parsers in C
/* Implementation for Bison's Yacc-like parsers in C
#define YYBISON 1
/* Bison version. */
#define YYBISON 1
/* Bison version. */
-#define YYBISON_VERSION "2.3b.153-3d8d7"
+#define YYBISON_VERSION "2.4.58-9380c"
/* Skeleton name. */
#define YYSKELETON_NAME "yacc.c"
/* Skeleton name. */
#define YYSKELETON_NAME "yacc.c"
-#line 154 "../../../src/parse-gram.c"
+#line 154 "parse-gram.c"
/* Enabling traces. */
#ifndef YYDEBUG
/* Enabling traces. */
#ifndef YYDEBUG
-/* Line 216 of yacc.c */
+/* Line 224 of yacc.c */
#line 92 "parse-gram.y"
symbol *symbol;
#line 92 "parse-gram.y"
symbol *symbol;
-/* Line 216 of yacc.c */
-#line 317 "../../../src/parse-gram.c"
+/* Line 224 of yacc.c */
+#line 317 "parse-gram.c"
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-#line 342 "../../../src/parse-gram.c"
+#line 342 "parse-gram.c"
#ifdef short
# undef short
#ifdef short
# undef short
{ fputs (quotearg_style (c_quoting_style, ((*yyvaluep).chars)), stderr); };
/* Line 717 of yacc.c */
{ fputs (quotearg_style (c_quoting_style, ((*yyvaluep).chars)), stderr); };
/* Line 717 of yacc.c */
-#line 1037 "../../../src/parse-gram.c"
+#line 1037 "parse-gram.c"
break;
case 4: /* "\"integer\"" */
break;
case 4: /* "\"integer\"" */
{ fprintf (stderr, "%d", ((*yyvaluep).integer)); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "%d", ((*yyvaluep).integer)); };
/* Line 717 of yacc.c */
-#line 1046 "../../../src/parse-gram.c"
+#line 1046 "parse-gram.c"
break;
case 43: /* "\"{...}\"" */
break;
case 43: /* "\"{...}\"" */
{ fprintf (stderr, "{\n%s\n}", ((*yyvaluep).code)); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "{\n%s\n}", ((*yyvaluep).code)); };
/* Line 717 of yacc.c */
-#line 1055 "../../../src/parse-gram.c"
+#line 1055 "parse-gram.c"
break;
case 44: /* "\"char\"" */
break;
case 44: /* "\"char\"" */
{ fputs (char_name (((*yyvaluep).character)), stderr); };
/* Line 717 of yacc.c */
{ fputs (char_name (((*yyvaluep).character)), stderr); };
/* Line 717 of yacc.c */
-#line 1064 "../../../src/parse-gram.c"
+#line 1064 "parse-gram.c"
break;
case 45: /* "\"epilogue\"" */
break;
case 45: /* "\"epilogue\"" */
{ fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); };
/* Line 717 of yacc.c */
-#line 1073 "../../../src/parse-gram.c"
+#line 1073 "parse-gram.c"
break;
case 47: /* "\"identifier\"" */
break;
case 47: /* "\"identifier\"" */
{ fputs (((*yyvaluep).uniqstr), stderr); };
/* Line 717 of yacc.c */
{ fputs (((*yyvaluep).uniqstr), stderr); };
/* Line 717 of yacc.c */
-#line 1082 "../../../src/parse-gram.c"
+#line 1082 "parse-gram.c"
break;
case 48: /* "\"identifier:\"" */
break;
case 48: /* "\"identifier:\"" */
{ fprintf (stderr, "%s:", ((*yyvaluep).uniqstr)); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "%s:", ((*yyvaluep).uniqstr)); };
/* Line 717 of yacc.c */
-#line 1091 "../../../src/parse-gram.c"
+#line 1091 "parse-gram.c"
break;
case 51: /* "\"%{...%}\"" */
break;
case 51: /* "\"%{...%}\"" */
{ fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); };
/* Line 717 of yacc.c */
-#line 1100 "../../../src/parse-gram.c"
+#line 1100 "parse-gram.c"
break;
case 53: /* "\"type\"" */
break;
case 53: /* "\"type\"" */
{ fprintf (stderr, "<%s>", ((*yyvaluep).uniqstr)); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "<%s>", ((*yyvaluep).uniqstr)); };
/* Line 717 of yacc.c */
-#line 1109 "../../../src/parse-gram.c"
+#line 1109 "parse-gram.c"
break;
case 82: /* "variable" */
break;
case 82: /* "variable" */
{ fputs (((*yyvaluep).uniqstr), stderr); };
/* Line 717 of yacc.c */
{ fputs (((*yyvaluep).uniqstr), stderr); };
/* Line 717 of yacc.c */
-#line 1118 "../../../src/parse-gram.c"
+#line 1118 "parse-gram.c"
break;
case 83: /* "content.opt" */
break;
case 83: /* "content.opt" */
{ fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); };
/* Line 717 of yacc.c */
-#line 1127 "../../../src/parse-gram.c"
+#line 1127 "parse-gram.c"
break;
case 84: /* "braceless" */
break;
case 84: /* "braceless" */
{ fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "{\n%s\n}", ((*yyvaluep).chars)); };
/* Line 717 of yacc.c */
-#line 1136 "../../../src/parse-gram.c"
+#line 1136 "parse-gram.c"
break;
case 85: /* "id" */
break;
case 85: /* "id" */
{ fprintf (stderr, "%s", ((*yyvaluep).symbol)->tag); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "%s", ((*yyvaluep).symbol)->tag); };
/* Line 717 of yacc.c */
-#line 1145 "../../../src/parse-gram.c"
+#line 1145 "parse-gram.c"
break;
case 86: /* "id_colon" */
break;
case 86: /* "id_colon" */
{ fprintf (stderr, "%s:", ((*yyvaluep).symbol)->tag); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "%s:", ((*yyvaluep).symbol)->tag); };
/* Line 717 of yacc.c */
-#line 1154 "../../../src/parse-gram.c"
+#line 1154 "parse-gram.c"
break;
case 87: /* "symbol" */
break;
case 87: /* "symbol" */
{ fprintf (stderr, "%s", ((*yyvaluep).symbol)->tag); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "%s", ((*yyvaluep).symbol)->tag); };
/* Line 717 of yacc.c */
-#line 1163 "../../../src/parse-gram.c"
+#line 1163 "parse-gram.c"
break;
case 88: /* "string_as_id" */
break;
case 88: /* "string_as_id" */
{ fprintf (stderr, "%s", ((*yyvaluep).symbol)->tag); };
/* Line 717 of yacc.c */
{ fprintf (stderr, "%s", ((*yyvaluep).symbol)->tag); };
/* Line 717 of yacc.c */
-#line 1172 "../../../src/parse-gram.c"
+#line 1172 "parse-gram.c"
/* User initialization code. */
/* User initialization code. */
-/* Line 1244 of yacc.c */
+/* Line 1250 of yacc.c */
#line 84 "parse-gram.y"
{
/* Bison's grammar can initial empty locations, hence a default
#line 84 "parse-gram.y"
{
/* Bison's grammar can initial empty locations, hence a default
boundary_set (&yylloc.end, current_file, 1, 1);
}
boundary_set (&yylloc.end, current_file, 1, 1);
}
-/* Line 1244 of yacc.c */
-#line 1701 "../../../src/parse-gram.c"
+/* Line 1250 of yacc.c */
+#line 1701 "parse-gram.c"
yylsp[0] = yylloc;
goto yysetstate;
yylsp[0] = yylloc;
goto yysetstate;
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 1901 "../../../src/parse-gram.c"
+#line 1901 "parse-gram.c"
{ debug_flag = true; }
/* Line 1457 of yacc.c */
{ debug_flag = true; }
/* Line 1457 of yacc.c */
-#line 1911 "../../../src/parse-gram.c"
+#line 1911 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 1923 "../../../src/parse-gram.c"
+#line 1923 "parse-gram.c"
{ defines_flag = true; }
/* Line 1457 of yacc.c */
{ defines_flag = true; }
/* Line 1457 of yacc.c */
-#line 1933 "../../../src/parse-gram.c"
+#line 1933 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 1946 "../../../src/parse-gram.c"
+#line 1946 "parse-gram.c"
{ error_verbose = true; }
/* Line 1457 of yacc.c */
{ error_verbose = true; }
/* Line 1457 of yacc.c */
-#line 1956 "../../../src/parse-gram.c"
+#line 1956 "parse-gram.c"
{ expected_sr_conflicts = (yyvsp[(2) - (2)].integer); }
/* Line 1457 of yacc.c */
{ expected_sr_conflicts = (yyvsp[(2) - (2)].integer); }
/* Line 1457 of yacc.c */
-#line 1966 "../../../src/parse-gram.c"
+#line 1966 "parse-gram.c"
{ expected_rr_conflicts = (yyvsp[(2) - (2)].integer); }
/* Line 1457 of yacc.c */
{ expected_rr_conflicts = (yyvsp[(2) - (2)].integer); }
/* Line 1457 of yacc.c */
-#line 1976 "../../../src/parse-gram.c"
+#line 1976 "parse-gram.c"
{ spec_file_prefix = (yyvsp[(2) - (2)].chars); }
/* Line 1457 of yacc.c */
{ spec_file_prefix = (yyvsp[(2) - (2)].chars); }
/* Line 1457 of yacc.c */
-#line 1986 "../../../src/parse-gram.c"
+#line 1986 "parse-gram.c"
{ spec_file_prefix = (yyvsp[(3) - (3)].chars); }
/* Line 1457 of yacc.c */
{ spec_file_prefix = (yyvsp[(3) - (3)].chars); }
/* Line 1457 of yacc.c */
-#line 1996 "../../../src/parse-gram.c"
+#line 1996 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2009 "../../../src/parse-gram.c"
+#line 2009 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2026 "../../../src/parse-gram.c"
+#line 2026 "parse-gram.c"
break;
case 18:
/* Line 1457 of yacc.c */
#line 257 "parse-gram.y"
break;
case 18:
/* Line 1457 of yacc.c */
#line 257 "parse-gram.y"
- { language_argmatch ((yyvsp[(2) - (2)].chars), 1, (yylsp[(1) - (2)])); }
+ { language_argmatch ((yyvsp[(2) - (2)].chars), grammar_prio, (yylsp[(1) - (2)])); }
/* Line 1457 of yacc.c */
/* Line 1457 of yacc.c */
-#line 2036 "../../../src/parse-gram.c"
+#line 2036 "parse-gram.c"
{ add_param ("lex_param", (yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); }
/* Line 1457 of yacc.c */
{ add_param ("lex_param", (yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); }
/* Line 1457 of yacc.c */
-#line 2046 "../../../src/parse-gram.c"
+#line 2046 "parse-gram.c"
{ locations_flag = true; }
/* Line 1457 of yacc.c */
{ locations_flag = true; }
/* Line 1457 of yacc.c */
-#line 2056 "../../../src/parse-gram.c"
+#line 2056 "parse-gram.c"
{ spec_name_prefix = (yyvsp[(2) - (2)].chars); }
/* Line 1457 of yacc.c */
{ spec_name_prefix = (yyvsp[(2) - (2)].chars); }
/* Line 1457 of yacc.c */
-#line 2066 "../../../src/parse-gram.c"
+#line 2066 "parse-gram.c"
{ spec_name_prefix = (yyvsp[(3) - (3)].chars); }
/* Line 1457 of yacc.c */
{ spec_name_prefix = (yyvsp[(3) - (3)].chars); }
/* Line 1457 of yacc.c */
-#line 2076 "../../../src/parse-gram.c"
+#line 2076 "parse-gram.c"
{ no_lines_flag = true; }
/* Line 1457 of yacc.c */
{ no_lines_flag = true; }
/* Line 1457 of yacc.c */
-#line 2086 "../../../src/parse-gram.c"
+#line 2086 "parse-gram.c"
{ nondeterministic_parser = true; }
/* Line 1457 of yacc.c */
{ nondeterministic_parser = true; }
/* Line 1457 of yacc.c */
-#line 2096 "../../../src/parse-gram.c"
+#line 2096 "parse-gram.c"
{ spec_outfile = (yyvsp[(2) - (2)].chars); }
/* Line 1457 of yacc.c */
{ spec_outfile = (yyvsp[(2) - (2)].chars); }
/* Line 1457 of yacc.c */
-#line 2106 "../../../src/parse-gram.c"
+#line 2106 "parse-gram.c"
{ spec_outfile = (yyvsp[(3) - (3)].chars); }
/* Line 1457 of yacc.c */
{ spec_outfile = (yyvsp[(3) - (3)].chars); }
/* Line 1457 of yacc.c */
-#line 2116 "../../../src/parse-gram.c"
+#line 2116 "parse-gram.c"
{ add_param ("parse_param", (yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); }
/* Line 1457 of yacc.c */
{ add_param ("parse_param", (yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); }
/* Line 1457 of yacc.c */
-#line 2126 "../../../src/parse-gram.c"
+#line 2126 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2147 "../../../src/parse-gram.c"
+#line 2147 "parse-gram.c"
{ version_check (&(yylsp[(2) - (2)]), (yyvsp[(2) - (2)].chars)); }
/* Line 1457 of yacc.c */
{ version_check (&(yylsp[(2) - (2)]), (yyvsp[(2) - (2)].chars)); }
/* Line 1457 of yacc.c */
-#line 2157 "../../../src/parse-gram.c"
+#line 2157 "parse-gram.c"
skeleton_user = uniqstr_new (skeleton_build);
free (skeleton_build);
}
skeleton_user = uniqstr_new (skeleton_build);
free (skeleton_build);
}
- skeleton_arg (skeleton_user, 1, (yylsp[(1) - (2)]));
+ skeleton_arg (skeleton_user, grammar_prio, (yylsp[(1) - (2)]));
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2189 "../../../src/parse-gram.c"
+#line 2189 "parse-gram.c"
{ token_table_flag = true; }
/* Line 1457 of yacc.c */
{ token_table_flag = true; }
/* Line 1457 of yacc.c */
-#line 2199 "../../../src/parse-gram.c"
+#line 2199 "parse-gram.c"
{ report_flag |= report_states; }
/* Line 1457 of yacc.c */
{ report_flag |= report_states; }
/* Line 1457 of yacc.c */
-#line 2209 "../../../src/parse-gram.c"
+#line 2209 "parse-gram.c"
{ yacc_flag = true; }
/* Line 1457 of yacc.c */
{ yacc_flag = true; }
/* Line 1457 of yacc.c */
-#line 2219 "../../../src/parse-gram.c"
+#line 2219 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2231 "../../../src/parse-gram.c"
+#line 2231 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2246 "../../../src/parse-gram.c"
+#line 2246 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2261 "../../../src/parse-gram.c"
+#line 2261 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2273 "../../../src/parse-gram.c"
+#line 2273 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2285 "../../../src/parse-gram.c"
+#line 2285 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2300 "../../../src/parse-gram.c"
+#line 2300 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2313 "../../../src/parse-gram.c"
+#line 2313 "parse-gram.c"
{}
/* Line 1457 of yacc.c */
{}
/* Line 1457 of yacc.c */
-#line 2323 "../../../src/parse-gram.c"
+#line 2323 "parse-gram.c"
{ muscle_code_grow ("union_name", (yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
{ muscle_code_grow ("union_name", (yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
-#line 2333 "../../../src/parse-gram.c"
+#line 2333 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2347 "../../../src/parse-gram.c"
+#line 2347 "parse-gram.c"
{ current_class = nterm_sym; }
/* Line 1457 of yacc.c */
{ current_class = nterm_sym; }
/* Line 1457 of yacc.c */
-#line 2357 "../../../src/parse-gram.c"
+#line 2357 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2370 "../../../src/parse-gram.c"
+#line 2370 "parse-gram.c"
{ current_class = token_sym; }
/* Line 1457 of yacc.c */
{ current_class = token_sym; }
/* Line 1457 of yacc.c */
-#line 2380 "../../../src/parse-gram.c"
+#line 2380 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2393 "../../../src/parse-gram.c"
+#line 2393 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2409 "../../../src/parse-gram.c"
+#line 2409 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2429 "../../../src/parse-gram.c"
+#line 2429 "parse-gram.c"
{ (yyval.assoc) = left_assoc; }
/* Line 1457 of yacc.c */
{ (yyval.assoc) = left_assoc; }
/* Line 1457 of yacc.c */
-#line 2439 "../../../src/parse-gram.c"
+#line 2439 "parse-gram.c"
{ (yyval.assoc) = right_assoc; }
/* Line 1457 of yacc.c */
{ (yyval.assoc) = right_assoc; }
/* Line 1457 of yacc.c */
-#line 2449 "../../../src/parse-gram.c"
+#line 2449 "parse-gram.c"
{ (yyval.assoc) = non_assoc; }
/* Line 1457 of yacc.c */
{ (yyval.assoc) = non_assoc; }
/* Line 1457 of yacc.c */
-#line 2459 "../../../src/parse-gram.c"
+#line 2459 "parse-gram.c"
{ current_type = NULL; }
/* Line 1457 of yacc.c */
{ current_type = NULL; }
/* Line 1457 of yacc.c */
-#line 2469 "../../../src/parse-gram.c"
+#line 2469 "parse-gram.c"
{ current_type = (yyvsp[(1) - (1)].uniqstr); tag_seen = true; }
/* Line 1457 of yacc.c */
{ current_type = (yyvsp[(1) - (1)].uniqstr); tag_seen = true; }
/* Line 1457 of yacc.c */
-#line 2479 "../../../src/parse-gram.c"
+#line 2479 "parse-gram.c"
{ (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
{ (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
-#line 2489 "../../../src/parse-gram.c"
+#line 2489 "parse-gram.c"
{ (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 */
{ (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"
+#line 2499 "parse-gram.c"
{ (yyval.symbol) = (yyvsp[(1) - (1)].symbol); }
/* Line 1457 of yacc.c */
{ (yyval.symbol) = (yyvsp[(1) - (1)].symbol); }
/* Line 1457 of yacc.c */
-#line 2509 "../../../src/parse-gram.c"
+#line 2509 "parse-gram.c"
{ (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 */
{ (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"
+#line 2519 "parse-gram.c"
{ (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
{ (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
-#line 2529 "../../../src/parse-gram.c"
+#line 2529 "parse-gram.c"
{ (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 */
{ (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"
+#line 2539 "parse-gram.c"
{ (yyval.list) = (yyvsp[(1) - (1)].list); }
/* Line 1457 of yacc.c */
{ (yyval.list) = (yyvsp[(1) - (1)].list); }
/* Line 1457 of yacc.c */
-#line 2549 "../../../src/parse-gram.c"
+#line 2549 "parse-gram.c"
{ (yyval.list) = symbol_list_prepend ((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].list)); }
/* Line 1457 of yacc.c */
{ (yyval.list) = symbol_list_prepend ((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].list)); }
/* Line 1457 of yacc.c */
-#line 2559 "../../../src/parse-gram.c"
+#line 2559 "parse-gram.c"
{ (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
{ (yyval.list) = symbol_list_sym_new ((yyvsp[(1) - (1)].symbol), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
-#line 2569 "../../../src/parse-gram.c"
+#line 2569 "parse-gram.c"
{ (yyval.list) = symbol_list_type_new ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
{ (yyval.list) = symbol_list_type_new ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
-#line 2579 "../../../src/parse-gram.c"
+#line 2579 "parse-gram.c"
{ (yyval.list) = symbol_list_default_tagged_new ((yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
{ (yyval.list) = symbol_list_default_tagged_new ((yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
-#line 2589 "../../../src/parse-gram.c"
+#line 2589 "parse-gram.c"
{ (yyval.list) = symbol_list_default_tagless_new ((yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
{ (yyval.list) = symbol_list_default_tagless_new ((yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
-#line 2599 "../../../src/parse-gram.c"
+#line 2599 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2612 "../../../src/parse-gram.c"
+#line 2612 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2625 "../../../src/parse-gram.c"
+#line 2625 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2639 "../../../src/parse-gram.c"
+#line 2639 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2653 "../../../src/parse-gram.c"
+#line 2653 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2668 "../../../src/parse-gram.c"
+#line 2668 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2680 "../../../src/parse-gram.c"
+#line 2680 "parse-gram.c"
{ current_lhs = (yyvsp[(1) - (1)].symbol); current_lhs_location = (yylsp[(1) - (1)]); }
/* Line 1457 of yacc.c */
{ current_lhs = (yyvsp[(1) - (1)].symbol); current_lhs_location = (yylsp[(1) - (1)]); }
/* Line 1457 of yacc.c */
-#line 2690 "../../../src/parse-gram.c"
+#line 2690 "parse-gram.c"
{ grammar_current_rule_end ((yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
{ grammar_current_rule_end ((yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
-#line 2700 "../../../src/parse-gram.c"
+#line 2700 "parse-gram.c"
{ grammar_current_rule_end ((yylsp[(3) - (3)])); }
/* Line 1457 of yacc.c */
{ grammar_current_rule_end ((yylsp[(3) - (3)])); }
/* Line 1457 of yacc.c */
-#line 2710 "../../../src/parse-gram.c"
+#line 2710 "parse-gram.c"
{ grammar_current_rule_begin (current_lhs, current_lhs_location); }
/* Line 1457 of yacc.c */
{ grammar_current_rule_begin (current_lhs, current_lhs_location); }
/* Line 1457 of yacc.c */
-#line 2720 "../../../src/parse-gram.c"
+#line 2720 "parse-gram.c"
{ grammar_current_rule_symbol_append ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)])); }
/* Line 1457 of yacc.c */
{ grammar_current_rule_symbol_append ((yyvsp[(2) - (2)].symbol), (yylsp[(2) - (2)])); }
/* Line 1457 of yacc.c */
-#line 2730 "../../../src/parse-gram.c"
+#line 2730 "parse-gram.c"
{ grammar_current_rule_action_append ((yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); }
/* Line 1457 of yacc.c */
{ grammar_current_rule_action_append ((yyvsp[(2) - (2)].code), (yylsp[(2) - (2)])); }
/* Line 1457 of yacc.c */
-#line 2740 "../../../src/parse-gram.c"
+#line 2740 "parse-gram.c"
{ grammar_current_rule_prec_set ((yyvsp[(3) - (3)].symbol), (yylsp[(3) - (3)])); }
/* Line 1457 of yacc.c */
{ grammar_current_rule_prec_set ((yyvsp[(3) - (3)].symbol), (yylsp[(3) - (3)])); }
/* Line 1457 of yacc.c */
-#line 2750 "../../../src/parse-gram.c"
+#line 2750 "parse-gram.c"
{ grammar_current_rule_dprec_set ((yyvsp[(3) - (3)].integer), (yylsp[(3) - (3)])); }
/* Line 1457 of yacc.c */
{ grammar_current_rule_dprec_set ((yyvsp[(3) - (3)].integer), (yylsp[(3) - (3)])); }
/* Line 1457 of yacc.c */
-#line 2760 "../../../src/parse-gram.c"
+#line 2760 "parse-gram.c"
{ grammar_current_rule_merge_set ((yyvsp[(3) - (3)].uniqstr), (yylsp[(3) - (3)])); }
/* Line 1457 of yacc.c */
{ grammar_current_rule_merge_set ((yyvsp[(3) - (3)].uniqstr), (yylsp[(3) - (3)])); }
/* Line 1457 of yacc.c */
-#line 2770 "../../../src/parse-gram.c"
+#line 2770 "parse-gram.c"
{ (yyval.uniqstr) = uniqstr_new ((yyvsp[(1) - (1)].chars)); }
/* Line 1457 of yacc.c */
{ (yyval.uniqstr) = uniqstr_new ((yyvsp[(1) - (1)].chars)); }
/* Line 1457 of yacc.c */
-#line 2780 "../../../src/parse-gram.c"
+#line 2780 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2792 "../../../src/parse-gram.c"
+#line 2792 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2809 "../../../src/parse-gram.c"
+#line 2809 "parse-gram.c"
{ (yyval.symbol) = symbol_from_uniqstr ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
{ (yyval.symbol) = symbol_from_uniqstr ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
-#line 2819 "../../../src/parse-gram.c"
+#line 2819 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2833 "../../../src/parse-gram.c"
+#line 2833 "parse-gram.c"
{ (yyval.symbol) = symbol_from_uniqstr ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
{ (yyval.symbol) = symbol_from_uniqstr ((yyvsp[(1) - (1)].uniqstr), (yylsp[(1) - (1)])); }
/* Line 1457 of yacc.c */
-#line 2843 "../../../src/parse-gram.c"
+#line 2843 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2856 "../../../src/parse-gram.c"
+#line 2856 "parse-gram.c"
}
/* Line 1457 of yacc.c */
}
/* Line 1457 of yacc.c */
-#line 2873 "../../../src/parse-gram.c"
+#line 2873 "parse-gram.c"
break;
/* Line 1457 of yacc.c */
break;
/* Line 1457 of yacc.c */
-#line 2879 "../../../src/parse-gram.c"
+#line 2879 "parse-gram.c"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
-/* A Bison parser, made by GNU Bison 2.3b.153-3d8d7. */
+/* A Bison parser, made by GNU Bison 2.4.58-9380c. */
/* Interface for Bison's Yacc-like parsers in C
/* Interface for Bison's Yacc-like parsers in C
-/* Line 1678 of yacc.c */
+/* Line 1741 of yacc.c */
#line 92 "parse-gram.y"
symbol *symbol;
#line 92 "parse-gram.y"
symbol *symbol;
-/* Line 1678 of yacc.c */
-#line 177 "../../../src/parse-gram.h"
+/* Line 1741 of yacc.c */
+#line 177 "parse-gram.h"
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
muscle_code_grow ("initial_action", action.code, @2);
code_scanner_last_string_free ();
}
muscle_code_grow ("initial_action", action.code, @2);
code_scanner_last_string_free ();
}
-| "%language" STRING { language_argmatch ($2, 1, @1); }
+| "%language" STRING { language_argmatch ($2, grammar_prio, @1); }
| "%lex-param" "{...}" { add_param ("lex_param", $2, @2); }
| "%locations" { locations_flag = true; }
| "%name-prefix" STRING { spec_name_prefix = $2; }
| "%lex-param" "{...}" { add_param ("lex_param", $2, @2); }
| "%locations" { locations_flag = true; }
| "%name-prefix" STRING { spec_name_prefix = $2; }
skeleton_user = uniqstr_new (skeleton_build);
free (skeleton_build);
}
skeleton_user = uniqstr_new (skeleton_build);
free (skeleton_build);
}
- skeleton_arg (skeleton_user, 1, @1);
+ skeleton_arg (skeleton_user, grammar_prio, @1);
}
| "%token-table" { token_table_flag = true; }
| "%verbose" { report_flag |= report_states; }
}
| "%token-table" { token_table_flag = true; }
| "%verbose" { report_flag |= report_states; }