]> git.saurik.com Git - bison.git/blobdiff - src/parse-gram.h
muscle: factor the computation of variable names
[bison.git] / src / parse-gram.h
index a7d50b58993f90d2f537d8c701f8333566ed1f2a..b64cfa4fcfc18ab68af6793c17a7881ce6365124 100644 (file)
@@ -1,4 +1,4 @@
-/* A Bison parser, made by GNU Bison 2.7.1081-93af.  */
+/* A Bison parser, made by GNU Bison 2.7.1127-02879-dirty.  */
 
 /* Bison interface for Yacc-like parsers in C
 
 extern int gram_debug;
 #endif
 /* "%code requires" blocks.  */
-#line 219 "src/parse-gram.y" /* yacc.c:1932  */
+#line 218 "src/parse-gram.y" /* yacc.c:1931  */
 
-# ifndef PARAM_TYPE
-#  define PARAM_TYPE
   typedef enum
   {
     param_none   = 0,
@@ -59,10 +57,11 @@ extern int gram_debug;
     param_parse  = 1 << 1,
     param_both   = param_lex | param_parse
   } param_type;
-# endif
 
+#line 649 "src/parse-gram.y" /* yacc.c:1931  */
+#include "muscle-tab.h"
 
-#line 66 "src/parse-gram.h" /* yacc.c:1932  */
+#line 65 "src/parse-gram.h" /* yacc.c:1931  */
 
 /* Token type.  */
 #ifndef GRAM_TOKENTYPE
@@ -71,143 +70,101 @@ extern int gram_debug;
   {
     GRAM_EOF = 0,
     STRING = 258,
-    INT = 259,
-    PERCENT_TOKEN = 260,
-    PERCENT_NTERM = 261,
-    PERCENT_TYPE = 262,
-    PERCENT_DESTRUCTOR = 263,
-    PERCENT_PRINTER = 264,
-    PERCENT_LEFT = 265,
-    PERCENT_RIGHT = 266,
-    PERCENT_NONASSOC = 267,
-    PERCENT_PRECEDENCE = 268,
-    PERCENT_PREC = 269,
-    PERCENT_DPREC = 270,
-    PERCENT_MERGE = 271,
-    PERCENT_CODE = 272,
-    PERCENT_DEFAULT_PREC = 273,
-    PERCENT_DEFINE = 274,
-    PERCENT_DEFINES = 275,
-    PERCENT_ERROR_VERBOSE = 276,
-    PERCENT_EXPECT = 277,
-    PERCENT_EXPECT_RR = 278,
-    PERCENT_FLAG = 279,
-    PERCENT_FILE_PREFIX = 280,
-    PERCENT_GLR_PARSER = 281,
-    PERCENT_INITIAL_ACTION = 282,
-    PERCENT_LANGUAGE = 283,
-    PERCENT_NAME_PREFIX = 284,
-    PERCENT_NO_DEFAULT_PREC = 285,
-    PERCENT_NO_LINES = 286,
-    PERCENT_NONDETERMINISTIC_PARSER = 287,
-    PERCENT_OUTPUT = 288,
-    PERCENT_REQUIRE = 289,
-    PERCENT_SKELETON = 290,
-    PERCENT_START = 291,
-    PERCENT_TOKEN_TABLE = 292,
-    PERCENT_VERBOSE = 293,
-    PERCENT_YACC = 294,
-    BRACED_CODE = 295,
-    BRACED_PREDICATE = 296,
-    BRACKETED_ID = 297,
-    CHAR = 298,
-    EPILOGUE = 299,
-    EQUAL = 300,
-    ID = 301,
-    ID_COLON = 302,
-    PERCENT_PERCENT = 303,
-    PIPE = 304,
-    PROLOGUE = 305,
-    SEMICOLON = 306,
-    TAG = 307,
-    TAG_ANY = 308,
-    TAG_NONE = 309,
+    PERCENT_TOKEN = 259,
+    PERCENT_NTERM = 260,
+    PERCENT_TYPE = 261,
+    PERCENT_DESTRUCTOR = 262,
+    PERCENT_PRINTER = 263,
+    PERCENT_LEFT = 264,
+    PERCENT_RIGHT = 265,
+    PERCENT_NONASSOC = 266,
+    PERCENT_PRECEDENCE = 267,
+    PERCENT_PREC = 268,
+    PERCENT_DPREC = 269,
+    PERCENT_MERGE = 270,
+    PERCENT_CODE = 271,
+    PERCENT_DEFAULT_PREC = 272,
+    PERCENT_DEFINE = 273,
+    PERCENT_DEFINES = 274,
+    PERCENT_ERROR_VERBOSE = 275,
+    PERCENT_EXPECT = 276,
+    PERCENT_EXPECT_RR = 277,
+    PERCENT_FLAG = 278,
+    PERCENT_FILE_PREFIX = 279,
+    PERCENT_GLR_PARSER = 280,
+    PERCENT_INITIAL_ACTION = 281,
+    PERCENT_LANGUAGE = 282,
+    PERCENT_NAME_PREFIX = 283,
+    PERCENT_NO_DEFAULT_PREC = 284,
+    PERCENT_NO_LINES = 285,
+    PERCENT_NONDETERMINISTIC_PARSER = 286,
+    PERCENT_OUTPUT = 287,
+    PERCENT_REQUIRE = 288,
+    PERCENT_SKELETON = 289,
+    PERCENT_START = 290,
+    PERCENT_TOKEN_TABLE = 291,
+    PERCENT_VERBOSE = 292,
+    PERCENT_YACC = 293,
+    BRACED_CODE = 294,
+    BRACED_PREDICATE = 295,
+    BRACKETED_ID = 296,
+    CHAR = 297,
+    EPILOGUE = 298,
+    EQUAL = 299,
+    ID = 300,
+    ID_COLON = 301,
+    PERCENT_PERCENT = 302,
+    PIPE = 303,
+    PROLOGUE = 304,
+    SEMICOLON = 305,
+    TAG = 306,
+    TAG_ANY = 307,
+    TAG_NONE = 308,
+    INT = 309,
     PERCENT_PARAM = 310,
-    PERCENT_UNION = 311
+    PERCENT_UNION = 311,
+    PERCENT_EMPTY = 312
   };
 #endif
-/* Tokens.  */
-#define GRAM_EOF 0
-#define STRING 258
-#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_LEFT 265
-#define PERCENT_RIGHT 266
-#define PERCENT_NONASSOC 267
-#define PERCENT_PRECEDENCE 268
-#define PERCENT_PREC 269
-#define PERCENT_DPREC 270
-#define PERCENT_MERGE 271
-#define PERCENT_CODE 272
-#define PERCENT_DEFAULT_PREC 273
-#define PERCENT_DEFINE 274
-#define PERCENT_DEFINES 275
-#define PERCENT_ERROR_VERBOSE 276
-#define PERCENT_EXPECT 277
-#define PERCENT_EXPECT_RR 278
-#define PERCENT_FLAG 279
-#define PERCENT_FILE_PREFIX 280
-#define PERCENT_GLR_PARSER 281
-#define PERCENT_INITIAL_ACTION 282
-#define PERCENT_LANGUAGE 283
-#define PERCENT_NAME_PREFIX 284
-#define PERCENT_NO_DEFAULT_PREC 285
-#define PERCENT_NO_LINES 286
-#define PERCENT_NONDETERMINISTIC_PARSER 287
-#define PERCENT_OUTPUT 288
-#define PERCENT_REQUIRE 289
-#define PERCENT_SKELETON 290
-#define PERCENT_START 291
-#define PERCENT_TOKEN_TABLE 292
-#define PERCENT_VERBOSE 293
-#define PERCENT_YACC 294
-#define BRACED_CODE 295
-#define BRACED_PREDICATE 296
-#define BRACKETED_ID 297
-#define CHAR 298
-#define EPILOGUE 299
-#define EQUAL 300
-#define ID 301
-#define ID_COLON 302
-#define PERCENT_PERCENT 303
-#define PIPE 304
-#define PROLOGUE 305
-#define SEMICOLON 306
-#define TAG 307
-#define TAG_ANY 308
-#define TAG_NONE 309
-#define PERCENT_PARAM 310
-#define PERCENT_UNION 311
 
 /* Value type.  */
 #if ! defined GRAM_STYPE && ! defined GRAM_STYPE_IS_DECLARED
 typedef union GRAM_STYPE GRAM_STYPE;
 union GRAM_STYPE
 {
-#line 105 "src/parse-gram.y" /* yacc.c:1932  */
+#line 170 "src/parse-gram.y" /* yacc.c:1931  */
+unsigned char character;
+#line 177 "src/parse-gram.y" /* yacc.c:1931  */
 
-  assoc assoc;
   char *code;
   char const *chars;
-  int integer;
-  named_ref *named_ref;
-  symbol *symbol;
-  symbol_list *list;
-  uniqstr uniqstr;
-  unsigned char character;
 
-#line 243 "src/parse-gram.y" /* yacc.c:1932  */
+#line 188 "src/parse-gram.y" /* yacc.c:1931  */
+uniqstr uniqstr;
+#line 196 "src/parse-gram.y" /* yacc.c:1931  */
+int integer;
+#line 200 "src/parse-gram.y" /* yacc.c:1931  */
+symbol *symbol;
+#line 205 "src/parse-gram.y" /* yacc.c:1931  */
+assoc assoc;
+#line 208 "src/parse-gram.y" /* yacc.c:1931  */
+symbol_list *list;
+#line 211 "src/parse-gram.y" /* yacc.c:1931  */
+named_ref *named_ref;
+#line 238 "src/parse-gram.y" /* yacc.c:1931  */
+param_type param;
+#line 413 "src/parse-gram.y" /* yacc.c:1931  */
+code_props_type code_type;
+#line 651 "src/parse-gram.y" /* yacc.c:1931  */
 
-  param_type param;
+  struct
+  {
+    char const *chars;
+    muscle_kind kind;
+  } value;
 
-#line 419 "src/parse-gram.y" /* yacc.c:1932  */
-code_props_type code_type;
 
-#line 211 "src/parse-gram.h" /* yacc.c:1932  */
+#line 168 "src/parse-gram.h" /* yacc.c:1931  */
 };
 # define GRAM_STYPE_IS_TRIVIAL 1
 # define GRAM_STYPE_IS_DECLARED 1