mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-16 07:43:03 +00:00
* src/scan-gram.l: No longer "parse" things after `%union' until
`{'. Rather, return a single "%union" token.
No longer make symbols: return strings, and leave the conversion
to symbols to the parser.
(SC_PRE_CODE, token_type): Remove.
* src/parse-gram.y (%union): New field `character'.
Sort tokens.
(CHAR): New token.
(ID, ID_COLON): Now that the scanner no longer makes them
identifiers, adjust all uses to invoke symbol_get.
(id_colon): New, wraps the conversion from string to symbol.
(%union): Accept a possible union_name.
(symbol): Now can be a char.
* data/c.m4 (b4_union_name): Leave a default value.
* data/glr.c, data/yacc.c: Use it.
This commit is contained in:
171
src/parse-gram.h
171
src/parse-gram.h
@@ -47,48 +47,49 @@
|
||||
PERCENT_TYPE = 262,
|
||||
PERCENT_DESTRUCTOR = 263,
|
||||
PERCENT_PRINTER = 264,
|
||||
PERCENT_UNION = 265,
|
||||
PERCENT_LEFT = 266,
|
||||
PERCENT_RIGHT = 267,
|
||||
PERCENT_NONASSOC = 268,
|
||||
PERCENT_PREC = 269,
|
||||
PERCENT_DPREC = 270,
|
||||
PERCENT_MERGE = 271,
|
||||
PERCENT_DEBUG = 272,
|
||||
PERCENT_DEFAULT_PREC = 273,
|
||||
PERCENT_DEFINE = 274,
|
||||
PERCENT_DEFINES = 275,
|
||||
PERCENT_ERROR_VERBOSE = 276,
|
||||
PERCENT_EXPECT = 277,
|
||||
PERCENT_EXPECT_RR = 278,
|
||||
PERCENT_FILE_PREFIX = 279,
|
||||
PERCENT_GLR_PARSER = 280,
|
||||
PERCENT_INITIAL_ACTION = 281,
|
||||
PERCENT_LEX_PARAM = 282,
|
||||
PERCENT_LOCATIONS = 283,
|
||||
PERCENT_NAME_PREFIX = 284,
|
||||
PERCENT_NO_DEFAULT_PREC = 285,
|
||||
PERCENT_NO_LINES = 286,
|
||||
PERCENT_NONDETERMINISTIC_PARSER = 287,
|
||||
PERCENT_OUTPUT = 288,
|
||||
PERCENT_PARSE_PARAM = 289,
|
||||
PERCENT_PURE_PARSER = 290,
|
||||
PERCENT_REQUIRE = 291,
|
||||
PERCENT_SKELETON = 292,
|
||||
PERCENT_START = 293,
|
||||
PERCENT_TOKEN_TABLE = 294,
|
||||
PERCENT_VERBOSE = 295,
|
||||
PERCENT_YACC = 296,
|
||||
TYPE = 297,
|
||||
EQUAL = 298,
|
||||
SEMICOLON = 299,
|
||||
PIPE = 300,
|
||||
ID = 301,
|
||||
ID_COLON = 302,
|
||||
PERCENT_PERCENT = 303,
|
||||
PERCENT_LEFT = 265,
|
||||
PERCENT_RIGHT = 266,
|
||||
PERCENT_NONASSOC = 267,
|
||||
PERCENT_PREC = 268,
|
||||
PERCENT_DPREC = 269,
|
||||
PERCENT_MERGE = 270,
|
||||
PERCENT_DEBUG = 271,
|
||||
PERCENT_DEFAULT_PREC = 272,
|
||||
PERCENT_DEFINE = 273,
|
||||
PERCENT_DEFINES = 274,
|
||||
PERCENT_ERROR_VERBOSE = 275,
|
||||
PERCENT_EXPECT = 276,
|
||||
PERCENT_EXPECT_RR = 277,
|
||||
PERCENT_FILE_PREFIX = 278,
|
||||
PERCENT_GLR_PARSER = 279,
|
||||
PERCENT_INITIAL_ACTION = 280,
|
||||
PERCENT_LEX_PARAM = 281,
|
||||
PERCENT_LOCATIONS = 282,
|
||||
PERCENT_NAME_PREFIX = 283,
|
||||
PERCENT_NO_DEFAULT_PREC = 284,
|
||||
PERCENT_NO_LINES = 285,
|
||||
PERCENT_NONDETERMINISTIC_PARSER = 286,
|
||||
PERCENT_OUTPUT = 287,
|
||||
PERCENT_PARSE_PARAM = 288,
|
||||
PERCENT_PURE_PARSER = 289,
|
||||
PERCENT_REQUIRE = 290,
|
||||
PERCENT_SKELETON = 291,
|
||||
PERCENT_START = 292,
|
||||
PERCENT_TOKEN_TABLE = 293,
|
||||
PERCENT_VERBOSE = 294,
|
||||
PERCENT_YACC = 295,
|
||||
BRACED_CODE = 296,
|
||||
CHAR = 297,
|
||||
EPILOGUE = 298,
|
||||
EQUAL = 299,
|
||||
ID = 300,
|
||||
ID_COLON = 301,
|
||||
PERCENT_PERCENT = 302,
|
||||
PIPE = 303,
|
||||
PROLOGUE = 304,
|
||||
EPILOGUE = 305,
|
||||
BRACED_CODE = 306
|
||||
SEMICOLON = 305,
|
||||
TYPE = 306,
|
||||
PERCENT_UNION = 307
|
||||
};
|
||||
#endif
|
||||
/* Tokens. */
|
||||
@@ -100,48 +101,49 @@
|
||||
#define PERCENT_TYPE 262
|
||||
#define PERCENT_DESTRUCTOR 263
|
||||
#define PERCENT_PRINTER 264
|
||||
#define PERCENT_UNION 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_DEBUG 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_FILE_PREFIX 279
|
||||
#define PERCENT_GLR_PARSER 280
|
||||
#define PERCENT_INITIAL_ACTION 281
|
||||
#define PERCENT_LEX_PARAM 282
|
||||
#define PERCENT_LOCATIONS 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_PARSE_PARAM 289
|
||||
#define PERCENT_PURE_PARSER 290
|
||||
#define PERCENT_REQUIRE 291
|
||||
#define PERCENT_SKELETON 292
|
||||
#define PERCENT_START 293
|
||||
#define PERCENT_TOKEN_TABLE 294
|
||||
#define PERCENT_VERBOSE 295
|
||||
#define PERCENT_YACC 296
|
||||
#define TYPE 297
|
||||
#define EQUAL 298
|
||||
#define SEMICOLON 299
|
||||
#define PIPE 300
|
||||
#define ID 301
|
||||
#define ID_COLON 302
|
||||
#define PERCENT_PERCENT 303
|
||||
#define PERCENT_LEFT 265
|
||||
#define PERCENT_RIGHT 266
|
||||
#define PERCENT_NONASSOC 267
|
||||
#define PERCENT_PREC 268
|
||||
#define PERCENT_DPREC 269
|
||||
#define PERCENT_MERGE 270
|
||||
#define PERCENT_DEBUG 271
|
||||
#define PERCENT_DEFAULT_PREC 272
|
||||
#define PERCENT_DEFINE 273
|
||||
#define PERCENT_DEFINES 274
|
||||
#define PERCENT_ERROR_VERBOSE 275
|
||||
#define PERCENT_EXPECT 276
|
||||
#define PERCENT_EXPECT_RR 277
|
||||
#define PERCENT_FILE_PREFIX 278
|
||||
#define PERCENT_GLR_PARSER 279
|
||||
#define PERCENT_INITIAL_ACTION 280
|
||||
#define PERCENT_LEX_PARAM 281
|
||||
#define PERCENT_LOCATIONS 282
|
||||
#define PERCENT_NAME_PREFIX 283
|
||||
#define PERCENT_NO_DEFAULT_PREC 284
|
||||
#define PERCENT_NO_LINES 285
|
||||
#define PERCENT_NONDETERMINISTIC_PARSER 286
|
||||
#define PERCENT_OUTPUT 287
|
||||
#define PERCENT_PARSE_PARAM 288
|
||||
#define PERCENT_PURE_PARSER 289
|
||||
#define PERCENT_REQUIRE 290
|
||||
#define PERCENT_SKELETON 291
|
||||
#define PERCENT_START 292
|
||||
#define PERCENT_TOKEN_TABLE 293
|
||||
#define PERCENT_VERBOSE 294
|
||||
#define PERCENT_YACC 295
|
||||
#define BRACED_CODE 296
|
||||
#define CHAR 297
|
||||
#define EPILOGUE 298
|
||||
#define EQUAL 299
|
||||
#define ID 300
|
||||
#define ID_COLON 301
|
||||
#define PERCENT_PERCENT 302
|
||||
#define PIPE 303
|
||||
#define PROLOGUE 304
|
||||
#define EPILOGUE 305
|
||||
#define BRACED_CODE 306
|
||||
#define SEMICOLON 305
|
||||
#define TYPE 306
|
||||
#define PERCENT_UNION 307
|
||||
|
||||
|
||||
|
||||
@@ -156,9 +158,10 @@ typedef union YYSTYPE
|
||||
char *chars;
|
||||
assoc assoc;
|
||||
uniqstr uniqstr;
|
||||
unsigned char character;
|
||||
}
|
||||
/* Line 1529 of yacc.c. */
|
||||
#line 162 "../../src/parse-gram.h"
|
||||
/* Line 1528 of yacc.c. */
|
||||
#line 165 "../../src/parse-gram.h"
|
||||
YYSTYPE;
|
||||
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
|
||||
# define YYSTYPE_IS_DECLARED 1
|
||||
|
||||
Reference in New Issue
Block a user