%{/* Bison Grammar Parser -*- C -*-
- Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software
+ Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
Foundation, Inc.
This file is part of Bison, the GNU Compiler Compiler.
%token
PERCENT_CODE "%code"
- PERCENT_DEBUG "%debug"
PERCENT_DEFAULT_PREC "%default-prec"
PERCENT_DEFINE "%define"
PERCENT_DEFINES "%defines"
PERCENT_ERROR_VERBOSE "%error-verbose"
PERCENT_EXPECT "%expect"
PERCENT_EXPECT_RR "%expect-rr"
+ PERCENT_FLAG "%<flag>"
PERCENT_FILE_PREFIX "%file-prefix"
PERCENT_GLR_PARSER "%glr-parser"
PERCENT_INITIAL_ACTION "%initial-action"
%printer { fprintf (stderr, "{\n%s\n}", $$); }
braceless content.opt "{...}" "%{...%}" EPILOGUE
-%type <uniqstr> TAG ID ID_COLON variable
-%printer { fprintf (stderr, "<%s>", $$); } TAG
+%type <uniqstr> TAG ID ID_COLON PERCENT_FLAG variable
%printer { fputs ($$, stderr); } ID variable
%printer { fprintf (stderr, "%s:", $$); } ID_COLON
+%printer { fprintf (stderr, "%%%s", $$); } PERCENT_FLAG
+%printer { fprintf (stderr, "<%s>", $$); } TAG
%type <integer> INT
%printer { fprintf (stderr, "%d", $$); } INT
plain_code.code, @1);
code_scanner_last_string_free ();
}
-| "%debug" { debug_flag = true; }
+| "%<flag>"
+ {
+ muscle_percent_define_insert ($1, @1, "");
+ }
| "%define" variable content.opt
{
muscle_percent_define_insert ($2, @2, $3);
defines_flag = true;
spec_defines_file = xstrdup ($2);
}
-| "%error-verbose" { error_verbose = true; }
| "%expect" INT { expected_sr_conflicts = $2; }
| "%expect-rr" INT { expected_rr_conflicts = $2; }
| "%file-prefix" STRING { spec_file_prefix = $2; }