+# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
+do { \
+ if (yydebug) \
+ { \
+ YYFPRINTF (stderr, "%s ", Title); \
+ yy_symbol_print (stderr, \
+ Type, Value, Location); \
+ YYFPRINTF (stderr, "\n"); \
+ } \
+} while (YYID (0))
+
+
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
+
+/*ARGSUSED*/
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp)
+#else
+static void
+yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp)
+ FILE *yyoutput;
+ int yytype;
+ YYSTYPE const * const yyvaluep;
+ YYLTYPE const * const yylocationp;
+#endif
+{
+ if (!yyvaluep)
+ return;
+ YYUSE (yylocationp);
+# ifdef YYPRINT
+ if (yytype < YYNTOKENS)
+ YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
+# else
+ YYUSE (yyoutput);
+# endif
+ switch (yytype)
+ {
+ case 3: /* "\"string\"" */
+
+/* Line 821 of yacc.c */
+#line 203 "parse-gram.y"
+ { fputs (quotearg_style (c_quoting_style, (yyvaluep->chars)), stderr); };
+
+/* Line 821 of yacc.c */
+#line 1058 "../../../src/parse-gram.c"
+ break;
+ case 4: /* "\"integer\"" */
+
+/* Line 821 of yacc.c */
+#line 215 "parse-gram.y"
+ { fprintf (stderr, "%d", (yyvaluep->integer)); };
+
+/* Line 821 of yacc.c */
+#line 1067 "../../../src/parse-gram.c"
+ break;
+ case 43: /* "\"{...}\"" */
+
+/* Line 821 of yacc.c */
+#line 205 "parse-gram.y"
+ { fprintf (stderr, "{\n%s\n}", (yyvaluep->code)); };
+
+/* Line 821 of yacc.c */
+#line 1076 "../../../src/parse-gram.c"
+ break;
+ case 44: /* "\"[identifier]\"" */
+
+/* Line 821 of yacc.c */
+#line 210 "parse-gram.y"
+ { fprintf (stderr, "[%s]", (yyvaluep->uniqstr)); };
+
+/* Line 821 of yacc.c */
+#line 1085 "../../../src/parse-gram.c"
+ break;
+ case 45: /* "\"char\"" */
+
+/* Line 821 of yacc.c */
+#line 197 "parse-gram.y"
+ { fputs (char_name ((yyvaluep->character)), stderr); };
+
+/* Line 821 of yacc.c */
+#line 1094 "../../../src/parse-gram.c"
+ break;
+ case 46: /* "\"epilogue\"" */
+
+/* Line 821 of yacc.c */
+#line 205 "parse-gram.y"
+ { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); };
+
+/* Line 821 of yacc.c */
+#line 1103 "../../../src/parse-gram.c"
+ break;
+ case 48: /* "\"identifier\"" */
+
+/* Line 821 of yacc.c */
+#line 209 "parse-gram.y"
+ { fputs ((yyvaluep->uniqstr), stderr); };
+
+/* Line 821 of yacc.c */
+#line 1112 "../../../src/parse-gram.c"
+ break;
+ case 49: /* "\"identifier:\"" */
+
+/* Line 821 of yacc.c */
+#line 211 "parse-gram.y"
+ { fprintf (stderr, "%s:", (yyvaluep->uniqstr)); };
+
+/* Line 821 of yacc.c */
+#line 1121 "../../../src/parse-gram.c"
+ break;
+ case 52: /* "\"%{...%}\"" */
+
+/* Line 821 of yacc.c */
+#line 205 "parse-gram.y"
+ { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); };
+
+/* Line 821 of yacc.c */
+#line 1130 "../../../src/parse-gram.c"
+ break;
+ case 54: /* "\"type\"" */
+
+/* Line 821 of yacc.c */
+#line 212 "parse-gram.y"
+ { fprintf (stderr, "<%s>", (yyvaluep->uniqstr)); };
+
+/* Line 821 of yacc.c */
+#line 1139 "../../../src/parse-gram.c"
+ break;
+ case 71: /* "symbol.prec" */
+
+/* Line 821 of yacc.c */
+#line 218 "parse-gram.y"
+ { fprintf (stderr, "%s", (yyvaluep->symbol)->tag); };
+
+/* Line 821 of yacc.c */
+#line 1148 "../../../src/parse-gram.c"
+ break;
+ case 84: /* "variable" */
+
+/* Line 821 of yacc.c */
+#line 209 "parse-gram.y"
+ { fputs ((yyvaluep->uniqstr), stderr); };
+
+/* Line 821 of yacc.c */
+#line 1157 "../../../src/parse-gram.c"
+ break;
+ case 85: /* "content.opt" */
+
+/* Line 821 of yacc.c */
+#line 205 "parse-gram.y"
+ { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); };
+
+/* Line 821 of yacc.c */
+#line 1166 "../../../src/parse-gram.c"
+ break;
+ case 86: /* "braceless" */
+
+/* Line 821 of yacc.c */
+#line 205 "parse-gram.y"
+ { fprintf (stderr, "{\n%s\n}", (yyvaluep->chars)); };
+
+/* Line 821 of yacc.c */
+#line 1175 "../../../src/parse-gram.c"
+ break;
+ case 87: /* "id" */
+
+/* Line 821 of yacc.c */
+#line 218 "parse-gram.y"
+ { fprintf (stderr, "%s", (yyvaluep->symbol)->tag); };
+
+/* Line 821 of yacc.c */
+#line 1184 "../../../src/parse-gram.c"
+ break;
+ case 88: /* "id_colon" */
+
+/* Line 821 of yacc.c */
+#line 219 "parse-gram.y"
+ { fprintf (stderr, "%s:", (yyvaluep->symbol)->tag); };
+
+/* Line 821 of yacc.c */
+#line 1193 "../../../src/parse-gram.c"
+ break;
+ case 89: /* "symbol" */
+
+/* Line 821 of yacc.c */
+#line 218 "parse-gram.y"
+ { fprintf (stderr, "%s", (yyvaluep->symbol)->tag); };
+
+/* Line 821 of yacc.c */
+#line 1202 "../../../src/parse-gram.c"
+ break;
+ case 90: /* "string_as_id" */
+
+/* Line 821 of yacc.c */
+#line 218 "parse-gram.y"
+ { fprintf (stderr, "%s", (yyvaluep->symbol)->tag); };
+
+/* Line 821 of yacc.c */
+#line 1211 "../../../src/parse-gram.c"
+ break;
+ default:
+ break;
+ }
+}
+
+
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
+
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp)
+#else
+static void
+yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp)
+ FILE *yyoutput;
+ int yytype;
+ YYSTYPE const * const yyvaluep;
+ YYLTYPE const * const yylocationp;
+#endif
+{
+ if (yytype < YYNTOKENS)
+ YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
+ else
+ YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
+
+ YY_LOCATION_PRINT (yyoutput, *yylocationp);
+ YYFPRINTF (yyoutput, ": ");
+ yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp);
+ YYFPRINTF (yyoutput, ")");
+}