-#define CHARACTER 259
-#define INT 260
-#define PERCENT_TOKEN 261
-#define PERCENT_NTERM 262
-#define PERCENT_TYPE 263
-#define PERCENT_DESTRUCTOR 264
-#define PERCENT_PRINTER 265
-#define PERCENT_UNION 266
-#define PERCENT_LEFT 267
-#define PERCENT_RIGHT 268
-#define PERCENT_NONASSOC 269
-#define PERCENT_PREC 270
-#define PERCENT_DPREC 271
-#define PERCENT_MERGE 272
-#define PERCENT_DEBUG 273
-#define PERCENT_DEFINE 274
-#define PERCENT_DEFINES 275
-#define PERCENT_ERROR_VERBOSE 276
-#define PERCENT_EXPECT 277
-#define PERCENT_FILE_PREFIX 278
-#define PERCENT_GLR_PARSER 279
-#define PERCENT_LEX_PARAM 280
-#define PERCENT_LOCATIONS 281
-#define PERCENT_NAME_PREFIX 282
-#define PERCENT_NO_LINES 283
-#define PERCENT_OUTPUT 284
-#define PERCENT_PARSE_PARAM 285
-#define PERCENT_PURE_PARSER 286
-#define PERCENT_SKELETON 287
-#define PERCENT_START 288
-#define PERCENT_TOKEN_TABLE 289
-#define PERCENT_VERBOSE 290
-#define PERCENT_YACC 291
-#define TYPE 292
-#define EQUAL 293
-#define SEMICOLON 294
-#define COLON 295
-#define COMMA 296
-#define PIPE 297
-#define ID 298
-#define PERCENT_PERCENT 299
-#define PROLOGUE 300
-#define EPILOGUE 301
-#define BRACED_CODE 302
-
-
-
-
-#ifndef YYSTYPE
-#line 89 "parse-gram.y"
-typedef union {
- symbol_t *symbol;
- symbol_list_t *list;
+#define INT 259
+#define PERCENT_TOKEN 260
+#define PERCENT_NTERM 261
+#define PERCENT_TYPE 262
+#define PERCENT_DESTRUCTOR 263
+#define PERCENT_PRINTER 264
+#define PERCENT_SYMBOL_DEFAULT 265
+#define PERCENT_LEFT 266
+#define PERCENT_RIGHT 267
+#define PERCENT_NONASSOC 268
+#define PERCENT_PREC 269
+#define PERCENT_DPREC 270
+#define PERCENT_MERGE 271
+#define PERCENT_AFTER_HEADER 272
+#define PERCENT_BEFORE_HEADER 273
+#define PERCENT_DEBUG 274
+#define PERCENT_DEFAULT_PREC 275
+#define PERCENT_DEFINE 276
+#define PERCENT_DEFINES 277
+#define PERCENT_END_HEADER 278
+#define PERCENT_ERROR_VERBOSE 279
+#define PERCENT_EXPECT 280
+#define PERCENT_EXPECT_RR 281
+#define PERCENT_FILE_PREFIX 282
+#define PERCENT_GLR_PARSER 283
+#define PERCENT_INITIAL_ACTION 284
+#define PERCENT_LEX_PARAM 285
+#define PERCENT_LOCATIONS 286
+#define PERCENT_NAME_PREFIX 287
+#define PERCENT_NO_DEFAULT_PREC 288
+#define PERCENT_NO_LINES 289
+#define PERCENT_NONDETERMINISTIC_PARSER 290
+#define PERCENT_OUTPUT 291
+#define PERCENT_PARSE_PARAM 292
+#define PERCENT_PURE_PARSER 293
+#define PERCENT_REQUIRE 294
+#define PERCENT_SKELETON 295
+#define PERCENT_START 296
+#define PERCENT_START_HEADER 297
+#define PERCENT_TOKEN_TABLE 298
+#define PERCENT_VERBOSE 299
+#define PERCENT_YACC 300
+#define BRACED_CODE 301
+#define CHAR 302
+#define EPILOGUE 303
+#define EQUAL 304
+#define ID 305
+#define ID_COLON 306
+#define PERCENT_PERCENT 307
+#define PIPE 308
+#define PROLOGUE 309
+#define SEMICOLON 310
+#define TYPE 311
+#define PERCENT_UNION 312
+
+
+
+
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+typedef union YYSTYPE
+{/* Line 1535 of yacc.c. */
+#line 98 "parse-gram.y"
+
+ symbol *symbol;
+ symbol_list *list;