/* original parser id follows */ /* yysccsid[] = "@(#)yaccpar 1.9 (Berkeley) 02/21/93" */ /* (use YYMAJOR/YYMINOR for ifdefs dependent on parser version) */ #define YYBYACC 1 #define YYMAJOR 2 #define YYMINOR 0 #define YYPATCH 20241231 #define YYEMPTY (-1) #define yyclearin (yychar = YYEMPTY) #define yyerrok (yyerrflag = 0) #define YYRECOVERING() (yyerrflag != 0) #define YYENOMEM (-2) #define YYEOF 0 #undef YYBTYACC #define YYBTYACC 0 #define YYDEBUGSTR YYPREFIX "debug" #define YYPREFIX "yy" #define YYPURE 0 #line 23 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" /* */ #define DONTDECLARE_MALLOC #include "sysdep.h" #include "libiberty.h" #include "bfd.h" #include "bfdlink.h" #include "ctf-api.h" #include "ld.h" #include "ldexp.h" #include "ldver.h" #include "ldlang.h" #include "ldfile.h" #include "ldemul.h" #include "ldmisc.h" #include "ldmain.h" #include "mri.h" #include "ldctor.h" #include "ldlex.h" #ifndef YYDEBUG #define YYDEBUG 1 #endif static enum section_type sectype; static etree_type *sectype_value; static lang_memory_region_type *region; static bool ldgram_had_keep = false; static char *ldgram_vers_current_lang = NULL; #define ERROR_NAME_MAX 20 static char *error_names[ERROR_NAME_MAX]; static int error_index; #define PUSH_ERROR(x) if (error_index < ERROR_NAME_MAX) error_names[error_index] = x; error_index++; #define POP_ERROR() error_index--; static void yyerror (const char *); #ifdef YYSTYPE #undef YYSTYPE_IS_DECLARED #define YYSTYPE_IS_DECLARED 1 #endif #ifndef YYSTYPE_IS_DECLARED #define YYSTYPE_IS_DECLARED 1 #line 65 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" typedef union YYSTYPE { bfd_vma integer; struct big_int { bfd_vma integer; char *str; } bigint; fill_type *fill; char *name; const char *cname; struct wildcard_spec wildcard; struct wildcard_list *wildcard_list; struct name_list *name_list; struct flag_info_list *flag_info_list; struct flag_info *flag_info; int token; union etree_union *etree; struct phdr_info { bool filehdr; bool phdrs; union etree_union *at; union etree_union *flags; } phdr; struct lang_nocrossref *nocrossref; struct lang_output_section_phdr_list *section_phdr; struct bfd_elf_version_deps *deflist; struct bfd_elf_version_expr *versyms; struct bfd_elf_version_tree *versnode; } YYSTYPE; #endif /* !YYSTYPE_IS_DECLARED */ #line 104 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" /* compatibility with bison */ #ifdef YYPARSE_PARAM /* compatibility with FreeBSD */ # ifdef YYPARSE_PARAM_TYPE # define YYPARSE_DECL() yyparse(YYPARSE_PARAM_TYPE YYPARSE_PARAM) # else # define YYPARSE_DECL() yyparse(void *YYPARSE_PARAM) # endif #else # define YYPARSE_DECL() yyparse(void) #endif /* Parameters sent to lex. */ #ifdef YYLEX_PARAM # define YYLEX_DECL() yylex(void *YYLEX_PARAM) # define YYLEX yylex(YYLEX_PARAM) #else # define YYLEX_DECL() yylex(void) # define YYLEX yylex() #endif #if !(defined(yylex) || defined(YYSTATE)) int YYLEX_DECL(); #endif /* Parameters sent to yyerror. */ #ifndef YYERROR_DECL #define YYERROR_DECL() yyerror(const char *s) #endif #ifndef YYERROR_CALL #define YYERROR_CALL(msg) yyerror(msg) #endif extern int YYPARSE_DECL(); #define INT 257 #define NAME 258 #define LNAME 259 #define PLUSEQ 260 #define MINUSEQ 261 #define MULTEQ 262 #define DIVEQ 263 #define LSHIFTEQ 264 #define RSHIFTEQ 265 #define ANDEQ 266 #define OREQ 267 #define XOREQ 268 #define OROR 269 #define ANDAND 270 #define EQ 271 #define NE 272 #define LE 273 #define GE 274 #define LSHIFT 275 #define RSHIFT 276 #define UNARY 277 #define END 278 #define ALIGN_K 279 #define BLOCK 280 #define BIND 281 #define QUAD 282 #define SQUAD 283 #define LONG 284 #define SHORT 285 #define BYTE 286 #define ASCIZ 287 #define SECTIONS 288 #define PHDRS 289 #define INSERT_K 290 #define AFTER 291 #define BEFORE 292 #define LINKER_VERSION 293 #define DATA_SEGMENT_ALIGN 294 #define DATA_SEGMENT_RELRO_END 295 #define DATA_SEGMENT_END 296 #define SORT_BY_NAME 297 #define SORT_BY_ALIGNMENT 298 #define SORT_NONE 299 #define SORT_BY_INIT_PRIORITY 300 #define REVERSE 301 #define SIZEOF_HEADERS 302 #define OUTPUT_FORMAT 303 #define FORCE_COMMON_ALLOCATION 304 #define OUTPUT_ARCH 305 #define INHIBIT_COMMON_ALLOCATION 306 #define FORCE_GROUP_ALLOCATION 307 #define SEGMENT_START 308 #define INCLUDE 309 #define MEMORY 310 #define REGION_ALIAS 311 #define LD_FEATURE 312 #define NOLOAD 313 #define DSECT 314 #define COPY 315 #define INFO 316 #define OVERLAY 317 #define READONLY 318 #define TYPE 319 #define DEFINED 320 #define TARGET_K 321 #define SEARCH_DIR 322 #define MAP 323 #define ENTRY 324 #define NEXT 325 #define SIZEOF 326 #define ALIGNOF 327 #define ADDR 328 #define LOADADDR 329 #define MAX_K 330 #define MIN_K 331 #define STARTUP 332 #define HLL 333 #define SYSLIB 334 #define FLOAT 335 #define NOFLOAT 336 #define NOCROSSREFS 337 #define NOCROSSREFS_TO 338 #define ORIGIN 339 #define FILL 340 #define LENGTH 341 #define CREATE_OBJECT_SYMBOLS 342 #define INPUT 343 #define GROUP 344 #define OUTPUT 345 #define CONSTRUCTORS 346 #define ALIGNMOD 347 #define AT 348 #define SUBALIGN 349 #define HIDDEN 350 #define PROVIDE 351 #define PROVIDE_HIDDEN 352 #define AS_NEEDED 353 #define CHIP 354 #define LIST 355 #define SECT 356 #define ABSOLUTE 357 #define LOAD 358 #define NEWLINE 359 #define ENDWORD 360 #define ORDER 361 #define NAMEWORD 362 #define ASSERT_K 363 #define LOG2CEIL 364 #define FORMAT 365 #define PUBLIC 366 #define DEFSYMEND 367 #define BASE 368 #define ALIAS 369 #define TRUNCATE 370 #define REL 371 #define INPUT_SCRIPT 372 #define INPUT_MRI_SCRIPT 373 #define INPUT_DEFSYM 374 #define CASE 375 #define EXTERN 376 #define START 377 #define VERS_TAG 378 #define VERS_IDENTIFIER 379 #define GLOBAL 380 #define LOCAL 381 #define VERSIONK 382 #define INPUT_VERSION_SCRIPT 383 #define INPUT_SECTION_ORDERING_SCRIPT 384 #define KEEP 385 #define ONLY_IF_RO 386 #define ONLY_IF_RW 387 #define SPECIAL 388 #define INPUT_SECTION_FLAGS 389 #define ALIGN_WITH_INPUT 390 #define EXCLUDE_FILE 391 #define CONSTANT 392 #define INPUT_DYNAMIC_LIST 393 #define YYERRCODE 256 typedef int YYINT; static const YYINT yylhs[] = { -1, 0, 0, 0, 0, 0, 0, 35, 46, 44, 48, 40, 47, 47, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 54, 49, 49, 49, 50, 50, 50, 52, 52, 51, 51, 19, 19, 19, 53, 53, 53, 56, 39, 55, 55, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 68, 57, 57, 69, 57, 57, 57, 70, 57, 57, 57, 57, 57, 72, 67, 71, 71, 71, 71, 71, 71, 73, 71, 74, 71, 75, 71, 59, 76, 76, 76, 65, 65, 79, 65, 20, 23, 23, 24, 24, 22, 22, 22, 22, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 14, 14, 15, 12, 12, 13, 13, 81, 81, 81, 81, 81, 81, 82, 83, 82, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 85, 84, 87, 84, 88, 88, 86, 86, 25, 25, 25, 25, 25, 11, 10, 10, 30, 30, 30, 30, 30, 30, 30, 30, 30, 78, 78, 45, 45, 45, 45, 45, 80, 80, 58, 89, 89, 90, 90, 92, 91, 95, 91, 93, 94, 32, 32, 96, 96, 97, 97, 61, 62, 62, 98, 98, 63, 99, 99, 64, 64, 27, 27, 27, 100, 18, 101, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 102, 103, 1, 1, 1, 1, 1, 1, 1, 1, 1, 17, 17, 4, 4, 9, 9, 34, 34, 8, 8, 33, 33, 33, 33, 104, 105, 106, 107, 77, 108, 109, 111, 112, 77, 113, 114, 77, 115, 77, 116, 116, 116, 116, 116, 116, 116, 116, 31, 31, 31, 2, 2, 2, 2, 7, 7, 29, 29, 16, 16, 28, 28, 110, 117, 118, 119, 110, 60, 120, 120, 122, 123, 121, 5, 26, 26, 26, 6, 6, 125, 43, 124, 124, 126, 127, 129, 41, 130, 66, 128, 128, 131, 131, 131, 38, 38, 37, 37, 37, 37, 37, 36, 36, 36, 36, 132, 36, 134, 36, 36, 36, 36, 36, 36, 36, 133, 133, 136, 42, 135, 135, 135, 138, 139, 137, }; static const YYINT yylen[] = { 2, 2, 2, 2, 2, 2, 2, 1, 0, 2, 0, 2, 3, 0, 2, 4, 1, 1, 2, 1, 4, 4, 3, 2, 4, 3, 4, 4, 4, 4, 4, 2, 2, 2, 4, 4, 2, 2, 2, 2, 0, 5, 2, 0, 3, 2, 0, 1, 3, 1, 3, 0, 1, 3, 1, 2, 3, 0, 2, 2, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 4, 8, 4, 1, 1, 1, 4, 0, 5, 4, 0, 5, 4, 4, 0, 5, 3, 3, 6, 4, 0, 2, 1, 3, 2, 1, 3, 2, 0, 5, 0, 7, 0, 6, 4, 2, 2, 0, 4, 2, 0, 7, 1, 1, 5, 1, 4, 1, 4, 4, 7, 1, 4, 4, 4, 7, 7, 7, 7, 4, 7, 7, 1, 3, 4, 2, 1, 3, 1, 1, 2, 3, 4, 4, 5, 1, 0, 5, 1, 2, 1, 1, 4, 1, 4, 2, 4, 1, 0, 8, 0, 5, 2, 1, 0, 1, 1, 1, 1, 1, 1, 1, 2, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 6, 6, 6, 1, 0, 4, 1, 0, 3, 1, 0, 7, 0, 5, 3, 3, 0, 3, 1, 2, 1, 2, 4, 4, 3, 3, 1, 4, 3, 0, 1, 1, 0, 2, 3, 0, 4, 0, 2, 2, 3, 4, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 3, 4, 1, 1, 2, 2, 2, 2, 4, 4, 4, 6, 6, 6, 4, 0, 0, 8, 4, 1, 6, 6, 6, 2, 2, 4, 3, 0, 4, 0, 4, 0, 1, 0, 4, 0, 1, 1, 1, 0, 0, 0, 0, 0, 19, 0, 0, 0, 0, 17, 0, 0, 7, 0, 5, 1, 1, 1, 1, 1, 6, 1, 3, 3, 0, 2, 3, 2, 6, 10, 2, 1, 0, 1, 2, 0, 0, 3, 0, 0, 0, 0, 11, 4, 0, 2, 0, 0, 6, 1, 0, 3, 5, 0, 3, 0, 2, 1, 2, 4, 2, 0, 2, 0, 5, 1, 2, 4, 5, 6, 1, 2, 0, 2, 4, 4, 8, 1, 1, 3, 3, 0, 9, 0, 7, 1, 3, 1, 3, 1, 3, 0, 1, 0, 2, 2, 2, 0, 0, 0, 8, }; static const YYINT yydefred[] = { 0, 57, 10, 8, 355, 387, 349, 0, 1, 60, 2, 13, 6, 0, 3, 0, 4, 391, 5, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 359, 0, 0, 0, 351, 0, 0, 0, 0, 77, 0, 79, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 221, 222, 0, 0, 0, 81, 0, 114, 0, 70, 0, 59, 61, 62, 63, 64, 65, 66, 67, 68, 69, 0, 16, 0, 0, 0, 0, 17, 0, 0, 0, 19, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 178, 179, 180, 181, 228, 182, 183, 184, 185, 186, 228, 0, 0, 0, 372, 0, 371, 0, 0, 0, 0, 0, 360, 0, 390, 389, 379, 381, 0, 0, 352, 111, 338, 0, 0, 0, 0, 7, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 0, 0, 94, 0, 0, 0, 88, 188, 187, 113, 0, 0, 40, 0, 256, 273, 0, 0, 0, 0, 0, 0, 0, 0, 257, 269, 0, 0, 226, 226, 226, 226, 0, 0, 226, 226, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 47, 0, 0, 33, 23, 0, 0, 0, 37, 52, 0, 54, 0, 42, 12, 189, 0, 190, 0, 0, 0, 0, 0, 0, 0, 0, 0, 392, 0, 0, 0, 0, 90, 91, 0, 0, 60, 201, 0, 0, 0, 200, 0, 0, 0, 0, 0, 0, 0, 215, 217, 0, 0, 0, 0, 0, 0, 0, 94, 0, 0, 0, 0, 0, 0, 13, 0, 0, 234, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 259, 0, 258, 260, 261, 0, 0, 277, 278, 0, 0, 0, 0, 233, 235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, 0, 0, 0, 0, 0, 0, 55, 0, 0, 228, 228, 228, 377, 0, 0, 374, 0, 373, 380, 382, 361, 0, 0, 353, 0, 108, 0, 299, 304, 110, 109, 340, 337, 339, 0, 74, 76, 0, 0, 203, 196, 194, 0, 0, 93, 71, 72, 83, 112, 213, 214, 0, 218, 0, 0, 224, 86, 87, 80, 96, 99, 0, 0, 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, 231, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 236, 237, 238, 0, 0, 0, 50, 48, 44, 0, 0, 35, 34, 53, 56, 0, 0, 0, 0, 0, 0, 0, 364, 362, 0, 0, 0, 307, 0, 0, 0, 0, 85, 0, 0, 0, 199, 0, 216, 219, 225, 102, 98, 101, 0, 0, 82, 0, 89, 358, 41, 0, 264, 272, 0, 0, 268, 270, 255, 232, 0, 0, 0, 263, 0, 279, 262, 0, 191, 192, 193, 0, 0, 375, 365, 363, 0, 170, 171, 172, 173, 174, 0, 161, 0, 0, 0, 0, 0, 154, 155, 162, 0, 0, 0, 152, 0, 0, 117, 0, 119, 121, 0, 0, 149, 157, 167, 0, 0, 0, 0, 0, 0, 0, 111, 325, 0, 0, 305, 0, 0, 0, 211, 0, 0, 209, 0, 0, 92, 0, 106, 97, 100, 0, 0, 0, 0, 0, 0, 227, 0, 0, 0, 0, 0, 0, 0, 0, 159, 0, 0, 0, 164, 228, 0, 150, 0, 0, 116, 0, 0, 0, 0, 0, 0, 142, 125, 0, 0, 0, 0, 0, 228, 153, 393, 166, 309, 310, 311, 312, 313, 0, 0, 319, 0, 0, 0, 0, 0, 0, 321, 0, 324, 327, 0, 0, 0, 0, 341, 0, 212, 208, 210, 0, 0, 204, 0, 0, 104, 115, 265, 266, 267, 0, 274, 275, 276, 378, 0, 0, 0, 0, 0, 0, 0, 0, 0, 175, 0, 0, 0, 136, 0, 0, 140, 0, 0, 0, 0, 0, 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 317, 0, 320, 0, 0, 0, 308, 0, 111, 0, 0, 0, 0, 75, 228, 0, 103, 0, 0, 0, 0, 0, 0, 156, 122, 123, 0, 120, 0, 160, 0, 0, 0, 0, 138, 0, 139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141, 146, 0, 147, 158, 394, 0, 0, 0, 0, 0, 286, 0, 0, 300, 0, 0, 345, 0, 342, 205, 0, 202, 107, 0, 271, 376, 0, 165, 0, 151, 137, 118, 0, 0, 126, 0, 0, 127, 128, 133, 0, 0, 148, 0, 0, 0, 282, 0, 0, 0, 0, 306, 348, 0, 228, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 322, 284, 290, 291, 292, 295, 0, 301, 346, 206, 124, 0, 0, 0, 0, 0, 0, 0, 314, 0, 0, 288, 332, 163, 130, 129, 131, 132, 134, 135, 0, 0, 0, 0, 0, 333, 0, 323, 296, 0, 0, 0, 0, 0, 328, 0, 330, 0, 0, 0, 0, 330, 334, 280, 228, 0, 302, 0, 330, 176, 331, 0, 297, 0, 303, 0, 335, 298, 0, 336, }; #if defined(YYDESTRUCT_CALL) || defined(YYSTYPE_TOSTRING) static const YYINT yystos[] = { 0, 372, 373, 374, 383, 384, 393, 395, 434, 451, 435, 443, 439, 441, 436, 524, 437, 531, 438, 520, 450, 442, 258, 350, 351, 352, 440, 123, 378, 523, 526, 530, 123, 519, 521, 288, 289, 290, 303, 304, 305, 306, 307, 309, 310, 311, 312, 321, 322, 323, 324, 332, 333, 334, 335, 336, 337, 338, 343, 344, 345, 363, 376, 59, 440, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 525, 258, 279, 309, 347, 354, 355, 356, 357, 358, 360, 361, 362, 365, 366, 368, 369, 370, 375, 376, 377, 444, 260, 261, 262, 263, 61, 264, 265, 266, 267, 268, 425, 40, 40, 40, 258, 376, 379, 380, 381, 431, 432, 123, 526, 258, 460, 532, 380, 381, 431, 522, 521, 123, 123, 291, 292, 40, 40, 258, 430, 123, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 463, 40, 474, 40, 44, 59, 473, 382, 258, 430, 258, 257, 258, 43, 45, 40, 279, 280, 294, 295, 296, 302, 308, 320, 325, 326, 327, 328, 329, 330, 331, 339, 341, 357, 363, 364, 392, 33, 126, 396, 258, 258, 446, 258, 447, 445, 258, 258, 258, 396, 258, 257, 258, 414, 258, 448, 258, 359, 398, 496, 398, 258, 258, 258, 258, 58, 58, 59, 125, 432, 58, 59, 125, 471, 515, 258, 258, 258, 258, 464, 258, 309, 484, 485, 486, 258, 258, 258, 430, 430, 258, 430, 41, 430, 493, 494, 258, 422, 422, 462, 467, 40, 430, 40, 465, 123, 61, 44, 449, 61, 44, 396, 396, 396, 40, 40, 40, 40, 40, 497, 40, 40, 413, 495, 413, 413, 413, 40, 40, 413, 413, 40, 40, 40, 40, 396, 396, 63, 269, 270, 124, 94, 38, 271, 272, 60, 62, 273, 274, 275, 276, 43, 45, 42, 47, 37, 44, 61, 44, 396, 44, 44, 258, 44, 61, 44, 396, 44, 44, 258, 44, 396, 61, 61, 61, 123, 431, 431, 258, 376, 379, 380, 381, 59, 125, 533, 59, 258, 125, 309, 317, 344, 460, 472, 258, 125, 516, 44, 41, 41, 450, 487, 430, 125, 44, 475, 44, 41, 41, 41, 41, 41, 41, 41, 475, 41, 475, 44, 422, 41, 41, 41, 258, 259, 353, 466, 462, 41, 396, 448, 523, 396, 396, 442, 396, 396, 41, 396, 396, 396, 396, 396, 40, 258, 396, 40, 396, 396, 396, 396, 396, 258, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 258, 258, 258, 396, 396, 257, 258, 258, 258, 398, 398, 398, 529, 59, 59, 258, 378, 59, 433, 123, 499, 430, 503, 508, 517, 258, 278, 40, 427, 490, 486, 258, 430, 430, 422, 40, 258, 259, 353, 44, 41, 44, 41, 125, 278, 44, 41, 41, 44, 44, 41, 258, 41, 41, 258, 44, 44, 41, 44, 41, 41, 58, 41, 41, 41, 431, 381, 123, 378, 59, 258, 282, 283, 284, 285, 286, 287, 293, 297, 299, 301, 309, 340, 342, 346, 363, 385, 389, 391, 59, 91, 410, 415, 417, 418, 419, 420, 440, 476, 477, 479, 481, 483, 40, 281, 396, 397, 426, 510, 58, 396, 402, 397, 396, 400, 44, 258, 33, 491, 492, 58, 484, 41, 468, 40, 258, 259, 353, 258, 396, 396, 396, 498, 41, 396, 396, 258, 396, 59, 528, 58, 527, 258, 40, 40, 40, 430, 40, 480, 40, 40, 40, 258, 297, 298, 299, 300, 301, 408, 416, 419, 258, 297, 91, 417, 40, 40, 473, 125, 479, 313, 314, 315, 316, 317, 318, 319, 41, 511, 40, 40, 426, 348, 399, 58, 471, 58, 337, 424, 509, 258, 348, 421, 258, 258, 41, 492, 339, 488, 278, 466, 470, 40, 41, 41, 41, 41, 44, 41, 41, 41, 125, 431, 431, 301, 346, 419, 419, 297, 418, 482, 398, 406, 40, 478, 258, 409, 407, 415, 40, 40, 40, 40, 40, 93, 475, 40, 408, 40, 408, 398, 534, 40, 61, 41, 396, 58, 40, 279, 404, 278, 399, 123, 40, 401, 40, 518, 41, 61, 475, 41, 466, 469, 396, 59, 528, 40, 41, 41, 41, 40, 41, 481, 41, 396, 258, 476, 38, 41, 41, 415, 297, 298, 419, 297, 298, 419, 419, 419, 297, 300, 416, 93, 408, 41, 41, 475, 319, 396, 41, 396, 40, 390, 429, 349, 403, 471, 396, 421, 396, 59, 398, 341, 489, 41, 466, 41, 125, 418, 278, 44, 41, 258, 415, 40, 40, 41, 40, 40, 41, 41, 41, 40, 40, 41, 61, 280, 426, 41, 396, 403, 40, 504, 125, 41, 41, 61, 41, 41, 258, 419, 419, 419, 419, 418, 418, 396, 40, 58, 41, 386, 387, 388, 428, 396, 123, 421, 398, 41, 41, 41, 41, 41, 41, 41, 41, 41, 396, 500, 41, 506, 473, 41, 41, 41, 41, 41, 41, 41, 123, 505, 426, 481, 258, 125, 58, 125, 512, 62, 411, 501, 123, 258, 348, 412, 411, 481, 62, 423, 412, 125, 258, 61, 58, 405, 423, 513, 406, 258, 507, 405, 423, 475, 502, 405, 475, 514, 475, }; #endif /* YYDESTRUCT_CALL || YYSTYPE_TOSTRING */ static const YYINT yydgoto[] = { 7, 262, 529, 644, 606, 537, 677, 534, 728, 672, 837, 645, 650, 581, 649, 514, 822, 827, 271, 202, 515, 582, 516, 517, 518, 519, 615, 246, 831, 611, 107, 530, 451, 786, 726, 135, 116, 117, 441, 8, 10, 14, 16, 18, 12, 64, 13, 21, 11, 96, 194, 191, 193, 204, 257, 20, 9, 65, 66, 67, 68, 69, 70, 71, 72, 341, 74, 248, 149, 228, 253, 374, 249, 546, 685, 624, 222, 342, 155, 151, 658, 521, 522, 647, 523, 571, 524, 643, 525, 231, 232, 233, 350, 621, 736, 452, 541, 542, 243, 244, 272, 208, 268, 555, 443, 801, 823, 846, 445, 765, 813, 803, 842, 446, 612, 531, 601, 820, 839, 849, 223, 345, 447, 679, 33, 19, 34, 126, 29, 15, 75, 30, 564, 562, 435, 31, 17, 122, 334, 664, }; static const YYINT yysindex[] = { 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -218, 0, -77, 0, 0, 0, -28, 2312, 3609, 983, 57, 86, 95, 0, 129, 37, -77, 0, 483, 248, -28, 0, 59, 72, -205, 103, 0, 159, 0, 0, -106, 110, 196, 273, 275, 280, 288, 294, 302, 316, 321, 0, 0, 339, 348, 350, 0, 355, 0, 362, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -224, 0, -89, -106, 66, 2036, 0, 151, 166, 170, 0, 0, 180, 182, 192, 2036, 197, 202, 207, 208, 213, 116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219, 226, 227, 0, 228, 0, 431, 435, 436, 371, 129, 0, 387, 0, 0, 0, 0, 440, 378, 0, 0, 0, 246, 257, 258, 260, 0, 0, -200, 266, 269, 278, -106, -106, 282, -106, 21, 0, 283, 283, 0, 503, -106, 506, 0, 0, 0, 0, 425, 75, 0, 77, 0, 0, 2036, 2036, 2036, 509, 512, 518, 521, 522, 0, 0, 524, 525, 0, 0, 0, 0, 529, 530, 0, 0, 531, 532, 535, 540, 2036, 2036, 2078, 1595, 0, 541, 0, 542, 7, 0, 0, 1704, 3792, 544, 0, 0, 546, 0, 29, 0, 0, 0, 2036, 0, 537, 545, 547, 469, 248, 248, 284, 543, 471, 0, 284, 556, 691, -66, 0, 0, 71, 560, 0, 0, -106, 492, 579, 0, 581, 585, 590, 599, 601, 615, 632, 0, 0, 87, 96, 35, 640, 641, 642, 139, 0, 643, 2036, 208, -77, 2036, 2036, 0, 2036, 2036, 0, 0, 2449, 2036, 2036, 2036, 2036, 2036, 646, 430, 2036, 0, 659, 0, 0, 0, 2036, 2036, 0, 0, 2036, 2036, 2036, 450, 0, 0, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 2036, 3792, 451, 452, 0, 459, 2036, 2036, 3792, 161, 460, 0, 461, 3792, 0, 0, 0, 0, 664, 665, 0, 470, 0, 0, 0, 0, -42, 604, 0, 983, 0, -106, 0, 0, 0, 0, 0, 0, 0, 472, 0, 0, 2244, 693, 0, 0, 0, -200, 473, 0, 0, 0, 0, 0, 0, 0, -106, 0, -106, 283, 0, 0, 0, 0, 0, 0, 694, -5, 701, 0, 2566, 11, -100, 3792, 3792, 3578, 3792, 3792, 0, 925, 2635, 2649, 2689, 2703, 477, 702, 2739, 487, 2806, 2833, 2906, 2943, 2991, 705, 3002, 1317, 856, 1610, 1010, 1634, 394, 394, 51, 51, 51, 51, 112, 112, 335, 335, 0, 0, 0, 3792, 3792, 3792, 0, 0, 0, 3792, 3792, 0, 0, 0, 0, 706, 707, 708, 248, 295, 284, 627, 0, 0, -41, 2155, 1895, 0, 1949, 1895, 2036, 709, 0, -2, 696, -200, 0, 711, 0, 0, 0, 0, 0, 0, 715, 194, 0, 499, 0, 0, 0, 2036, 0, 0, 2036, 2036, 0, 0, 0, 0, 717, 2036, 2036, 0, 501, 0, 0, 2036, 0, 0, 0, 703, 716, 0, 0, 0, 983, 0, 0, 0, 0, 0, 505, 0, 725, 726, 729, -106, 733, 0, 0, 0, 736, 738, 740, 0, -197, -53, 0, 741, 0, 0, 744, 46, 0, 0, 0, 660, 2155, 1506, 756, 3050, 455, 747, 0, 0, 3096, 475, 0, 3792, -202, 548, 0, 555, 12, 0, 476, 536, 0, 139, 0, 0, 0, 784, 785, 3108, 3146, 3186, 781, 0, 3249, 3299, 786, 3792, 284, 704, 248, 248, 0, -195, -159, -136, 0, 0, 790, 0, 573, 574, 0, 797, 798, 799, 800, 801, 20, 0, 0, 0, 802, -197, 804, -197, 0, 0, 0, 0, 0, 0, 0, 0, 0, 805, 787, 0, 806, 2036, 98, 791, 810, 572, 0, 458, 0, 0, 455, 730, 812, 816, 0, 818, 0, 0, 0, 803, 579, 0, -20, 139, 0, 0, 0, 0, 0, 2036, 0, 0, 0, 0, 809, 703, 822, 824, 831, 832, 834, 840, 2155, 0, 842, 2036, -16, 0, 133, 36, 0, 175, 193, -159, -159, -208, 0, -197, -159, 24, -197, 109, 845, 579, 568, 2036, 0, 3349, 0, 2036, 848, 500, 0, 551, 0, 2036, -202, 2036, 830, 0, 0, 550, 0, -9, 139, 3387, 284, 767, -187, 0, 0, 0, -187, 0, 617, 0, 3432, 0, 855, 639, 0, 574, 0, 862, 865, 867, 869, 872, 873, 876, 878, 881, 882, 0, 0, 134, 0, 0, 0, 852, 3792, 4, 3467, 2036, 0, 551, 883, 0, 1702, 3502, 0, 3540, 0, 0, 874, 0, 0, -7, 0, 0, 886, 0, 672, 0, 0, 0, -159, -159, 0, -159, -159, 0, 0, 0, -187, -187, 0, 2036, 896, 879, 0, 3552, 168, 2036, 815, 0, 0, -202, 0, 0, 898, 902, 903, 904, 905, 906, 907, 910, 3590, 2036, 0, 0, 0, 0, 0, 0, 3628, 0, 0, 0, 0, 46, 911, 913, 916, 917, 920, 923, 0, 3723, 853, 0, 0, 0, 0, 0, 0, 0, 0, 0, 941, 2155, 2, 924, 858, 0, 922, 0, 0, 870, 731, 644, 922, 2155, 0, 932, 0, 644, 871, 737, 296, 0, 0, 0, 0, 739, 0, 296, 0, 0, 0, 579, 0, 296, 0, 579, 0, 0, 579, 0, }; static const YYINT yyrindex[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 6, 0, 0, 0, 0, 0, 877, 0, 965, 0, 998, 0, 999, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 0, 942, 945, 0, 0, 877, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 966, 966, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 652, 0, 0, 657, 0, 661, 667, 0, 0, 0, 668, 0, 0, 0, 669, 0, 677, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 899, 0, 0, 0, 912, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 189, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180, 180, 966, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 686, 0, 0, 0, 0, 0, 0, 687, 0, 0, 0, 0, 1017, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 1806, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 674, 992, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 966, 0, 0, 0, 0, 0, 0, 0, 982, 0, 0, 0, 0, 0, 692, 700, 712, 714, 719, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1365, 1349, 1262, 1213, 1164, 662, 1022, 760, 817, 866, 915, 420, 519, 259, 363, 0, 0, 0, 720, 723, 724, 0, 0, 0, 734, 735, 0, 0, 0, 0, 0, 0, 0, 0, 939, 940, 0, 0, 0, 0, 943, 1009, 0, 0, 1009, 0, 0, 0, 0, 0, 796, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 967, 1037, 0, 0, 0, 2125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -97, 0, 0, 1009, 271, 0, 0, 0, 0, -87, 0, -18, 1038, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1410, 973, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -133, 0, 0, -11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1058, 0, 0, 0, 0, 0, 0, 0, -81, 0, 0, 0, 0, -104, 0, 22, 0, 0, 0, 0, 0, 0, 0, 759, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 967, 0, 0, 0, 0, 0, 0, 825, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -133, 0, -133, 0, 8, 0, 0, 0, 0, 0, 0, 0, 114, 0, 979, 0, 0, 1038, 0, 0, 0, 0, 0, 0, 0, 0, 0, 980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -133, 0, 0, 0, 0, 1065, 1009, 0, 0, 0, -76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 984, 0, 0, 0, 0, 1038, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1009, 943, 0, 0, 0, 0, -1, 0, 0, 0, 0, 388, -1, 943, 0, 0, 0, 388, 0, 0, 118, 0, 0, 0, 0, 0, 0, 118, 0, 0, 0, 1143, 0, 5, 0, 1143, 0, 0, 38, 0, }; #if YYBTYACC static const YYINT yycindex[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; #endif static const YYINT yygindex[] = { 0, -79, 663, -92, 502, 0, 0, 0, 389, 0, -753, 279, 0, -514, 0, 0, 297, 289, 345, 0, -509, 463, 608, -182, 1290, 0, -623, -125, -716, 0, 0, -516, 0, 0, 0, -74, -25, 1000, 0, 0, 0, 0, 0, 0, 0, -13, 0, 868, 0, 0, 0, 0, 0, 890, 0, 921, 0, 0, 0, 0, 0, 0, 0, 0, 0, -4, 0, 895, 0, 0, 0, -513, 0, 0, 0, 0, -505, 0, -500, 0, -230, 486, 0, 0, 623, 0, -443, 0, 0, 698, 0, 808, 0, 0, 0, 0, 0, 610, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1119, 0, 900, 0, 0, -24, 0, 517, 0, 0, 0, 0, 0, 0, }; #define YYTABLESIZE 4068 static const YYINT yytable[] = { 26, 188, 354, 58, 158, 119, 11, 125, 195, 207, 51, 198, 604, 363, 365, 209, 73, 440, 492, 283, 590, 683, 247, 27, 462, 466, 608, 121, 169, 116, 144, 540, 737, 623, 770, 462, 326, 462, 586, 462, 22, 343, 285, 329, 603, 540, 27, 289, 144, 177, 575, 312, 465, 618, 731, 319, 613, 329, 229, 344, 329, 575, 241, 575, 353, 651, 237, 238, 353, 240, 242, 575, 660, 319, 662, 513, 251, 702, 383, 366, 144, 347, 384, 260, 261, 843, 130, 131, 304, 712, 153, 847, 713, 302, 300, 32, 301, 108, 303, 575, 576, 577, 578, 579, 580, 154, 637, 284, 285, 230, 308, 684, 347, 657, 144, 346, 838, 715, 315, 256, 367, 259, 575, 844, 329, 195, 109, 817, 362, 320, 177, 353, 23, 24, 25, 110, 255, 364, 258, 600, 353, 703, 637, 132, 383, 789, 614, 716, 384, 304, 717, 638, 134, 353, 302, 300, 351, 301, 156, 303, 118, 641, 177, 195, 195, 195, 195, 195, 195, 157, 729, 700, 738, 377, 701, 757, 380, 381, 353, 383, 384, 169, 128, 511, 386, 387, 388, 389, 390, 325, 326, 393, 343, 746, 511, 129, 511, 395, 396, 133, 695, 397, 398, 399, 511, 584, 760, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 432, 433, 434, 511, 136, 426, 427, 137, 287, 459, 460, 343, 457, 698, 177, 585, 283, 502, 144, 503, 459, 460, 459, 460, 459, 460, 511, 539, 329, 195, 239, 816, 326, 326, 177, 444, 311, 195, 144, 285, 318, 539, 144, 144, 144, 144, 144, 144, 329, 28, 134, 347, 585, 144, 502, 759, 503, 144, 318, 144, 455, 144, 456, 804, 245, 575, 814, 195, 239, 144, 239, 239, 28, 239, 239, 239, 285, 285, 285, 329, 285, 289, 289, 289, 138, 197, 139, 329, 239, 239, 239, 140, 239, 239, 329, 159, 51, 298, 299, 141, 144, 343, 144, 195, 461, 142, 144, 439, 491, 511, 144, 144, 144, 143, 329, 461, 73, 461, 329, 461, 329, 329, 329, 144, 239, 836, 119, 144, 835, 195, 195, 195, 145, 329, 240, 528, 43, 533, 528, 536, 815, 347, 195, 304, 510, 144, 511, 177, 302, 144, 146, 144, 829, 303, 239, 239, 357, 642, 111, 147, 552, 148, 682, 553, 554, 283, 150, 177, 371, 372, 557, 558, 240, 152, 240, 240, 560, 240, 240, 240, 189, 488, 593, 594, 595, 596, 597, 598, 599, 428, 429, 241, 240, 240, 240, 190, 240, 240, 177, 192, 520, 569, 304, 281, 575, 719, 177, 302, 300, 195, 301, 196, 303, 177, 116, 143, 219, 281, 195, 101, 281, 197, 575, 548, 549, 294, 199, 295, 240, 241, 200, 241, 241, 177, 287, 241, 201, 203, 197, 177, 177, 177, 205, 704, 705, 642, 206, 637, 210, 241, 241, 241, 177, 241, 241, 211, 212, 213, 240, 240, 214, 707, 708, 373, 215, 637, 216, 217, 663, 195, 220, 287, 287, 287, 221, 224, 112, 111, 642, 113, 114, 115, 741, 520, 281, 241, 225, 226, 239, 227, 242, 273, 274, 275, 668, 234, 278, 279, 235, 239, 239, 239, 239, 239, 239, 239, 239, 236, 239, 635, 636, 239, 245, 327, 250, 241, 241, 252, 550, 254, 263, 283, 686, 264, 327, 783, 784, 785, 242, 265, 242, 242, 266, 267, 242, 269, 270, 511, 697, 239, 276, 277, 280, 281, 777, 778, 282, 239, 242, 242, 242, 283, 242, 242, 239, 511, 309, 310, 721, 316, 734, 317, 723, 324, 1, 2, 3, 333, 730, 321, 732, 239, 348, 332, 239, 4, 5, 322, 239, 323, 239, 239, 239, 845, 242, 6, 335, 848, 352, 239, 850, 283, 240, 239, 353, 112, 355, 356, 113, 123, 124, 520, 357, 240, 240, 240, 240, 240, 240, 240, 240, 358, 240, 359, 242, 242, 762, 281, 97, 98, 99, 100, 102, 103, 104, 105, 106, 360, 283, 283, 283, 328, 283, 243, 329, 330, 331, 281, 296, 297, 298, 299, 328, 240, 361, 329, 330, 489, 790, 241, 779, 240, 368, 369, 370, 376, 787, 391, 240, 392, 241, 241, 241, 241, 241, 241, 241, 241, 281, 241, 394, 243, 800, 243, 243, 240, 281, 243, 240, 400, 423, 424, 240, 281, 240, 240, 240, 336, 425, 430, 431, 243, 243, 240, 436, 437, 243, 240, 442, 438, 241, 448, 454, 281, 450, 458, 474, 673, 241, 281, 281, 281, 120, 463, 475, 241, 477, 483, 485, 486, 487, 490, 281, 545, 538, 543, 547, 243, 551, 556, 559, 247, 241, 561, 565, 241, 566, 567, 338, 241, 568, 241, 241, 241, 570, 563, 339, 572, 242, 573, 241, 574, 588, 50, 241, 589, 591, 243, 243, 242, 242, 242, 242, 242, 242, 242, 242, 602, 242, 247, 520, 247, 247, 340, 605, 247, 607, 616, 50, 23, 24, 25, 520, 610, 617, 622, 620, 337, 248, 247, 247, 247, 61, 247, 247, 625, 630, 626, 633, 242, 634, 646, 648, 575, 23, 24, 25, 242, 652, 653, 654, 655, 656, 659, 242, 661, 665, 61, 667, 666, 669, 670, 671, 676, 675, 247, 248, 678, 248, 248, 680, 242, 248, 689, 242, 681, 690, 245, 242, 687, 242, 242, 242, 691, 692, 693, 248, 248, 248, 242, 248, 248, 694, 242, 696, 247, 247, 718, 720, 724, 733, 725, 735, 740, 304, 291, 742, 744, 745, 302, 300, 727, 301, 747, 303, 245, 748, 245, 245, 749, 750, 245, 248, 751, 758, 752, 246, 294, 753, 295, 754, 243, 755, 756, 764, 245, 245, 245, 771, 245, 245, 772, 243, 243, 243, 243, 769, 780, 781, 788, 791, 243, 248, 248, 792, 793, 794, 795, 796, 797, 336, 290, 798, 805, 246, 806, 246, 246, 807, 808, 246, 245, 809, 304, 291, 810, 356, 469, 302, 300, 468, 301, 243, 303, 246, 246, 246, 812, 246, 246, 243, 289, 603, 818, 819, 821, 294, 243, 295, 286, 825, 245, 245, 826, 824, 830, 834, 833, 841, 388, 350, 338, 379, 366, 243, 381, 198, 243, 223, 339, 246, 243, 14, 243, 243, 243, 50, 31, 229, 247, 290, 32, 243, 244, 95, 367, 243, 18, 36, 38, 247, 247, 247, 247, 247, 247, 340, 39, 354, 247, 246, 246, 23, 24, 25, 101, 25, 22, 304, 291, 289, 207, 27, 302, 300, 61, 301, 357, 303, 229, 28, 244, 229, 244, 244, 368, 369, 244, 318, 168, 247, 294, 43, 295, 29, 198, 248, 229, 247, 30, 15, 244, 244, 26, 24, 247, 244, 248, 248, 248, 248, 248, 248, 385, 20, 21, 248, 382, 344, 386, 315, 195, 247, 289, 168, 247, 370, 316, 293, 247, 535, 247, 247, 247, 674, 840, 763, 244, 832, 218, 247, 828, 714, 587, 247, 245, 382, 248, 292, 293, 296, 297, 298, 299, 699, 248, 245, 245, 245, 245, 245, 245, 248, 229, 378, 245, 375, 244, 244, 592, 349, 544, 619, 127, 688, 379, 0, 0, 0, 248, 0, 0, 248, 453, 0, 249, 248, 0, 248, 248, 248, 0, 0, 0, 246, 0, 245, 248, 0, 0, 0, 248, 0, 0, 245, 246, 246, 246, 246, 246, 246, 245, 0, 0, 246, 287, 288, 292, 293, 296, 297, 298, 299, 249, 0, 249, 249, 0, 245, 249, 0, 245, 0, 0, 250, 245, 0, 245, 245, 245, 0, 0, 0, 249, 249, 246, 245, 0, 249, 0, 245, 0, 0, 246, 0, 0, 0, 0, 0, 0, 246, 0, 0, 0, 97, 98, 99, 100, 102, 103, 104, 105, 106, 0, 250, 250, 0, 246, 250, 249, 246, 0, 0, 251, 246, 0, 246, 246, 246, 195, 0, 0, 250, 250, 0, 246, 229, 250, 0, 246, 0, 244, 292, 293, 296, 297, 298, 299, 0, 249, 249, 0, 244, 244, 244, 244, 229, 0, 0, 0, 0, 244, 0, 251, 251, 0, 0, 251, 250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 251, 251, 0, 0, 0, 251, 229, 0, 0, 0, 0, 244, 0, 0, 229, 0, 0, 250, 250, 244, 0, 229, 0, 0, 0, 0, 244, 0, 0, 253, 0, 0, 0, 0, 304, 291, 0, 0, 229, 302, 300, 229, 301, 244, 303, 254, 244, 229, 229, 229, 244, 0, 244, 244, 244, 0, 0, 294, 0, 295, 229, 244, 0, 0, 0, 244, 251, 251, 0, 253, 253, 0, 0, 253, 0, 0, 0, 0, 0, 0, 0, 195, 0, 0, 0, 254, 254, 253, 253, 254, 252, 290, 253, 0, 0, 0, 0, 0, 0, 0, 0, 195, 249, 254, 254, 0, 0, 0, 254, 0, 0, 0, 0, 249, 249, 0, 0, 0, 0, 0, 0, 289, 249, 0, 0, 0, 0, 0, 0, 0, 252, 252, 195, 0, 252, 0, 0, 0, 0, 0, 195, 0, 0, 0, 0, 0, 0, 195, 252, 252, 0, 250, 0, 249, 253, 0, 0, 0, 0, 0, 0, 249, 250, 250, 0, 0, 0, 195, 249, 0, 254, 250, 0, 195, 195, 195, 0, 0, 0, 0, 0, 0, 0, 0, 0, 249, 195, 0, 249, 0, 0, 0, 249, 0, 249, 249, 249, 0, 0, 0, 251, 0, 250, 249, 0, 0, 0, 249, 0, 0, 250, 251, 251, 0, 0, 252, 0, 250, 0, 186, 251, 0, 0, 0, 0, 0, 164, 600, 0, 162, 0, 163, 0, 0, 250, 0, 0, 250, 0, 0, 0, 250, 0, 250, 250, 250, 0, 0, 0, 0, 0, 251, 250, 0, 0, 0, 250, 0, 0, 251, 0, 0, 0, 0, 0, 0, 251, 288, 292, 293, 296, 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 251, 0, 0, 251, 253, 0, 0, 251, 0, 251, 251, 251, 0, 0, 0, 253, 253, 0, 251, 0, 254, 0, 251, 0, 253, 186, 0, 0, 0, 187, 0, 254, 164, 0, 0, 162, 307, 163, 0, 0, 254, 0, 0, 0, 304, 291, 0, 0, 0, 302, 300, 0, 301, 306, 303, 253, 0, 0, 0, 0, 0, 0, 0, 253, 0, 252, 0, 294, 304, 295, 253, 254, 0, 302, 300, 0, 301, 0, 303, 254, 0, 0, 0, 0, 0, 252, 254, 253, 0, 0, 253, 294, 0, 295, 253, 0, 253, 253, 253, 0, 0, 290, 0, 254, 0, 253, 254, 0, 0, 253, 254, 0, 254, 254, 254, 0, 252, 0, 187, 0, 0, 254, 0, 0, 252, 254, 0, 0, 0, 0, 0, 252, 0, 0, 186, 0, 0, 0, 0, 0, 0, 164, 0, 0, 162, 314, 163, 0, 252, 0, 0, 252, 0, 0, 0, 252, 0, 252, 252, 252, 160, 161, 313, 0, 0, 0, 252, 0, 0, 0, 252, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 165, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 167, 168, 169, 583, 0, 0, 0, 0, 170, 0, 0, 0, 0, 0, 171, 0, 0, 0, 0, 593, 594, 595, 596, 597, 598, 599, 172, 766, 0, 0, 187, 173, 174, 175, 176, 177, 178, 179, 0, 294, 0, 0, 0, 0, 0, 180, 294, 181, 0, 294, 0, 294, 160, 161, 0, 0, 639, 640, 0, 0, 0, 0, 0, 182, 294, 0, 0, 0, 0, 183, 184, 0, 0, 0, 165, 166, 583, 0, 583, 0, 0, 292, 293, 296, 297, 298, 299, 0, 0, 167, 168, 169, 0, 0, 0, 0, 0, 170, 185, 0, 0, 0, 0, 171, 0, 292, 293, 296, 297, 298, 299, 0, 0, 0, 0, 172, 0, 0, 0, 0, 173, 174, 175, 176, 177, 178, 179, 0, 186, 0, 0, 0, 294, 0, 180, 526, 181, 0, 162, 0, 163, 0, 706, 709, 710, 711, 0, 0, 583, 639, 0, 583, 182, 0, 0, 0, 0, 0, 183, 184, 336, 160, 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 186, 165, 166, 0, 0, 185, 0, 164, 0, 0, 162, 0, 163, 0, 0, 0, 167, 168, 169, 0, 0, 0, 0, 0, 170, 532, 0, 0, 0, 338, 171, 0, 0, 0, 0, 0, 0, 339, 0, 187, 0, 0, 172, 0, 50, 0, 0, 173, 174, 175, 176, 177, 178, 179, 0, 773, 774, 0, 775, 776, 0, 180, 0, 181, 340, 0, 0, 0, 0, 0, 23, 24, 25, 0, 0, 0, 0, 0, 0, 182, 0, 294, 294, 61, 0, 183, 184, 186, 0, 0, 0, 0, 0, 187, 164, 0, 0, 162, 0, 163, 0, 0, 0, 294, 294, 294, 0, 0, 0, 0, 0, 0, 0, 0, 185, 0, 0, 0, 294, 294, 294, 0, 0, 0, 0, 0, 294, 0, 0, 0, 0, 0, 294, 304, 291, 0, 0, 0, 302, 300, 305, 301, 0, 303, 294, 0, 0, 0, 0, 294, 294, 294, 294, 294, 294, 294, 294, 0, 295, 286, 0, 0, 0, 294, 0, 294, 0, 0, 0, 0, 160, 161, 0, 0, 0, 0, 0, 0, 0, 0, 187, 294, 0, 116, 0, 0, 0, 294, 294, 0, 290, 0, 165, 166, 527, 0, 0, 0, 0, 0, 0, 0, 143, 0, 0, 0, 0, 167, 168, 169, 0, 0, 0, 0, 0, 170, 294, 0, 0, 0, 289, 171, 0, 0, 160, 161, 0, 0, 0, 0, 0, 0, 512, 172, 143, 0, 0, 0, 173, 174, 175, 176, 177, 178, 179, 0, 165, 166, 0, 0, 0, 0, 180, 0, 181, 0, 0, 0, 0, 0, 0, 167, 168, 169, 513, 0, 0, 0, 143, 170, 182, 0, 0, 0, 0, 171, 183, 184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172, 0, 0, 0, 0, 173, 174, 175, 176, 177, 178, 179, 0, 0, 0, 0, 0, 0, 185, 180, 0, 181, 0, 0, 160, 161, 0, 0, 0, 0, 0, 0, 0, 0, 63, 0, 0, 182, 0, 0, 0, 0, 0, 183, 184, 0, 165, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 167, 168, 169, 0, 0, 0, 0, 0, 170, 0, 0, 185, 0, 0, 171, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 172, 0, 0, 0, 0, 173, 174, 175, 176, 177, 178, 179, 0, 0, 0, 63, 0, 0, 0, 180, 0, 181, 0, 0, 0, 0, 0, 143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 182, 0, 0, 0, 0, 0, 183, 184, 0, 0, 143, 0, 0, 0, 143, 143, 143, 143, 143, 143, 493, 0, 0, 0, 0, 143, 0, 0, 0, 143, 0, 143, 0, 143, 0, 185, 0, 0, 0, 0, 0, 143, 0, 0, 494, 495, 496, 497, 498, 499, 0, 0, 0, 0, 0, 500, 0, 0, 0, 501, 0, 502, 0, 503, 0, 0, 0, 0, 0, 0, 0, 504, 143, 0, 143, 0, 0, 0, 143, 0, 0, 0, 143, 143, 143, 0, 0, 0, 0, 0, 0, 0, 0, 304, 291, 143, 0, 385, 302, 300, 0, 301, 505, 303, 506, 0, 0, 0, 507, 22, 0, 0, 23, 24, 25, 0, 294, 143, 295, 286, 0, 143, 0, 143, 0, 508, 0, 0, 0, 449, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 0, 0, 0, 0, 0, 509, 0, 0, 290, 510, 0, 511, 38, 39, 40, 41, 42, 0, 43, 44, 45, 46, 0, 0, 0, 0, 0, 0, 0, 0, 47, 48, 49, 50, 0, 22, 0, 0, 289, 0, 0, 51, 52, 53, 54, 55, 56, 57, 0, 0, 0, 0, 58, 59, 60, 0, 0, 0, 0, 23, 24, 25, 0, 0, 0, 35, 36, 37, 304, 291, 0, 0, 61, 302, 300, 464, 301, 0, 303, 0, 38, 39, 40, 41, 42, 62, 43, 44, 45, 46, 0, 294, 0, 295, 286, 0, 0, 0, 47, 48, 49, 50, 0, 0, 0, 0, 0, 0, 0, 51, 52, 53, 54, 55, 56, 57, 0, 0, 0, 0, 58, 59, 60, 0, 0, 290, 0, 23, 24, 25, 0, 0, 0, 0, 0, 0, 0, 304, 291, 0, 61, 470, 302, 300, 0, 301, 0, 303, 0, 0, 0, 304, 291, 62, 0, 289, 302, 300, 471, 301, 294, 303, 295, 286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294, 0, 295, 286, 0, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 304, 291, 0, 290, 0, 302, 300, 472, 301, 0, 303, 0, 0, 0, 304, 291, 0, 290, 473, 302, 300, 0, 301, 294, 303, 295, 286, 0, 0, 0, 0, 0, 0, 289, 0, 0, 0, 294, 0, 295, 286, 0, 0, 0, 0, 0, 0, 289, 0, 0, 304, 291, 0, 0, 476, 302, 300, 290, 301, 0, 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290, 0, 294, 0, 295, 286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 289, 0, 0, 0, 0, 0, 290, 0, 287, 288, 292, 293, 296, 297, 298, 299, 304, 291, 0, 0, 0, 302, 300, 478, 301, 0, 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 289, 0, 0, 294, 0, 295, 286, 304, 291, 0, 0, 0, 302, 300, 479, 301, 0, 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294, 0, 295, 286, 0, 0, 0, 290, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 0, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 290, 0, 0, 289, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 304, 291, 0, 0, 480, 302, 300, 0, 301, 0, 303, 0, 0, 0, 289, 287, 288, 292, 293, 296, 297, 298, 299, 294, 0, 295, 286, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 304, 291, 0, 0, 0, 302, 300, 481, 301, 0, 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290, 0, 0, 294, 0, 295, 286, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 304, 291, 289, 0, 482, 302, 300, 0, 301, 290, 303, 304, 291, 0, 0, 0, 302, 300, 0, 301, 0, 303, 0, 294, 0, 295, 286, 0, 0, 0, 0, 0, 484, 0, 294, 0, 295, 286, 0, 289, 0, 0, 0, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 0, 290, 0, 304, 291, 0, 603, 0, 302, 300, 0, 301, 290, 303, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 294, 0, 295, 286, 0, 289, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, 304, 291, 0, 0, 0, 302, 300, 0, 301, 0, 303, 290, 304, 291, 0, 0, 627, 302, 300, 0, 301, 609, 303, 294, 0, 295, 286, 0, 0, 0, 0, 0, 0, 0, 0, 294, 0, 295, 286, 0, 0, 289, 287, 288, 292, 293, 296, 297, 298, 299, 304, 291, 0, 0, 628, 302, 300, 290, 301, 0, 303, 0, 0, 0, 0, 0, 0, 0, 0, 290, 0, 0, 0, 294, 0, 295, 286, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 289, 0, 0, 304, 291, 0, 0, 629, 302, 300, 0, 301, 289, 303, 0, 0, 0, 0, 0, 0, 290, 0, 0, 0, 0, 0, 294, 0, 295, 286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 0, 289, 287, 288, 292, 293, 296, 297, 298, 299, 0, 290, 0, 0, 0, 0, 0, 304, 291, 0, 0, 631, 302, 300, 0, 301, 0, 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294, 289, 295, 286, 0, 0, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 304, 291, 0, 0, 632, 302, 300, 290, 301, 0, 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294, 0, 295, 286, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 289, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 304, 291, 0, 0, 722, 302, 300, 290, 301, 0, 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294, 0, 295, 286, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 289, 304, 291, 0, 0, 739, 302, 300, 0, 301, 0, 303, 0, 0, 0, 0, 0, 0, 0, 0, 290, 0, 0, 0, 294, 0, 295, 286, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 0, 0, 0, 0, 0, 304, 291, 0, 0, 289, 302, 300, 743, 301, 0, 303, 0, 290, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 294, 0, 295, 286, 0, 0, 0, 0, 0, 0, 0, 0, 304, 291, 0, 0, 761, 302, 300, 289, 301, 0, 303, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 290, 294, 0, 295, 286, 0, 0, 0, 0, 0, 0, 0, 0, 304, 291, 0, 0, 767, 302, 300, 0, 301, 0, 303, 0, 0, 0, 0, 0, 0, 289, 0, 0, 0, 0, 290, 294, 0, 295, 286, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 304, 291, 0, 0, 768, 302, 300, 0, 301, 0, 303, 0, 304, 291, 289, 0, 782, 302, 300, 290, 301, 0, 303, 294, 0, 295, 286, 0, 0, 0, 0, 0, 0, 0, 0, 294, 0, 295, 286, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 289, 304, 291, 0, 0, 799, 302, 300, 290, 301, 0, 303, 0, 0, 0, 0, 0, 0, 0, 0, 290, 0, 0, 0, 294, 0, 295, 286, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 289, 304, 291, 0, 0, 802, 302, 300, 0, 301, 0, 303, 289, 0, 0, 0, 0, 0, 0, 0, 290, 0, 0, 0, 294, 0, 295, 286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 0, 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, 0, 290, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, 0, 304, 291, 0, 0, 811, 302, 300, 0, 301, 0, 303, 287, 288, 292, 293, 296, 297, 298, 299, 0, 0, 0, 0, 294, 0, 295, 286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 290, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 304, 291, 0, 0, 0, 302, 300, 76, 301, 0, 303, 0, 0, 0, 0, 0, 0, 0, 289, 0, 0, 0, 0, 294, 0, 295, 286, 467, 77, 0, 287, 288, 292, 293, 296, 297, 298, 299, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 290, 78, 77, 0, 0, 0, 0, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 289, 0, 78, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 80, 81, 82, 83, 84, 0, 85, 86, 87, 0, 0, 88, 89, 0, 90, 91, 92, 0, 0, 0, 0, 93, 94, 95, 79, 0, 0, 0, 0, 0, 0, 80, 81, 82, 83, 84, 0, 85, 86, 87, 0, 0, 88, 89, 0, 90, 91, 92, 0, 0, 0, 0, 93, 94, 95, 0, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 287, 288, 292, 293, 296, 297, 298, 299, }; static const YYINT yycheck[] = { 13, 80, 232, 0, 78, 29, 0, 32, 0, 101, 44, 90, 528, 243, 244, 107, 20, 59, 59, 123, 520, 41, 147, 123, 44, 125, 531, 31, 125, 40, 41, 33, 41, 546, 41, 44, 123, 44, 91, 44, 258, 59, 123, 44, 40, 33, 123, 123, 59, 44, 258, 44, 41, 41, 677, 44, 258, 58, 258, 125, 61, 258, 41, 258, 44, 574, 140, 141, 44, 143, 144, 258, 586, 44, 588, 91, 150, 41, 59, 44, 91, 59, 59, 162, 163, 838, 291, 292, 37, 297, 44, 844, 300, 42, 43, 123, 45, 40, 47, 258, 297, 298, 299, 300, 301, 59, 301, 186, 187, 309, 189, 624, 41, 93, 125, 44, 832, 93, 197, 44, 245, 44, 258, 839, 125, 258, 40, 125, 41, 208, 125, 44, 350, 351, 352, 40, 61, 41, 61, 41, 44, 650, 301, 40, 125, 768, 348, 661, 125, 37, 41, 346, 258, 44, 42, 43, 230, 45, 382, 47, 123, 297, 44, 125, 297, 298, 299, 300, 301, 258, 675, 38, 685, 252, 41, 41, 255, 256, 44, 258, 259, 278, 123, 391, 263, 264, 265, 266, 267, 214, 215, 270, 258, 702, 391, 123, 391, 276, 277, 40, 643, 280, 281, 282, 391, 258, 722, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 321, 322, 323, 391, 123, 313, 314, 40, 123, 258, 259, 258, 366, 258, 125, 297, 349, 299, 258, 301, 258, 259, 258, 259, 258, 259, 391, 258, 258, 391, 0, 258, 348, 349, 258, 338, 258, 258, 278, 349, 258, 258, 282, 283, 284, 285, 286, 287, 278, 378, 258, 258, 297, 293, 299, 280, 301, 297, 258, 299, 363, 301, 365, 792, 258, 258, 811, 258, 38, 309, 40, 41, 378, 43, 44, 45, 386, 387, 388, 309, 390, 386, 387, 388, 40, 125, 40, 317, 58, 59, 60, 40, 62, 63, 324, 258, 359, 275, 276, 40, 340, 348, 342, 324, 353, 40, 346, 378, 378, 391, 350, 351, 352, 40, 344, 353, 349, 353, 348, 353, 350, 351, 352, 363, 94, 58, 379, 40, 61, 350, 351, 352, 40, 363, 0, 443, 359, 445, 446, 447, 812, 348, 363, 37, 389, 385, 391, 258, 42, 389, 40, 391, 824, 47, 124, 125, 382, 568, 258, 40, 468, 40, 621, 471, 472, 123, 40, 278, 258, 259, 478, 479, 38, 40, 40, 41, 484, 43, 44, 45, 258, 435, 313, 314, 315, 316, 317, 318, 319, 257, 258, 0, 58, 59, 60, 258, 62, 63, 309, 258, 442, 504, 37, 44, 258, 664, 317, 42, 43, 258, 45, 258, 47, 324, 40, 41, 58, 58, 258, 61, 61, 258, 258, 258, 259, 60, 258, 62, 94, 38, 257, 40, 41, 344, 349, 44, 258, 258, 278, 350, 351, 352, 258, 297, 298, 656, 359, 301, 258, 58, 59, 60, 363, 62, 63, 258, 258, 258, 124, 125, 58, 297, 298, 353, 58, 301, 59, 125, 589, 309, 59, 386, 387, 388, 125, 258, 376, 258, 689, 379, 380, 381, 693, 525, 125, 94, 258, 258, 258, 258, 0, 175, 176, 177, 602, 258, 180, 181, 258, 269, 270, 271, 272, 273, 274, 275, 276, 258, 278, 563, 564, 258, 258, 258, 40, 124, 125, 40, 353, 123, 40, 279, 630, 40, 258, 386, 387, 388, 38, 40, 40, 41, 40, 40, 44, 40, 40, 391, 646, 309, 40, 40, 40, 40, 755, 756, 40, 317, 58, 59, 60, 40, 62, 63, 324, 391, 44, 44, 666, 44, 681, 44, 670, 123, 372, 373, 374, 125, 676, 61, 678, 341, 41, 59, 344, 383, 384, 61, 348, 61, 350, 351, 352, 842, 94, 393, 59, 846, 125, 359, 849, 349, 258, 363, 44, 376, 44, 41, 379, 380, 381, 643, 41, 269, 270, 271, 272, 273, 274, 275, 276, 41, 278, 41, 124, 125, 724, 258, 260, 261, 262, 263, 264, 265, 266, 267, 268, 41, 386, 387, 388, 376, 390, 0, 379, 380, 381, 278, 273, 274, 275, 276, 376, 309, 41, 379, 380, 381, 769, 258, 758, 317, 41, 41, 41, 41, 764, 40, 324, 258, 269, 270, 271, 272, 273, 274, 275, 276, 309, 278, 40, 38, 780, 40, 41, 341, 317, 44, 344, 258, 258, 258, 348, 324, 350, 351, 352, 258, 258, 258, 258, 58, 59, 359, 59, 59, 63, 363, 123, 258, 309, 258, 258, 344, 40, 40, 258, 278, 317, 350, 351, 352, 258, 41, 41, 324, 258, 41, 41, 41, 41, 123, 363, 41, 44, 58, 40, 94, 258, 41, 258, 0, 341, 59, 258, 344, 40, 40, 309, 348, 40, 350, 351, 352, 40, 58, 317, 40, 258, 40, 359, 40, 40, 324, 363, 40, 125, 124, 125, 269, 270, 271, 272, 273, 274, 275, 276, 40, 278, 38, 812, 40, 41, 344, 348, 44, 58, 258, 324, 350, 351, 352, 824, 337, 258, 278, 339, 125, 0, 58, 59, 60, 363, 62, 63, 40, 44, 41, 41, 309, 125, 40, 258, 258, 350, 351, 352, 317, 40, 40, 40, 40, 40, 40, 324, 40, 40, 363, 41, 61, 58, 40, 279, 40, 123, 94, 38, 40, 40, 41, 41, 341, 44, 40, 344, 61, 41, 0, 348, 59, 350, 351, 352, 41, 41, 40, 58, 59, 60, 359, 62, 63, 41, 363, 41, 124, 125, 41, 319, 40, 59, 390, 341, 125, 37, 38, 278, 41, 258, 42, 43, 349, 45, 40, 47, 38, 40, 40, 41, 41, 40, 44, 94, 40, 61, 41, 0, 60, 41, 62, 41, 258, 40, 40, 40, 58, 59, 60, 41, 62, 63, 258, 269, 270, 271, 272, 61, 40, 58, 123, 41, 278, 124, 125, 41, 41, 41, 41, 41, 41, 258, 94, 41, 41, 38, 41, 40, 41, 41, 41, 44, 94, 41, 37, 38, 41, 0, 41, 42, 43, 44, 45, 309, 47, 58, 59, 60, 123, 62, 63, 317, 124, 40, 58, 125, 62, 60, 324, 62, 63, 258, 124, 125, 348, 123, 62, 258, 125, 258, 0, 0, 309, 59, 125, 341, 59, 125, 344, 41, 317, 94, 348, 359, 350, 351, 352, 324, 359, 0, 258, 94, 359, 359, 0, 41, 125, 363, 359, 359, 359, 269, 270, 271, 272, 273, 274, 344, 359, 125, 278, 124, 125, 350, 351, 352, 61, 359, 359, 37, 38, 124, 58, 359, 42, 43, 363, 45, 382, 47, 41, 359, 38, 44, 40, 41, 125, 125, 44, 58, 125, 309, 60, 359, 62, 359, 278, 258, 59, 317, 359, 359, 58, 59, 359, 359, 324, 63, 269, 270, 271, 272, 273, 274, 125, 359, 359, 278, 59, 59, 125, 41, 341, 341, 123, 278, 344, 125, 41, 123, 348, 446, 350, 351, 352, 611, 835, 726, 94, 828, 118, 359, 823, 658, 514, 363, 258, 257, 309, 271, 272, 273, 274, 275, 276, 647, 317, 269, 270, 271, 272, 273, 274, 324, 125, 253, 278, 250, 124, 125, 525, 228, 452, 541, 33, 636, 254, -1, -1, -1, 341, -1, -1, 344, 354, -1, 0, 348, -1, 350, 351, 352, -1, -1, -1, 258, -1, 309, 359, -1, -1, -1, 363, -1, -1, 317, 269, 270, 271, 272, 273, 274, 324, -1, -1, 278, 269, 270, 271, 272, 273, 274, 275, 276, 38, -1, 40, 41, -1, 341, 44, -1, 344, -1, -1, 0, 348, -1, 350, 351, 352, -1, -1, -1, 58, 59, 309, 359, -1, 63, -1, 363, -1, -1, 317, -1, -1, -1, -1, -1, -1, 324, -1, -1, -1, 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, 40, 41, -1, 341, 44, 94, 344, -1, -1, 0, 348, -1, 350, 351, 352, 125, -1, -1, 58, 59, -1, 359, 258, 63, -1, 363, -1, 258, 271, 272, 273, 274, 275, 276, -1, 124, 125, -1, 269, 270, 271, 272, 278, -1, -1, -1, -1, 278, -1, 40, 41, -1, -1, 44, 94, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 58, 59, -1, -1, -1, 63, 309, -1, -1, -1, -1, 309, -1, -1, 317, -1, -1, 124, 125, 317, -1, 324, -1, -1, -1, -1, 324, -1, -1, 0, -1, -1, -1, -1, 37, 38, -1, -1, 341, 42, 43, 344, 45, 341, 47, 0, 344, 350, 351, 352, 348, -1, 350, 351, 352, -1, -1, 60, -1, 62, 363, 359, -1, -1, -1, 363, 124, 125, -1, 40, 41, -1, -1, 44, -1, -1, -1, -1, -1, -1, -1, 258, -1, -1, -1, 40, 41, 58, 59, 44, 0, 94, 63, -1, -1, -1, -1, -1, -1, -1, -1, 278, 258, 58, 59, -1, -1, -1, 63, -1, -1, -1, -1, 269, 270, -1, -1, -1, -1, -1, -1, 124, 278, -1, -1, -1, -1, -1, -1, -1, 40, 41, 309, -1, 44, -1, -1, -1, -1, -1, 317, -1, -1, -1, -1, -1, -1, 324, 58, 59, -1, 258, -1, 309, 125, -1, -1, -1, -1, -1, -1, 317, 269, 270, -1, -1, -1, 344, 324, -1, 125, 278, -1, 350, 351, 352, -1, -1, -1, -1, -1, -1, -1, -1, -1, 341, 363, -1, 344, -1, -1, -1, 348, -1, 350, 351, 352, -1, -1, -1, 258, -1, 309, 359, -1, -1, -1, 363, -1, -1, 317, 269, 270, -1, -1, 125, -1, 324, -1, 33, 278, -1, -1, -1, -1, -1, 40, 41, -1, 43, -1, 45, -1, -1, 341, -1, -1, 344, -1, -1, -1, 348, -1, 350, 351, 352, -1, -1, -1, -1, -1, 309, 359, -1, -1, -1, 363, -1, -1, 317, -1, -1, -1, -1, -1, -1, 324, 270, 271, 272, 273, 274, 275, 276, -1, -1, -1, -1, -1, -1, -1, -1, -1, 341, -1, -1, 344, 258, -1, -1, 348, -1, 350, 351, 352, -1, -1, -1, 269, 270, -1, 359, -1, 258, -1, 363, -1, 278, 33, -1, -1, -1, 126, -1, 269, 40, -1, -1, 43, 44, 45, -1, -1, 278, -1, -1, -1, 37, 38, -1, -1, -1, 42, 43, -1, 45, 61, 47, 309, -1, -1, -1, -1, -1, -1, -1, 317, -1, 258, -1, 60, 37, 62, 324, 309, -1, 42, 43, -1, 45, -1, 47, 317, -1, -1, -1, -1, -1, 278, 324, 341, -1, -1, 344, 60, -1, 62, 348, -1, 350, 351, 352, -1, -1, 94, -1, 341, -1, 359, 344, -1, -1, 363, 348, -1, 350, 351, 352, -1, 309, -1, 126, -1, -1, 359, -1, -1, 317, 363, -1, -1, -1, -1, -1, 324, -1, -1, 33, -1, -1, -1, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 341, -1, -1, 344, -1, -1, -1, 348, -1, 350, 351, 352, 257, 258, 61, -1, -1, -1, 359, -1, -1, -1, 363, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 279, 280, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 294, 295, 296, 513, -1, -1, -1, -1, 302, -1, -1, -1, -1, -1, 308, -1, -1, -1, -1, 313, 314, 315, 316, 317, 318, 319, 320, 125, -1, -1, 126, 325, 326, 327, 328, 329, 330, 331, -1, 33, -1, -1, -1, -1, -1, 339, 40, 341, -1, 43, -1, 45, 257, 258, -1, -1, 566, 567, -1, -1, -1, -1, -1, 357, 58, -1, -1, -1, -1, 363, 364, -1, -1, -1, 279, 280, 586, -1, 588, -1, -1, 271, 272, 273, 274, 275, 276, -1, -1, 294, 295, 296, -1, -1, -1, -1, -1, 302, 392, -1, -1, -1, -1, 308, -1, 271, 272, 273, 274, 275, 276, -1, -1, -1, -1, 320, -1, -1, -1, -1, 325, 326, 327, 328, 329, 330, 331, -1, 33, -1, -1, -1, 126, -1, 339, 40, 341, -1, 43, -1, 45, -1, 652, 653, 654, 655, -1, -1, 658, 659, -1, 661, 357, -1, -1, -1, -1, -1, 363, 364, 258, 257, 258, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 33, 279, 280, -1, -1, 392, -1, 40, -1, -1, 43, -1, 45, -1, -1, -1, 294, 295, 296, -1, -1, -1, -1, -1, 302, 58, -1, -1, -1, 309, 308, -1, -1, -1, -1, -1, -1, 317, -1, 126, -1, -1, 320, -1, 324, -1, -1, 325, 326, 327, 328, 329, 330, 331, -1, 747, 748, -1, 750, 751, -1, 339, -1, 341, 344, -1, -1, -1, -1, -1, 350, 351, 352, -1, -1, -1, -1, -1, -1, 357, -1, 257, 258, 363, -1, 363, 364, 33, -1, -1, -1, -1, -1, 126, 40, -1, -1, 43, -1, 45, -1, -1, -1, 279, 280, 281, -1, -1, -1, -1, -1, -1, -1, -1, 392, -1, -1, -1, 294, 295, 296, -1, -1, -1, -1, -1, 302, -1, -1, -1, -1, -1, 308, 37, 38, -1, -1, -1, 42, 43, 44, 45, -1, 47, 320, -1, -1, -1, -1, 325, 326, 327, 328, 329, 330, 331, 60, -1, 62, 63, -1, -1, -1, 339, -1, 341, -1, -1, -1, -1, 257, 258, -1, -1, -1, -1, -1, -1, -1, -1, 126, 357, -1, 40, -1, -1, -1, 363, 364, -1, 94, -1, 279, 280, 281, -1, -1, -1, -1, -1, -1, -1, 59, -1, -1, -1, -1, 294, 295, 296, -1, -1, -1, -1, -1, 302, 392, -1, -1, -1, 124, 308, -1, -1, 257, 258, -1, -1, -1, -1, -1, -1, 59, 320, 91, -1, -1, -1, 325, 326, 327, 328, 329, 330, 331, -1, 279, 280, -1, -1, -1, -1, 339, -1, 341, -1, -1, -1, -1, -1, -1, 294, 295, 296, 91, -1, -1, -1, 125, 302, 357, -1, -1, -1, -1, 308, 363, 364, -1, -1, -1, -1, -1, -1, -1, -1, -1, 320, -1, -1, -1, -1, 325, 326, 327, 328, 329, 330, 331, -1, -1, -1, -1, -1, -1, 392, 339, -1, 341, -1, -1, 257, 258, -1, -1, -1, -1, -1, -1, -1, -1, 59, -1, -1, 357, -1, -1, -1, -1, -1, 363, 364, -1, 279, 280, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 294, 295, 296, -1, -1, -1, -1, -1, 302, -1, -1, 392, -1, -1, 308, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, 320, -1, -1, -1, -1, 325, 326, 327, 328, 329, 330, 331, -1, -1, -1, 59, -1, -1, -1, 339, -1, 341, -1, -1, -1, -1, -1, 258, -1, -1, -1, -1, -1, -1, -1, -1, -1, 357, -1, -1, -1, -1, -1, 363, 364, -1, -1, 278, -1, -1, -1, 282, 283, 284, 285, 286, 287, 258, -1, -1, -1, -1, 293, -1, -1, -1, 297, -1, 299, -1, 301, -1, 392, -1, -1, -1, -1, -1, 309, -1, -1, 282, 283, 284, 285, 286, 287, -1, -1, -1, -1, -1, 293, -1, -1, -1, 297, -1, 299, -1, 301, -1, -1, -1, -1, -1, -1, -1, 309, 340, -1, 342, -1, -1, -1, 346, -1, -1, -1, 350, 351, 352, -1, -1, -1, -1, -1, -1, -1, -1, 37, 38, 363, -1, 41, 42, 43, -1, 45, 340, 47, 342, -1, -1, -1, 346, 258, -1, -1, 350, 351, 352, -1, 60, 385, 62, 63, -1, 389, -1, 391, -1, 363, -1, -1, -1, 278, -1, -1, -1, -1, -1, -1, -1, -1, -1, 288, 289, 290, -1, -1, -1, -1, -1, 385, -1, -1, 94, 389, -1, 391, 303, 304, 305, 306, 307, -1, 309, 310, 311, 312, -1, -1, -1, -1, -1, -1, -1, -1, 321, 322, 323, 324, -1, 258, -1, -1, 124, -1, -1, 332, 333, 334, 335, 336, 337, 338, -1, -1, -1, -1, 343, 344, 345, -1, -1, -1, -1, 350, 351, 352, -1, -1, -1, 288, 289, 290, 37, 38, -1, -1, 363, 42, 43, 44, 45, -1, 47, -1, 303, 304, 305, 306, 307, 376, 309, 310, 311, 312, -1, 60, -1, 62, 63, -1, -1, -1, 321, 322, 323, 324, -1, -1, -1, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, 338, -1, -1, -1, -1, 343, 344, 345, -1, -1, 94, -1, 350, 351, 352, -1, -1, -1, -1, -1, -1, -1, 37, 38, -1, 363, 41, 42, 43, -1, 45, -1, 47, -1, -1, -1, 37, 38, 376, -1, 124, 42, 43, 44, 45, 60, 47, 62, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 60, -1, 62, 63, -1, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, 37, 38, -1, 94, -1, 42, 43, 44, 45, -1, 47, -1, -1, -1, 37, 38, -1, 94, 41, 42, 43, -1, 45, 60, 47, 62, 63, -1, -1, -1, -1, -1, -1, 124, -1, -1, -1, 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, 124, -1, -1, 37, 38, -1, -1, 41, 42, 43, 94, 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 94, -1, 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 124, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 124, -1, -1, -1, -1, -1, 94, -1, 269, 270, 271, 272, 273, 274, 275, 276, 37, 38, -1, -1, -1, 42, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, -1, 124, -1, -1, 60, -1, 62, 63, 37, 38, -1, -1, -1, 42, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 60, -1, 62, 63, -1, -1, -1, 94, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, -1, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, 94, -1, -1, 124, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, 41, 42, 43, -1, 45, -1, 47, -1, -1, -1, 124, 269, 270, 271, 272, 273, 274, 275, 276, 60, -1, 62, 63, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, 37, 38, -1, -1, -1, 42, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, -1, 94, -1, -1, 60, -1, 62, 63, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 37, 38, 124, -1, 41, 42, 43, -1, 45, 94, 47, 37, 38, -1, -1, -1, 42, 43, -1, 45, -1, 47, -1, 60, -1, 62, 63, -1, -1, -1, -1, -1, 58, -1, 60, -1, 62, 63, -1, 124, -1, -1, -1, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, -1, 94, -1, 37, 38, -1, 40, -1, 42, 43, -1, 45, 94, 47, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, 60, -1, 62, 63, -1, 124, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 124, -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, -1, 42, 43, -1, 45, -1, 47, 94, 37, 38, -1, -1, 41, 42, 43, -1, 45, 58, 47, 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, -1, -1, 60, -1, 62, 63, -1, -1, 124, 269, 270, 271, 272, 273, 274, 275, 276, 37, 38, -1, -1, 41, 42, 43, 94, 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, 94, -1, -1, -1, 60, -1, 62, 63, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, 124, -1, -1, 37, 38, -1, -1, 41, 42, 43, -1, 45, 124, 47, -1, -1, -1, -1, -1, -1, 94, -1, -1, -1, -1, -1, 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, -1, 124, 269, 270, 271, 272, 273, 274, 275, 276, -1, 94, -1, -1, -1, -1, -1, 37, 38, -1, -1, 41, 42, 43, -1, 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 60, 124, 62, 63, -1, -1, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, -1, -1, -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, 41, 42, 43, 94, 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 60, -1, 62, 63, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, 124, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, 37, 38, -1, -1, 41, 42, 43, 94, 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 60, -1, 62, 63, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, 124, 37, 38, -1, -1, 41, 42, 43, -1, 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, 94, -1, -1, -1, 60, -1, 62, 63, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, 124, 42, 43, 44, 45, -1, 47, -1, 94, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, 41, 42, 43, 124, 45, -1, 47, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, 94, 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, 41, 42, 43, -1, 45, -1, 47, -1, -1, -1, -1, -1, -1, 124, -1, -1, -1, -1, 94, 60, -1, 62, 63, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, 37, 38, -1, -1, 41, 42, 43, -1, 45, -1, 47, -1, 37, 38, 124, -1, 41, 42, 43, 94, 45, -1, 47, 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, -1, -1, 60, -1, 62, 63, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, 124, 37, 38, -1, -1, 41, 42, 43, 94, 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, 94, -1, -1, -1, 60, -1, 62, 63, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, 124, 37, 38, -1, -1, 41, 42, 43, -1, 45, -1, 47, 124, -1, -1, -1, -1, -1, -1, -1, 94, -1, -1, -1, 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, -1, -1, -1, -1, 124, -1, -1, -1, -1, -1, -1, -1, 94, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, -1, -1, -1, -1, -1, -1, -1, 124, -1, -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, 41, 42, 43, -1, 45, -1, 47, 269, 270, 271, 272, 273, 274, 275, 276, -1, -1, -1, -1, 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, 94, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, 37, 38, -1, -1, -1, 42, 43, 258, 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, 124, -1, -1, -1, -1, 60, -1, 62, 63, 278, 279, -1, 269, 270, 271, 272, 273, 274, 275, 276, 258, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 94, 309, 279, -1, -1, -1, -1, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 124, -1, 309, -1, -1, -1, -1, -1, -1, 347, -1, -1, -1, -1, -1, -1, 354, 355, 356, 357, 358, -1, 360, 361, 362, -1, -1, 365, 366, -1, 368, 369, 370, -1, -1, -1, -1, 375, 376, 377, 347, -1, -1, -1, -1, -1, -1, 354, 355, 356, 357, 358, -1, 360, 361, 362, -1, -1, 365, 366, -1, 368, 369, 370, -1, -1, -1, -1, 375, 376, 377, -1, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 269, 270, 271, 272, 273, 274, 275, 276, }; #if YYBTYACC static const YYINT yyctable[] = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, }; #endif #define YYFINAL 7 #ifndef YYDEBUG #define YYDEBUG 0 #endif #define YYMAXTOKEN 393 #define YYUNDFTOKEN 535 #define YYTRANSLATE(a) ((a) > YYMAXTOKEN ? YYUNDFTOKEN : (a)) #if YYDEBUG #ifndef NULL #define NULL (void*)0 #endif static const char *const yyname[] = { "$end",NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,"'!'",NULL,NULL,NULL,"'%'","'&'",NULL,"'('","')'","'*'","'+'","','", "'-'",NULL,"'/'",NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,"':'","';'", "'<'","'='","'>'","'?'",NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, "'['",NULL,"']'","'^'",NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,"'{'","'|'","'}'","'~'",NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,"error","INT","NAME","LNAME","PLUSEQ", "MINUSEQ","MULTEQ","DIVEQ","LSHIFTEQ","RSHIFTEQ","ANDEQ","OREQ","XOREQ","OROR", "ANDAND","EQ","NE","LE","GE","LSHIFT","RSHIFT","UNARY","END","ALIGN_K","BLOCK", "BIND","QUAD","SQUAD","LONG","SHORT","BYTE","ASCIZ","SECTIONS","PHDRS", "INSERT_K","AFTER","BEFORE","LINKER_VERSION","DATA_SEGMENT_ALIGN", "DATA_SEGMENT_RELRO_END","DATA_SEGMENT_END","SORT_BY_NAME","SORT_BY_ALIGNMENT", "SORT_NONE","SORT_BY_INIT_PRIORITY","REVERSE","SIZEOF_HEADERS","OUTPUT_FORMAT", "FORCE_COMMON_ALLOCATION","OUTPUT_ARCH","INHIBIT_COMMON_ALLOCATION", "FORCE_GROUP_ALLOCATION","SEGMENT_START","INCLUDE","MEMORY","REGION_ALIAS", "LD_FEATURE","NOLOAD","DSECT","COPY","INFO","OVERLAY","READONLY","TYPE", "DEFINED","TARGET_K","SEARCH_DIR","MAP","ENTRY","NEXT","SIZEOF","ALIGNOF", "ADDR","LOADADDR","MAX_K","MIN_K","STARTUP","HLL","SYSLIB","FLOAT","NOFLOAT", "NOCROSSREFS","NOCROSSREFS_TO","ORIGIN","FILL","LENGTH","CREATE_OBJECT_SYMBOLS", "INPUT","GROUP","OUTPUT","CONSTRUCTORS","ALIGNMOD","AT","SUBALIGN","HIDDEN", "PROVIDE","PROVIDE_HIDDEN","AS_NEEDED","CHIP","LIST","SECT","ABSOLUTE","LOAD", "NEWLINE","ENDWORD","ORDER","NAMEWORD","ASSERT_K","LOG2CEIL","FORMAT","PUBLIC", "DEFSYMEND","BASE","ALIAS","TRUNCATE","REL","INPUT_SCRIPT","INPUT_MRI_SCRIPT", "INPUT_DEFSYM","CASE","EXTERN","START","VERS_TAG","VERS_IDENTIFIER","GLOBAL", "LOCAL","VERSIONK","INPUT_VERSION_SCRIPT","INPUT_SECTION_ORDERING_SCRIPT", "KEEP","ONLY_IF_RO","ONLY_IF_RW","SPECIAL","INPUT_SECTION_FLAGS", "ALIGN_WITH_INPUT","EXCLUDE_FILE","CONSTANT","INPUT_DYNAMIC_LIST","$accept", "file","exp","opt_exp_with_type","mustbe_exp","opt_at","phdr_type","phdr_val", "opt_exp_without_type","opt_subalign","opt_align","fill_opt","fill_exp", "exclude_name_list","section_name_list","sect_flag_list","sect_flags", "memspec_opt","memspec_at_opt","paren_script_name","casesymlist", "wildcard_name","section_name_spec","filename_spec","wildcard_maybe_exclude", "wildcard_maybe_reverse","length","phdr_qualifiers","nocrossref_list", "phdr_opt","opt_nocrossrefs","assign_op","atype","attributes_opt", "sect_constraint","opt_align_with_input","filename","vers_defns","vers_tag", "verdep","script_file","mri_script_file","version_script_file", "section_ordering_script_file","dynamic_list_file","defsym_expr","assignment", "$$1","mri_script_lines","$$2","mri_script_command","ordernamelist", "mri_abs_name_list","mri_load_name_list","extern_name_list","$$3","ifile_list", "$$4","ifile_p1","memory","sections","phdrs","startup","high_level_library", "low_level_library","floating_point_support","statement_anywhere","version", "input_list","$$5","$$6","$$7","input_list1","$$8","$$9","$$10","$$11", "sec_or_group_p1","section","separator","$$12","opt_comma", "input_section_spec_no_keep","input_section_spec","$$13","statement","$$14", "statement_list_opt","$$15","statement_list","memory_spec_list_opt", "memory_spec_list","memory_spec","$$16","origin_spec","length_spec","$$17", "attributes_list","attributes_string","high_level_library_NAME_list", "low_level_library_NAME_list","$$18","$$19","$$20","$$21","$$22","$$23","$$24", "$$25","$$26","$$27","overlay_section","$$28","$$29","$$30","$$31","$$32", "type","$$33","$$34","$$35","phdr_list","phdr","$$36","$$37", "dynamic_list_nodes","$$38","dynamic_list_node","dynamic_list_tag","vers_nodes", "$$39","$$40","vers_node","$$41","opt_semicolon","$$42","section_ordering_list", "$$43","section_order","$$44","$$45","illegal-symbol", }; static const char *const yyrule[] = { "$accept : file", "file : INPUT_SCRIPT script_file", "file : INPUT_MRI_SCRIPT mri_script_file", "file : INPUT_VERSION_SCRIPT version_script_file", "file : INPUT_SECTION_ORDERING_SCRIPT section_ordering_script_file", "file : INPUT_DYNAMIC_LIST dynamic_list_file", "file : INPUT_DEFSYM defsym_expr", "filename : NAME", "$$1 :", "defsym_expr : $$1 assignment", "$$2 :", "mri_script_file : $$2 mri_script_lines", "mri_script_lines : mri_script_lines mri_script_command NEWLINE", "mri_script_lines :", "mri_script_command : CHIP exp", "mri_script_command : CHIP exp ',' exp", "mri_script_command : NAME", "mri_script_command : LIST", "mri_script_command : ORDER ordernamelist", "mri_script_command : ENDWORD", "mri_script_command : PUBLIC NAME '=' exp", "mri_script_command : PUBLIC NAME ',' exp", "mri_script_command : PUBLIC NAME exp", "mri_script_command : FORMAT NAME", "mri_script_command : SECT NAME ',' exp", "mri_script_command : SECT NAME exp", "mri_script_command : SECT NAME '=' exp", "mri_script_command : ALIGN_K NAME '=' exp", "mri_script_command : ALIGN_K NAME ',' exp", "mri_script_command : ALIGNMOD NAME '=' exp", "mri_script_command : ALIGNMOD NAME ',' exp", "mri_script_command : ABSOLUTE mri_abs_name_list", "mri_script_command : LOAD mri_load_name_list", "mri_script_command : NAMEWORD NAME", "mri_script_command : ALIAS NAME ',' NAME", "mri_script_command : ALIAS NAME ',' INT", "mri_script_command : BASE exp", "mri_script_command : TRUNCATE INT", "mri_script_command : CASE casesymlist", "mri_script_command : EXTERN extern_name_list", "$$3 :", "mri_script_command : INCLUDE filename $$3 mri_script_lines END", "mri_script_command : START NAME", "mri_script_command :", "ordernamelist : ordernamelist ',' NAME", "ordernamelist : ordernamelist NAME", "ordernamelist :", "mri_load_name_list : NAME", "mri_load_name_list : mri_load_name_list ',' NAME", "mri_abs_name_list : NAME", "mri_abs_name_list : mri_abs_name_list ',' NAME", "casesymlist :", "casesymlist : NAME", "casesymlist : casesymlist ',' NAME", "extern_name_list : NAME", "extern_name_list : extern_name_list NAME", "extern_name_list : extern_name_list ',' NAME", "$$4 :", "script_file : $$4 ifile_list", "ifile_list : ifile_list ifile_p1", "ifile_list :", "ifile_p1 : memory", "ifile_p1 : sections", "ifile_p1 : phdrs", "ifile_p1 : startup", "ifile_p1 : high_level_library", "ifile_p1 : low_level_library", "ifile_p1 : floating_point_support", "ifile_p1 : statement_anywhere", "ifile_p1 : version", "ifile_p1 : ';'", "ifile_p1 : TARGET_K '(' NAME ')'", "ifile_p1 : SEARCH_DIR '(' filename ')'", "ifile_p1 : OUTPUT '(' filename ')'", "ifile_p1 : OUTPUT_FORMAT '(' NAME ')'", "ifile_p1 : OUTPUT_FORMAT '(' NAME ',' NAME ',' NAME ')'", "ifile_p1 : OUTPUT_ARCH '(' NAME ')'", "ifile_p1 : FORCE_COMMON_ALLOCATION", "ifile_p1 : FORCE_GROUP_ALLOCATION", "ifile_p1 : INHIBIT_COMMON_ALLOCATION", "ifile_p1 : INPUT '(' input_list ')'", "$$5 :", "ifile_p1 : GROUP $$5 '(' input_list ')'", "ifile_p1 : MAP '(' filename ')'", "$$6 :", "ifile_p1 : INCLUDE filename $$6 ifile_list END", "ifile_p1 : NOCROSSREFS '(' nocrossref_list ')'", "ifile_p1 : NOCROSSREFS_TO '(' nocrossref_list ')'", "$$7 :", "ifile_p1 : EXTERN '(' $$7 extern_name_list ')'", "ifile_p1 : INSERT_K AFTER NAME", "ifile_p1 : INSERT_K BEFORE NAME", "ifile_p1 : REGION_ALIAS '(' NAME ',' NAME ')'", "ifile_p1 : LD_FEATURE '(' NAME ')'", "$$8 :", "input_list : $$8 input_list1", "input_list1 : NAME", "input_list1 : input_list1 ',' NAME", "input_list1 : input_list1 NAME", "input_list1 : LNAME", "input_list1 : input_list1 ',' LNAME", "input_list1 : input_list1 LNAME", "$$9 :", "input_list1 : AS_NEEDED '(' $$9 input_list1 ')'", "$$10 :", "input_list1 : input_list1 ',' AS_NEEDED '(' $$10 input_list1 ')'", "$$11 :", "input_list1 : input_list1 AS_NEEDED '(' $$11 input_list1 ')'", "sections : SECTIONS '{' sec_or_group_p1 '}'", "sec_or_group_p1 : sec_or_group_p1 section", "sec_or_group_p1 : sec_or_group_p1 statement_anywhere", "sec_or_group_p1 :", "statement_anywhere : ENTRY '(' NAME ')'", "statement_anywhere : assignment separator", "$$12 :", "statement_anywhere : ASSERT_K $$12 '(' exp ',' NAME ')'", "wildcard_name : NAME", "wildcard_maybe_exclude : wildcard_name", "wildcard_maybe_exclude : EXCLUDE_FILE '(' exclude_name_list ')' wildcard_name", "wildcard_maybe_reverse : wildcard_maybe_exclude", "wildcard_maybe_reverse : REVERSE '(' wildcard_maybe_exclude ')'", "filename_spec : wildcard_maybe_reverse", "filename_spec : SORT_BY_NAME '(' wildcard_maybe_reverse ')'", "filename_spec : SORT_NONE '(' wildcard_maybe_reverse ')'", "filename_spec : REVERSE '(' SORT_BY_NAME '(' wildcard_maybe_exclude ')' ')'", "section_name_spec : wildcard_maybe_reverse", "section_name_spec : SORT_BY_NAME '(' wildcard_maybe_reverse ')'", "section_name_spec : SORT_BY_ALIGNMENT '(' wildcard_maybe_reverse ')'", "section_name_spec : SORT_NONE '(' wildcard_maybe_reverse ')'", "section_name_spec : SORT_BY_NAME '(' SORT_BY_ALIGNMENT '(' wildcard_maybe_reverse ')' ')'", "section_name_spec : SORT_BY_NAME '(' SORT_BY_NAME '(' wildcard_maybe_reverse ')' ')'", "section_name_spec : SORT_BY_ALIGNMENT '(' SORT_BY_NAME '(' wildcard_maybe_reverse ')' ')'", "section_name_spec : SORT_BY_ALIGNMENT '(' SORT_BY_ALIGNMENT '(' wildcard_maybe_reverse ')' ')'", "section_name_spec : SORT_BY_INIT_PRIORITY '(' wildcard_maybe_reverse ')'", "section_name_spec : REVERSE '(' SORT_BY_NAME '(' wildcard_maybe_exclude ')' ')'", "section_name_spec : REVERSE '(' SORT_BY_INIT_PRIORITY '(' wildcard_maybe_exclude ')' ')'", "sect_flag_list : NAME", "sect_flag_list : sect_flag_list '&' NAME", "sect_flags : INPUT_SECTION_FLAGS '(' sect_flag_list ')'", "exclude_name_list : exclude_name_list wildcard_name", "exclude_name_list : wildcard_name", "section_name_list : section_name_list opt_comma section_name_spec", "section_name_list : section_name_spec", "input_section_spec_no_keep : NAME", "input_section_spec_no_keep : sect_flags NAME", "input_section_spec_no_keep : '[' section_name_list ']'", "input_section_spec_no_keep : sect_flags '[' section_name_list ']'", "input_section_spec_no_keep : filename_spec '(' section_name_list ')'", "input_section_spec_no_keep : sect_flags filename_spec '(' section_name_list ')'", "input_section_spec : input_section_spec_no_keep", "$$13 :", "input_section_spec : KEEP '(' $$13 input_section_spec_no_keep ')'", "statement : ';'", "statement : assignment separator", "statement : CREATE_OBJECT_SYMBOLS", "statement : CONSTRUCTORS", "statement : SORT_BY_NAME '(' CONSTRUCTORS ')'", "statement : input_section_spec", "statement : length '(' mustbe_exp ')'", "statement : ASCIZ NAME", "statement : FILL '(' fill_exp ')'", "statement : LINKER_VERSION", "$$14 :", "statement : ASSERT_K $$14 '(' exp ',' NAME ')' separator", "$$15 :", "statement : INCLUDE filename $$15 statement_list_opt END", "statement_list : statement_list statement", "statement_list : statement", "statement_list_opt :", "statement_list_opt : statement_list", "length : QUAD", "length : SQUAD", "length : LONG", "length : SHORT", "length : BYTE", "fill_exp : mustbe_exp", "fill_opt : '=' fill_exp", "fill_opt :", "assign_op : PLUSEQ", "assign_op : MINUSEQ", "assign_op : MULTEQ", "assign_op : DIVEQ", "assign_op : LSHIFTEQ", "assign_op : RSHIFTEQ", "assign_op : ANDEQ", "assign_op : OREQ", "assign_op : XOREQ", "separator : ';'", "separator : ','", "assignment : NAME '=' mustbe_exp", "assignment : NAME assign_op mustbe_exp", "assignment : HIDDEN '(' NAME '=' mustbe_exp ')'", "assignment : PROVIDE '(' NAME '=' mustbe_exp ')'", "assignment : PROVIDE_HIDDEN '(' NAME '=' mustbe_exp ')'", "opt_comma : ','", "opt_comma :", "memory : MEMORY '{' memory_spec_list_opt '}'", "memory_spec_list_opt : memory_spec_list", "memory_spec_list_opt :", "memory_spec_list : memory_spec_list opt_comma memory_spec", "memory_spec_list : memory_spec", "$$16 :", "memory_spec : NAME $$16 attributes_opt ':' origin_spec opt_comma length_spec", "$$17 :", "memory_spec : INCLUDE filename $$17 memory_spec_list_opt END", "origin_spec : ORIGIN '=' mustbe_exp", "length_spec : LENGTH '=' mustbe_exp", "attributes_opt :", "attributes_opt : '(' attributes_list ')'", "attributes_list : attributes_string", "attributes_list : attributes_list attributes_string", "attributes_string : NAME", "attributes_string : '!' NAME", "startup : STARTUP '(' filename ')'", "high_level_library : HLL '(' high_level_library_NAME_list ')'", "high_level_library : HLL '(' ')'", "high_level_library_NAME_list : high_level_library_NAME_list opt_comma filename", "high_level_library_NAME_list : filename", "low_level_library : SYSLIB '(' low_level_library_NAME_list ')'", "low_level_library_NAME_list : low_level_library_NAME_list opt_comma filename", "low_level_library_NAME_list :", "floating_point_support : FLOAT", "floating_point_support : NOFLOAT", "nocrossref_list :", "nocrossref_list : NAME nocrossref_list", "nocrossref_list : NAME ',' nocrossref_list", "$$18 :", "paren_script_name : $$18 '(' NAME ')'", "$$19 :", "mustbe_exp : $$19 exp", "exp : '-' exp", "exp : '(' exp ')'", "exp : NEXT '(' exp ')'", "exp : '!' exp", "exp : '+' exp", "exp : '~' exp", "exp : exp '*' exp", "exp : exp '/' exp", "exp : exp '%' exp", "exp : exp '+' exp", "exp : exp '-' exp", "exp : exp LSHIFT exp", "exp : exp RSHIFT exp", "exp : exp EQ exp", "exp : exp NE exp", "exp : exp LE exp", "exp : exp GE exp", "exp : exp '<' exp", "exp : exp '>' exp", "exp : exp '&' exp", "exp : exp '^' exp", "exp : exp '|' exp", "exp : exp '?' exp ':' exp", "exp : exp ANDAND exp", "exp : exp OROR exp", "exp : DEFINED '(' NAME ')'", "exp : INT", "exp : SIZEOF_HEADERS", "exp : ALIGNOF paren_script_name", "exp : SIZEOF paren_script_name", "exp : ADDR paren_script_name", "exp : LOADADDR paren_script_name", "exp : CONSTANT '(' NAME ')'", "exp : ABSOLUTE '(' exp ')'", "exp : ALIGN_K '(' exp ')'", "exp : ALIGN_K '(' exp ',' exp ')'", "exp : DATA_SEGMENT_ALIGN '(' exp ',' exp ')'", "exp : DATA_SEGMENT_RELRO_END '(' exp ',' exp ')'", "exp : DATA_SEGMENT_END '(' exp ')'", "$$20 :", "$$21 :", "exp : SEGMENT_START $$20 '(' NAME $$21 ',' exp ')'", "exp : BLOCK '(' exp ')'", "exp : NAME", "exp : MAX_K '(' exp ',' exp ')'", "exp : MIN_K '(' exp ',' exp ')'", "exp : ASSERT_K '(' exp ',' NAME ')'", "exp : ORIGIN paren_script_name", "exp : LENGTH paren_script_name", "exp : LOG2CEIL '(' exp ')'", "memspec_at_opt : AT '>' NAME", "memspec_at_opt :", "opt_at : AT '(' exp ')'", "opt_at :", "opt_align : ALIGN_K '(' exp ')'", "opt_align :", "opt_align_with_input : ALIGN_WITH_INPUT", "opt_align_with_input :", "opt_subalign : SUBALIGN '(' exp ')'", "opt_subalign :", "sect_constraint : ONLY_IF_RO", "sect_constraint : ONLY_IF_RW", "sect_constraint : SPECIAL", "sect_constraint :", "$$22 :", "$$23 :", "$$24 :", "$$25 :", "section : NAME $$22 opt_exp_with_type opt_at opt_align opt_align_with_input opt_subalign sect_constraint $$23 '{' statement_list_opt '}' $$24 memspec_opt memspec_at_opt phdr_opt fill_opt $$25 opt_comma", "$$26 :", "$$27 :", "$$28 :", "$$29 :", "section : OVERLAY $$26 opt_exp_without_type opt_nocrossrefs opt_at opt_subalign $$27 '{' $$28 overlay_section '}' memspec_opt memspec_at_opt phdr_opt fill_opt $$29 opt_comma", "$$30 :", "$$31 :", "section : GROUP $$30 opt_exp_with_type $$31 '{' sec_or_group_p1 '}'", "$$32 :", "section : INCLUDE filename $$32 sec_or_group_p1 END", "type : NOLOAD", "type : DSECT", "type : COPY", "type : INFO", "type : OVERLAY", "type : READONLY '(' TYPE '=' exp ')'", "type : READONLY", "type : TYPE '=' exp", "atype : '(' type ')'", "atype :", "atype : '(' ')'", "opt_exp_with_type : exp atype ':'", "opt_exp_with_type : atype ':'", "opt_exp_with_type : BIND '(' exp ')' atype ':'", "opt_exp_with_type : BIND '(' exp ')' BLOCK '(' exp ')' atype ':'", "opt_exp_without_type : exp ':'", "opt_exp_without_type : ':'", "opt_nocrossrefs :", "opt_nocrossrefs : NOCROSSREFS", "memspec_opt : '>' NAME", "memspec_opt :", "phdr_opt :", "phdr_opt : phdr_opt ':' NAME", "overlay_section :", "$$33 :", "$$34 :", "$$35 :", "overlay_section : overlay_section NAME $$33 '{' statement_list_opt '}' $$34 phdr_opt fill_opt $$35 opt_comma", "phdrs : PHDRS '{' phdr_list '}'", "phdr_list :", "phdr_list : phdr_list phdr", "$$36 :", "$$37 :", "phdr : NAME $$36 phdr_type phdr_qualifiers $$37 ';'", "phdr_type : exp", "phdr_qualifiers :", "phdr_qualifiers : NAME phdr_val phdr_qualifiers", "phdr_qualifiers : AT '(' exp ')' phdr_qualifiers", "phdr_val :", "phdr_val : '(' exp ')'", "$$38 :", "dynamic_list_file : $$38 dynamic_list_nodes", "dynamic_list_nodes : dynamic_list_node", "dynamic_list_nodes : dynamic_list_nodes dynamic_list_node", "dynamic_list_node : '{' dynamic_list_tag '}' ';'", "dynamic_list_tag : vers_defns ';'", "$$39 :", "version_script_file : $$39 vers_nodes", "$$40 :", "version : $$40 VERSIONK '{' vers_nodes '}'", "vers_nodes : vers_node", "vers_nodes : vers_nodes vers_node", "vers_node : '{' vers_tag '}' ';'", "vers_node : VERS_TAG '{' vers_tag '}' ';'", "vers_node : VERS_TAG '{' vers_tag '}' verdep ';'", "verdep : VERS_TAG", "verdep : verdep VERS_TAG", "vers_tag :", "vers_tag : vers_defns ';'", "vers_tag : GLOBAL ':' vers_defns ';'", "vers_tag : LOCAL ':' vers_defns ';'", "vers_tag : GLOBAL ':' vers_defns ';' LOCAL ':' vers_defns ';'", "vers_defns : VERS_IDENTIFIER", "vers_defns : NAME", "vers_defns : vers_defns ';' VERS_IDENTIFIER", "vers_defns : vers_defns ';' NAME", "$$41 :", "vers_defns : vers_defns ';' EXTERN NAME '{' $$41 vers_defns opt_semicolon '}'", "$$42 :", "vers_defns : EXTERN NAME '{' $$42 vers_defns opt_semicolon '}'", "vers_defns : GLOBAL", "vers_defns : vers_defns ';' GLOBAL", "vers_defns : LOCAL", "vers_defns : vers_defns ';' LOCAL", "vers_defns : EXTERN", "vers_defns : vers_defns ';' EXTERN", "opt_semicolon :", "opt_semicolon : ';'", "$$43 :", "section_ordering_script_file : $$43 section_ordering_list", "section_ordering_list : section_ordering_list section_order", "section_ordering_list : section_ordering_list statement_anywhere", "section_ordering_list :", "$$44 :", "$$45 :", "section_order : NAME ':' $$44 '{' statement_list_opt '}' $$45 opt_comma", }; #endif #if YYDEBUG int yydebug; #endif int yyerrflag; int yychar; YYSTYPE yyval; YYSTYPE yylval; int yynerrs; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) YYLTYPE yyloc; /* position returned by actions */ YYLTYPE yylloc; /* position from the lexer */ #endif #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) #ifndef YYLLOC_DEFAULT #define YYLLOC_DEFAULT(loc, rhs, n) \ do \ { \ if (n == 0) \ { \ (loc).first_line = YYRHSLOC(rhs, 0).last_line; \ (loc).first_column = YYRHSLOC(rhs, 0).last_column; \ (loc).last_line = YYRHSLOC(rhs, 0).last_line; \ (loc).last_column = YYRHSLOC(rhs, 0).last_column; \ } \ else \ { \ (loc).first_line = YYRHSLOC(rhs, 1).first_line; \ (loc).first_column = YYRHSLOC(rhs, 1).first_column; \ (loc).last_line = YYRHSLOC(rhs, n).last_line; \ (loc).last_column = YYRHSLOC(rhs, n).last_column; \ } \ } while (0) #endif /* YYLLOC_DEFAULT */ #endif /* defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) */ #if YYBTYACC #ifndef YYLVQUEUEGROWTH #define YYLVQUEUEGROWTH 32 #endif #endif /* YYBTYACC */ /* define the initial stack-sizes */ #ifdef YYSTACKSIZE #undef YYMAXDEPTH #define YYMAXDEPTH YYSTACKSIZE #else #ifdef YYMAXDEPTH #define YYSTACKSIZE YYMAXDEPTH #else #define YYSTACKSIZE 10000 #define YYMAXDEPTH 10000 #endif #endif #ifndef YYINITSTACKSIZE #define YYINITSTACKSIZE 200 #endif typedef struct { unsigned stacksize; YYINT *s_base; YYINT *s_mark; YYINT *s_last; YYSTYPE *l_base; YYSTYPE *l_mark; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) YYLTYPE *p_base; YYLTYPE *p_mark; #endif } YYSTACKDATA; #if YYBTYACC struct YYParseState_s { struct YYParseState_s *save; /* Previously saved parser state */ YYSTACKDATA yystack; /* saved parser stack */ int state; /* saved parser state */ int errflag; /* saved error recovery status */ int lexeme; /* saved index of the conflict lexeme in the lexical queue */ YYINT ctry; /* saved index in yyctable[] for this conflict */ }; typedef struct YYParseState_s YYParseState; #endif /* YYBTYACC */ /* variables for the parser stack */ static YYSTACKDATA yystack; #if YYBTYACC /* Current parser state */ static YYParseState *yyps = NULL; /* yypath != NULL: do the full parse, starting at *yypath parser state. */ static YYParseState *yypath = NULL; /* Base of the lexical value queue */ static YYSTYPE *yylvals = NULL; /* Current position at lexical value queue */ static YYSTYPE *yylvp = NULL; /* End position of lexical value queue */ static YYSTYPE *yylve = NULL; /* The last allocated position at the lexical value queue */ static YYSTYPE *yylvlim = NULL; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) /* Base of the lexical position queue */ static YYLTYPE *yylpsns = NULL; /* Current position at lexical position queue */ static YYLTYPE *yylpp = NULL; /* End position of lexical position queue */ static YYLTYPE *yylpe = NULL; /* The last allocated position at the lexical position queue */ static YYLTYPE *yylplim = NULL; #endif /* Current position at lexical token queue */ static YYINT *yylexp = NULL; static YYINT *yylexemes = NULL; #endif /* YYBTYACC */ #line 1576 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" static void yyerror (const char *arg) { if (ldfile_assumed_script) einfo (_("%P:%s: file format not recognized; treating as linker script\n"), ldlex_filename ()); if (error_index > 0 && error_index < ERROR_NAME_MAX) fatal (_("%P:%pS: %s in %s\n"), NULL, arg, error_names[error_index - 1]); else fatal ("%P:%pS: %s\n", NULL, arg); } #line 2681 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" /* For use in generated program */ #define yydepth (int)(yystack.s_mark - yystack.s_base) #if YYBTYACC #define yytrial (yyps->save) #endif /* YYBTYACC */ #if YYDEBUG #include /* needed for printf */ #endif #include /* needed for malloc, etc */ #include /* needed for memset */ /* allocate initial stack or double stack size, up to YYMAXDEPTH */ static int yygrowstack(YYSTACKDATA *data) { int i; unsigned newsize; YYINT *newss; YYSTYPE *newvs; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) YYLTYPE *newps; #endif if ((newsize = data->stacksize) == 0) newsize = YYINITSTACKSIZE; else if (newsize >= YYMAXDEPTH) return YYENOMEM; else if ((newsize *= 2) > YYMAXDEPTH) newsize = YYMAXDEPTH; i = (int) (data->s_mark - data->s_base); newss = (YYINT *)realloc(data->s_base, newsize * sizeof(*newss)); if (newss == NULL) return YYENOMEM; data->s_base = newss; data->s_mark = newss + i; newvs = (YYSTYPE *)realloc(data->l_base, newsize * sizeof(*newvs)); if (newvs == NULL) return YYENOMEM; data->l_base = newvs; data->l_mark = newvs + i; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) newps = (YYLTYPE *)realloc(data->p_base, newsize * sizeof(*newps)); if (newps == NULL) return YYENOMEM; data->p_base = newps; data->p_mark = newps + i; #endif data->stacksize = newsize; data->s_last = data->s_base + newsize - 1; #if YYDEBUG if (yydebug) fprintf(stderr, "%sdebug: stack size increased to %d\n", YYPREFIX, newsize); #endif return 0; } #if YYPURE || defined(YY_NO_LEAKS) static void yyfreestack(YYSTACKDATA *data) { free(data->s_base); free(data->l_base); #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) free(data->p_base); #endif memset(data, 0, sizeof(*data)); } #else #define yyfreestack(data) /* nothing */ #endif /* YYPURE || defined(YY_NO_LEAKS) */ #if YYBTYACC static YYParseState * yyNewState(unsigned size) { YYParseState *p = (YYParseState *) malloc(sizeof(YYParseState)); if (p == NULL) return NULL; p->yystack.stacksize = size; if (size == 0) { p->yystack.s_base = NULL; p->yystack.l_base = NULL; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) p->yystack.p_base = NULL; #endif return p; } p->yystack.s_base = (YYINT *) malloc(size * sizeof(YYINT)); if (p->yystack.s_base == NULL) return NULL; p->yystack.l_base = (YYSTYPE *) malloc(size * sizeof(YYSTYPE)); if (p->yystack.l_base == NULL) return NULL; memset(p->yystack.l_base, 0, size * sizeof(YYSTYPE)); #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) p->yystack.p_base = (YYLTYPE *) malloc(size * sizeof(YYLTYPE)); if (p->yystack.p_base == NULL) return NULL; memset(p->yystack.p_base, 0, size * sizeof(YYLTYPE)); #endif return p; } static void yyFreeState(YYParseState *p) { yyfreestack(&p->yystack); free(p); } #endif /* YYBTYACC */ #define YYABORT goto yyabort #define YYREJECT goto yyabort #define YYACCEPT goto yyaccept #define YYERROR goto yyerrlab #if YYBTYACC #define YYVALID do { if (yyps->save) goto yyvalid; } while(0) #define YYVALID_NESTED do { if (yyps->save && \ yyps->save->save == 0) goto yyvalid; } while(0) #endif /* YYBTYACC */ int YYPARSE_DECL() { int yym, yyn, yystate, yyresult; #if YYBTYACC int yynewerrflag; YYParseState *yyerrctx = NULL; #endif /* YYBTYACC */ #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) YYLTYPE yyerror_loc_range[3]; /* position of error start/end (0 unused) */ #endif #if YYDEBUG const char *yys; if ((yys = getenv("YYDEBUG")) != NULL) { yyn = *yys; if (yyn >= '0' && yyn <= '9') yydebug = yyn - '0'; } if (yydebug) fprintf(stderr, "%sdebug[<# of symbols on state stack>]\n", YYPREFIX); #endif #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) memset(yyerror_loc_range, 0, sizeof(yyerror_loc_range)); #endif #if YYBTYACC yyps = yyNewState(0); if (yyps == NULL) goto yyenomem; yyps->save = NULL; #endif /* YYBTYACC */ yym = 0; /* yyn is set below */ yynerrs = 0; yyerrflag = 0; yychar = YYEMPTY; yystate = 0; #if YYPURE memset(&yystack, 0, sizeof(yystack)); #endif if (yystack.s_base == NULL && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow; yystack.s_mark = yystack.s_base; yystack.l_mark = yystack.l_base; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yystack.p_mark = yystack.p_base; #endif yystate = 0; *yystack.s_mark = 0; yyloop: if ((yyn = yydefred[yystate]) != 0) goto yyreduce; if (yychar < 0) { #if YYBTYACC do { if (yylvp < yylve) { /* we're currently re-reading tokens */ yylval = *yylvp++; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylloc = *yylpp++; #endif yychar = *yylexp++; break; } if (yyps->save) { /* in trial mode; save scanner results for future parse attempts */ if (yylvp == yylvlim) { /* Enlarge lexical value queue */ size_t p = (size_t) (yylvp - yylvals); size_t s = (size_t) (yylvlim - yylvals); s += YYLVQUEUEGROWTH; if ((yylexemes = (YYINT *)realloc(yylexemes, s * sizeof(YYINT))) == NULL) goto yyenomem; if ((yylvals = (YYSTYPE *)realloc(yylvals, s * sizeof(YYSTYPE))) == NULL) goto yyenomem; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) if ((yylpsns = (YYLTYPE *)realloc(yylpsns, s * sizeof(YYLTYPE))) == NULL) goto yyenomem; #endif yylvp = yylve = yylvals + p; yylvlim = yylvals + s; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylpp = yylpe = yylpsns + p; yylplim = yylpsns + s; #endif yylexp = yylexemes + p; } *yylexp = (YYINT) YYLEX; *yylvp++ = yylval; yylve++; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) *yylpp++ = yylloc; yylpe++; #endif yychar = *yylexp++; break; } /* normal operation, no conflict encountered */ #endif /* YYBTYACC */ yychar = YYLEX; #if YYBTYACC } while (0); #endif /* YYBTYACC */ if (yychar < 0) yychar = YYEOF; #if YYDEBUG if (yydebug) { if ((yys = yyname[YYTRANSLATE(yychar)]) == NULL) yys = yyname[YYUNDFTOKEN]; fprintf(stderr, "%s[%d]: state %d, reading token %d (%s)", YYDEBUGSTR, yydepth, yystate, yychar, yys); #ifdef YYSTYPE_TOSTRING #if YYBTYACC if (!yytrial) #endif /* YYBTYACC */ fprintf(stderr, " <%s>", YYSTYPE_TOSTRING(yychar, yylval)); #endif fputc('\n', stderr); } #endif } #if YYBTYACC /* Do we have a conflict? */ if (((yyn = yycindex[yystate]) != 0) && (yyn += yychar) >= 0 && yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) yychar) { YYINT ctry; if (yypath) { YYParseState *save; #if YYDEBUG if (yydebug) fprintf(stderr, "%s[%d]: CONFLICT in state %d: following successful trial parse\n", YYDEBUGSTR, yydepth, yystate); #endif /* Switch to the next conflict context */ save = yypath; yypath = save->save; save->save = NULL; ctry = save->ctry; if (save->state != yystate) YYABORT; yyFreeState(save); } else { /* Unresolved conflict - start/continue trial parse */ YYParseState *save; #if YYDEBUG if (yydebug) { fprintf(stderr, "%s[%d]: CONFLICT in state %d. ", YYDEBUGSTR, yydepth, yystate); if (yyps->save) fputs("ALREADY in conflict, continuing trial parse.\n", stderr); else fputs("Starting trial parse.\n", stderr); } #endif save = yyNewState((unsigned)(yystack.s_mark - yystack.s_base + 1)); if (save == NULL) goto yyenomem; save->save = yyps->save; save->state = yystate; save->errflag = yyerrflag; save->yystack.s_mark = save->yystack.s_base + (yystack.s_mark - yystack.s_base); memcpy (save->yystack.s_base, yystack.s_base, (size_t) (yystack.s_mark - yystack.s_base + 1) * sizeof(YYINT)); save->yystack.l_mark = save->yystack.l_base + (yystack.l_mark - yystack.l_base); memcpy (save->yystack.l_base, yystack.l_base, (size_t) (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) save->yystack.p_mark = save->yystack.p_base + (yystack.p_mark - yystack.p_base); memcpy (save->yystack.p_base, yystack.p_base, (size_t) (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); #endif ctry = yytable[yyn]; if (yyctable[ctry] == -1) { #if YYDEBUG if (yydebug && yychar >= YYEOF) fprintf(stderr, "%s[%d]: backtracking 1 token\n", YYDEBUGSTR, yydepth); #endif ctry++; } save->ctry = ctry; if (yyps->save == NULL) { /* If this is a first conflict in the stack, start saving lexemes */ if (!yylexemes) { yylexemes = (YYINT *) malloc((YYLVQUEUEGROWTH) * sizeof(YYINT)); if (yylexemes == NULL) goto yyenomem; yylvals = (YYSTYPE *) malloc((YYLVQUEUEGROWTH) * sizeof(YYSTYPE)); if (yylvals == NULL) goto yyenomem; yylvlim = yylvals + YYLVQUEUEGROWTH; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylpsns = (YYLTYPE *) malloc((YYLVQUEUEGROWTH) * sizeof(YYLTYPE)); if (yylpsns == NULL) goto yyenomem; yylplim = yylpsns + YYLVQUEUEGROWTH; #endif } if (yylvp == yylve) { yylvp = yylve = yylvals; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylpp = yylpe = yylpsns; #endif yylexp = yylexemes; if (yychar >= YYEOF) { *yylve++ = yylval; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) *yylpe++ = yylloc; #endif *yylexp = (YYINT) yychar; yychar = YYEMPTY; } } } if (yychar >= YYEOF) { yylvp--; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylpp--; #endif yylexp--; yychar = YYEMPTY; } save->lexeme = (int) (yylvp - yylvals); yyps->save = save; } if (yytable[yyn] == ctry) { #if YYDEBUG if (yydebug) fprintf(stderr, "%s[%d]: state %d, shifting to state %d\n", YYDEBUGSTR, yydepth, yystate, yyctable[ctry]); #endif if (yychar < 0) { yylvp++; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylpp++; #endif yylexp++; } if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow; yystate = yyctable[ctry]; *++yystack.s_mark = (YYINT) yystate; *++yystack.l_mark = yylval; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) *++yystack.p_mark = yylloc; #endif yychar = YYEMPTY; if (yyerrflag > 0) --yyerrflag; goto yyloop; } else { yyn = yyctable[ctry]; goto yyreduce; } } /* End of code dealing with conflicts */ #endif /* YYBTYACC */ if (((yyn = yysindex[yystate]) != 0) && (yyn += yychar) >= 0 && yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) yychar) { #if YYDEBUG if (yydebug) fprintf(stderr, "%s[%d]: state %d, shifting to state %d\n", YYDEBUGSTR, yydepth, yystate, yytable[yyn]); #endif if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow; yystate = yytable[yyn]; *++yystack.s_mark = yytable[yyn]; *++yystack.l_mark = yylval; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) *++yystack.p_mark = yylloc; #endif yychar = YYEMPTY; if (yyerrflag > 0) --yyerrflag; goto yyloop; } if (((yyn = yyrindex[yystate]) != 0) && (yyn += yychar) >= 0 && yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) yychar) { yyn = yytable[yyn]; goto yyreduce; } if (yyerrflag != 0) goto yyinrecovery; #if YYBTYACC yynewerrflag = 1; goto yyerrhandler; goto yyerrlab; /* redundant goto avoids 'unused label' warning */ yyerrlab: /* explicit YYERROR from an action -- pop the rhs of the rule reduced * before looking for error recovery */ yystack.s_mark -= yym; yystate = *yystack.s_mark; yystack.l_mark -= yym; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yystack.p_mark -= yym; #endif yynewerrflag = 0; yyerrhandler: while (yyps->save) { int ctry; YYParseState *save = yyps->save; #if YYDEBUG if (yydebug) fprintf(stderr, "%s[%d]: ERROR in state %d, CONFLICT BACKTRACKING to state %d, %d tokens\n", YYDEBUGSTR, yydepth, yystate, yyps->save->state, (int)(yylvp - yylvals - yyps->save->lexeme)); #endif /* Memorize most forward-looking error state in case it's really an error. */ if (yyerrctx == NULL || yyerrctx->lexeme < yylvp - yylvals) { /* Free old saved error context state */ if (yyerrctx) yyFreeState(yyerrctx); /* Create and fill out new saved error context state */ yyerrctx = yyNewState((unsigned)(yystack.s_mark - yystack.s_base + 1)); if (yyerrctx == NULL) goto yyenomem; yyerrctx->save = yyps->save; yyerrctx->state = yystate; yyerrctx->errflag = yyerrflag; yyerrctx->yystack.s_mark = yyerrctx->yystack.s_base + (yystack.s_mark - yystack.s_base); memcpy (yyerrctx->yystack.s_base, yystack.s_base, (size_t) (yystack.s_mark - yystack.s_base + 1) * sizeof(YYINT)); yyerrctx->yystack.l_mark = yyerrctx->yystack.l_base + (yystack.l_mark - yystack.l_base); memcpy (yyerrctx->yystack.l_base, yystack.l_base, (size_t) (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yyerrctx->yystack.p_mark = yyerrctx->yystack.p_base + (yystack.p_mark - yystack.p_base); memcpy (yyerrctx->yystack.p_base, yystack.p_base, (size_t) (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); #endif yyerrctx->lexeme = (int) (yylvp - yylvals); } yylvp = yylvals + save->lexeme; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylpp = yylpsns + save->lexeme; #endif yylexp = yylexemes + save->lexeme; yychar = YYEMPTY; yystack.s_mark = yystack.s_base + (save->yystack.s_mark - save->yystack.s_base); memcpy (yystack.s_base, save->yystack.s_base, (size_t) (yystack.s_mark - yystack.s_base + 1) * sizeof(YYINT)); yystack.l_mark = yystack.l_base + (save->yystack.l_mark - save->yystack.l_base); memcpy (yystack.l_base, save->yystack.l_base, (size_t) (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yystack.p_mark = yystack.p_base + (save->yystack.p_mark - save->yystack.p_base); memcpy (yystack.p_base, save->yystack.p_base, (size_t) (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); #endif ctry = ++save->ctry; yystate = save->state; /* We tried shift, try reduce now */ if ((yyn = yyctable[ctry]) >= 0) goto yyreduce; yyps->save = save->save; save->save = NULL; yyFreeState(save); /* Nothing left on the stack -- error */ if (!yyps->save) { #if YYDEBUG if (yydebug) fprintf(stderr, "%sdebug[%d,trial]: trial parse FAILED, entering ERROR mode\n", YYPREFIX, yydepth); #endif /* Restore state as it was in the most forward-advanced error */ yylvp = yylvals + yyerrctx->lexeme; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylpp = yylpsns + yyerrctx->lexeme; #endif yylexp = yylexemes + yyerrctx->lexeme; yychar = yylexp[-1]; yylval = yylvp[-1]; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylloc = yylpp[-1]; #endif yystack.s_mark = yystack.s_base + (yyerrctx->yystack.s_mark - yyerrctx->yystack.s_base); memcpy (yystack.s_base, yyerrctx->yystack.s_base, (size_t) (yystack.s_mark - yystack.s_base + 1) * sizeof(YYINT)); yystack.l_mark = yystack.l_base + (yyerrctx->yystack.l_mark - yyerrctx->yystack.l_base); memcpy (yystack.l_base, yyerrctx->yystack.l_base, (size_t) (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yystack.p_mark = yystack.p_base + (yyerrctx->yystack.p_mark - yyerrctx->yystack.p_base); memcpy (yystack.p_base, yyerrctx->yystack.p_base, (size_t) (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); #endif yystate = yyerrctx->state; yyFreeState(yyerrctx); yyerrctx = NULL; } yynewerrflag = 1; } if (yynewerrflag == 0) goto yyinrecovery; #endif /* YYBTYACC */ YYERROR_CALL("syntax error"); #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yyerror_loc_range[1] = yylloc; /* lookahead position is error start position */ #endif #if !YYBTYACC goto yyerrlab; /* redundant goto avoids 'unused label' warning */ yyerrlab: #endif ++yynerrs; yyinrecovery: if (yyerrflag < 3) { yyerrflag = 3; for (;;) { if (((yyn = yysindex[*yystack.s_mark]) != 0) && (yyn += YYERRCODE) >= 0 && yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) YYERRCODE) { #if YYDEBUG if (yydebug) fprintf(stderr, "%s[%d]: state %d, error recovery shifting to state %d\n", YYDEBUGSTR, yydepth, *yystack.s_mark, yytable[yyn]); #endif if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow; yystate = yytable[yyn]; *++yystack.s_mark = yytable[yyn]; *++yystack.l_mark = yylval; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) /* lookahead position is error end position */ yyerror_loc_range[2] = yylloc; YYLLOC_DEFAULT(yyloc, yyerror_loc_range, 2); /* position of error span */ *++yystack.p_mark = yyloc; #endif goto yyloop; } else { #if YYDEBUG if (yydebug) fprintf(stderr, "%s[%d]: error recovery discarding state %d\n", YYDEBUGSTR, yydepth, *yystack.s_mark); #endif if (yystack.s_mark <= yystack.s_base) goto yyabort; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) /* the current TOS position is the error start position */ yyerror_loc_range[1] = *yystack.p_mark; #endif #if defined(YYDESTRUCT_CALL) #if YYBTYACC if (!yytrial) #endif /* YYBTYACC */ #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) YYDESTRUCT_CALL("error: discarding state", yystos[*yystack.s_mark], yystack.l_mark, yystack.p_mark); #else YYDESTRUCT_CALL("error: discarding state", yystos[*yystack.s_mark], yystack.l_mark); #endif /* defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) */ #endif /* defined(YYDESTRUCT_CALL) */ --yystack.s_mark; --yystack.l_mark; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) --yystack.p_mark; #endif } } } else { if (yychar == YYEOF) goto yyabort; #if YYDEBUG if (yydebug) { if ((yys = yyname[YYTRANSLATE(yychar)]) == NULL) yys = yyname[YYUNDFTOKEN]; fprintf(stderr, "%s[%d]: state %d, error recovery discarding token %d (%s)\n", YYDEBUGSTR, yydepth, yystate, yychar, yys); } #endif #if defined(YYDESTRUCT_CALL) #if YYBTYACC if (!yytrial) #endif /* YYBTYACC */ #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) YYDESTRUCT_CALL("error: discarding token", yychar, &yylval, &yylloc); #else YYDESTRUCT_CALL("error: discarding token", yychar, &yylval); #endif /* defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) */ #endif /* defined(YYDESTRUCT_CALL) */ yychar = YYEMPTY; goto yyloop; } yyreduce: yym = yylen[yyn]; #if YYDEBUG if (yydebug) { fprintf(stderr, "%s[%d]: state %d, reducing by rule %d (%s)", YYDEBUGSTR, yydepth, yystate, yyn, yyrule[yyn]); #ifdef YYSTYPE_TOSTRING #if YYBTYACC if (!yytrial) #endif /* YYBTYACC */ if (yym > 0) { int i; fputc('<', stderr); for (i = yym; i > 0; i--) { if (i != yym) fputs(", ", stderr); fputs(YYSTYPE_TOSTRING(yystos[yystack.s_mark[1-i]], yystack.l_mark[1-i]), stderr); } fputc('>', stderr); } #endif fputc('\n', stderr); } #endif if (yym > 0) yyval = yystack.l_mark[1-yym]; else memset(&yyval, 0, sizeof yyval); #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) /* Perform position reduction */ memset(&yyloc, 0, sizeof(yyloc)); #if YYBTYACC if (!yytrial) #endif /* YYBTYACC */ { YYLLOC_DEFAULT(yyloc, &yystack.p_mark[-yym], yym); /* just in case YYERROR is invoked within the action, save the start of the rhs as the error start position */ yyerror_loc_range[1] = yystack.p_mark[1-yym]; } #endif switch (yyn) { case 8: #line 185 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_expression(); } #line 3354 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 9: #line 187 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate(); } #line 3359 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 10: #line 192 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_mri_script (); PUSH_ERROR (_("MRI style script")); } #line 3367 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 11: #line 197 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); mri_draw_tree (); POP_ERROR (); } #line 3376 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 16: #line 212 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { fatal (_("%P: unrecognised keyword in MRI style script '%s'\n"), yystack.l_mark[0].name); } #line 3383 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 17: #line 215 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { config.map_filename = "-"; } #line 3390 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 20: #line 221 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_public(yystack.l_mark[-2].name, yystack.l_mark[0].etree); } #line 3395 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 21: #line 223 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_public(yystack.l_mark[-2].name, yystack.l_mark[0].etree); } #line 3400 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 22: #line 225 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_public(yystack.l_mark[-1].name, yystack.l_mark[0].etree); } #line 3405 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 23: #line 227 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_format(yystack.l_mark[0].name); } #line 3410 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 24: #line 229 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_output_section(yystack.l_mark[-2].name, yystack.l_mark[0].etree);} #line 3415 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 25: #line 231 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_output_section(yystack.l_mark[-1].name, yystack.l_mark[0].etree);} #line 3420 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 26: #line 233 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_output_section(yystack.l_mark[-2].name, yystack.l_mark[0].etree);} #line 3425 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 27: #line 235 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_align(yystack.l_mark[-2].name,yystack.l_mark[0].etree); } #line 3430 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 28: #line 237 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_align(yystack.l_mark[-2].name,yystack.l_mark[0].etree); } #line 3435 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 29: #line 239 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_alignmod(yystack.l_mark[-2].name,yystack.l_mark[0].etree); } #line 3440 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 30: #line 241 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_alignmod(yystack.l_mark[-2].name,yystack.l_mark[0].etree); } #line 3445 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 33: #line 245 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_name(yystack.l_mark[0].name); } #line 3450 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 34: #line 247 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_alias(yystack.l_mark[-2].name,yystack.l_mark[0].name,0);} #line 3455 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 35: #line 249 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_alias (yystack.l_mark[-2].name, 0, (int) yystack.l_mark[0].bigint.integer); } #line 3460 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 36: #line 251 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_base(yystack.l_mark[0].etree); } #line 3465 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 37: #line 253 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_truncate ((unsigned int) yystack.l_mark[0].bigint.integer); } #line 3470 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 40: #line 257 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldfile_open_command_file (yystack.l_mark[0].name); } #line 3475 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 42: #line 260 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_entry (yystack.l_mark[0].name, false); } #line 3480 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 44: #line 265 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_order(yystack.l_mark[0].name); } #line 3485 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 45: #line 266 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_order(yystack.l_mark[0].name); } #line 3490 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 47: #line 272 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_load(yystack.l_mark[0].name); } #line 3495 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 48: #line 273 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_load(yystack.l_mark[0].name); } #line 3500 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 49: #line 278 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_only_load(yystack.l_mark[0].name); } #line 3505 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 50: #line 280 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { mri_only_load(yystack.l_mark[0].name); } #line 3510 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 51: #line 284 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.name = NULL; } #line 3515 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 54: #line 291 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlang_add_undef (yystack.l_mark[0].name, false); } #line 3520 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 55: #line 293 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlang_add_undef (yystack.l_mark[0].name, false); } #line 3525 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 56: #line 295 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlang_add_undef (yystack.l_mark[0].name, false); } #line 3530 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 57: #line 299 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_script (); } #line 3535 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 58: #line 301 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); } #line 3540 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 71: #line 322 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_target(yystack.l_mark[-1].name); } #line 3545 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 72: #line 324 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldfile_add_library_path (yystack.l_mark[-1].name, false); } #line 3550 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 73: #line 326 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_output(yystack.l_mark[-1].name, 1); } #line 3555 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 74: #line 328 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_output_format (yystack.l_mark[-1].name, (char *) NULL, (char *) NULL, 1); } #line 3561 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 75: #line 331 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_output_format (yystack.l_mark[-5].name, yystack.l_mark[-3].name, yystack.l_mark[-1].name, 1); } #line 3566 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 76: #line 333 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldfile_set_output_arch (yystack.l_mark[-1].name, bfd_arch_unknown); } #line 3571 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 77: #line 335 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { command_line.force_common_definition = true ; } #line 3576 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 78: #line 337 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { command_line.force_group_allocation = true ; } #line 3581 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 79: #line 339 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { link_info.inhibit_common_definition = true ; } #line 3586 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 81: #line 342 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_enter_group (); } #line 3591 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 82: #line 344 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_leave_group (); } #line 3596 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 83: #line 346 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_map(yystack.l_mark[-1].name); } #line 3601 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 84: #line 348 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldfile_open_command_file (yystack.l_mark[0].name); } #line 3606 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 86: #line 351 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_nocrossref (yystack.l_mark[-1].nocrossref); } #line 3613 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 87: #line 355 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_nocrossref_to (yystack.l_mark[-1].nocrossref); } #line 3620 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 88: #line 358 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_expression (); } #line 3625 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 89: #line 359 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); } #line 3630 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 90: #line 361 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_insert (yystack.l_mark[0].name, 0); } #line 3635 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 91: #line 363 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_insert (yystack.l_mark[0].name, 1); } #line 3640 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 92: #line 365 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_memory_region_alias (yystack.l_mark[-3].name, yystack.l_mark[-1].name); } #line 3645 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 93: #line 367 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_ld_feature (yystack.l_mark[-1].name); } #line 3650 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 94: #line 371 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_inputlist(); } #line 3655 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 95: #line 373 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate(); } #line 3660 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 96: #line 377 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_input_file(yystack.l_mark[0].name,lang_input_file_is_search_file_enum, (char *)NULL); } #line 3666 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 97: #line 380 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_input_file(yystack.l_mark[0].name,lang_input_file_is_search_file_enum, (char *)NULL); } #line 3672 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 98: #line 383 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_input_file(yystack.l_mark[0].name,lang_input_file_is_search_file_enum, (char *)NULL); } #line 3678 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 99: #line 386 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_input_file(yystack.l_mark[0].name,lang_input_file_is_l_enum, (char *)NULL); } #line 3684 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 100: #line 389 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_input_file(yystack.l_mark[0].name,lang_input_file_is_l_enum, (char *)NULL); } #line 3690 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 101: #line 392 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_input_file(yystack.l_mark[0].name,lang_input_file_is_l_enum, (char *)NULL); } #line 3696 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 102: #line 395 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.integer = input_flags.add_DT_NEEDED_for_regular; input_flags.add_DT_NEEDED_for_regular = true; } #line 3702 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 103: #line 398 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { input_flags.add_DT_NEEDED_for_regular = yystack.l_mark[-2].integer; } #line 3707 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 104: #line 400 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.integer = input_flags.add_DT_NEEDED_for_regular; input_flags.add_DT_NEEDED_for_regular = true; } #line 3713 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 105: #line 403 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { input_flags.add_DT_NEEDED_for_regular = yystack.l_mark[-2].integer; } #line 3718 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 106: #line 405 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.integer = input_flags.add_DT_NEEDED_for_regular; input_flags.add_DT_NEEDED_for_regular = true; } #line 3724 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 107: #line 408 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { input_flags.add_DT_NEEDED_for_regular = yystack.l_mark[-2].integer; } #line 3729 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 112: #line 423 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_entry (yystack.l_mark[-1].name, false); } #line 3734 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 114: #line 425 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" {ldlex_expression ();} #line 3739 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 115: #line 426 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); lang_add_assignment (exp_assert (yystack.l_mark[-3].etree, yystack.l_mark[-1].name)); } #line 3745 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 116: #line 432 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.cname = yystack.l_mark[0].name; } #line 3752 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 117: #line 439 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard.name = yystack.l_mark[0].cname; yyval.wildcard.sorted = none; yyval.wildcard.exclude_name_list = NULL; yyval.wildcard.section_flag_list = NULL; yyval.wildcard.reversed = false; } #line 3763 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 118: #line 447 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard.name = yystack.l_mark[0].cname; yyval.wildcard.sorted = none; yyval.wildcard.exclude_name_list = yystack.l_mark[-2].name_list; yyval.wildcard.section_flag_list = NULL; yyval.wildcard.reversed = false; } #line 3774 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 120: #line 459 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-1].wildcard; yyval.wildcard.reversed = true; yyval.wildcard.sorted = by_name; } #line 3783 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 122: #line 469 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-1].wildcard; yyval.wildcard.sorted = by_name; } #line 3791 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 123: #line 474 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-1].wildcard; yyval.wildcard.sorted = by_none; yyval.wildcard.reversed = false; } #line 3800 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 124: #line 480 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-2].wildcard; yyval.wildcard.sorted = by_name; yyval.wildcard.reversed = true; } #line 3809 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 126: #line 490 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-1].wildcard; yyval.wildcard.sorted = by_name; } #line 3817 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 127: #line 495 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-1].wildcard; yyval.wildcard.sorted = by_alignment; } #line 3825 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 128: #line 500 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-1].wildcard; yyval.wildcard.sorted = by_none; } #line 3833 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 129: #line 505 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-2].wildcard; yyval.wildcard.sorted = by_name_alignment; } #line 3841 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 130: #line 510 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-2].wildcard; yyval.wildcard.sorted = by_name; } #line 3849 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 131: #line 515 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-2].wildcard; yyval.wildcard.sorted = by_alignment_name; } #line 3857 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 132: #line 520 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-2].wildcard; yyval.wildcard.sorted = by_alignment; } #line 3865 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 133: #line 525 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-1].wildcard; yyval.wildcard.sorted = by_init_priority; } #line 3873 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 134: #line 530 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-2].wildcard; yyval.wildcard.sorted = by_name; yyval.wildcard.reversed = true; } #line 3882 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 135: #line 536 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.wildcard = yystack.l_mark[-2].wildcard; yyval.wildcard.sorted = by_init_priority; yyval.wildcard.reversed = true; } #line 3891 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 136: #line 544 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct flag_info_list *n; n = stat_alloc (sizeof *n); if (yystack.l_mark[0].name[0] == '!') { n->with = without_flags; n->name = &yystack.l_mark[0].name[1]; } else { n->with = with_flags; n->name = yystack.l_mark[0].name; } n->valid = false; n->next = NULL; yyval.flag_info_list = n; } #line 3912 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 137: #line 562 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct flag_info_list *n; n = stat_alloc (sizeof *n); if (yystack.l_mark[0].name[0] == '!') { n->with = without_flags; n->name = &yystack.l_mark[0].name[1]; } else { n->with = with_flags; n->name = yystack.l_mark[0].name; } n->valid = false; n->next = yystack.l_mark[-2].flag_info_list; yyval.flag_info_list = n; } #line 3933 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 138: #line 583 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct flag_info *n; n = stat_alloc (sizeof *n); n->flag_list = yystack.l_mark[-1].flag_info_list; n->flags_initialized = false; n->not_with_flags = 0; n->only_with_flags = 0; yyval.flag_info = n; } #line 3946 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 139: #line 596 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct name_list *tmp; tmp = stat_alloc (sizeof *tmp); tmp->name = yystack.l_mark[0].cname; tmp->next = yystack.l_mark[-1].name_list; yyval.name_list = tmp; } #line 3957 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 140: #line 605 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct name_list *tmp; tmp = stat_alloc (sizeof *tmp); tmp->name = yystack.l_mark[0].cname; tmp->next = NULL; yyval.name_list = tmp; } #line 3968 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 141: #line 616 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct wildcard_list *tmp; tmp = stat_alloc (sizeof *tmp); tmp->next = yystack.l_mark[-2].wildcard_list; tmp->spec = yystack.l_mark[0].wildcard; yyval.wildcard_list = tmp; } #line 3979 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 142: #line 625 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct wildcard_list *tmp; tmp = stat_alloc (sizeof *tmp); tmp->next = NULL; tmp->spec = yystack.l_mark[0].wildcard; yyval.wildcard_list = tmp; } #line 3990 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 143: #line 636 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct wildcard_spec tmp; tmp.name = yystack.l_mark[0].name; tmp.exclude_name_list = NULL; tmp.sorted = none; tmp.section_flag_list = NULL; lang_add_wild (&tmp, NULL, ldgram_had_keep); } #line 4002 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 144: #line 645 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct wildcard_spec tmp; tmp.name = yystack.l_mark[0].name; tmp.exclude_name_list = NULL; tmp.sorted = none; tmp.section_flag_list = yystack.l_mark[-1].flag_info; lang_add_wild (&tmp, NULL, ldgram_had_keep); } #line 4014 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 145: #line 654 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_wild (NULL, yystack.l_mark[-1].wildcard_list, ldgram_had_keep); } #line 4021 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 146: #line 658 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct wildcard_spec tmp; tmp.name = NULL; tmp.exclude_name_list = NULL; tmp.sorted = none; tmp.section_flag_list = yystack.l_mark[-3].flag_info; lang_add_wild (&tmp, yystack.l_mark[-1].wildcard_list, ldgram_had_keep); } #line 4033 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 147: #line 667 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_wild (&yystack.l_mark[-3].wildcard, yystack.l_mark[-1].wildcard_list, ldgram_had_keep); } #line 4040 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 148: #line 671 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yystack.l_mark[-3].wildcard.section_flag_list = yystack.l_mark[-4].flag_info; lang_add_wild (&yystack.l_mark[-3].wildcard, yystack.l_mark[-1].wildcard_list, ldgram_had_keep); } #line 4048 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 150: #line 680 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldgram_had_keep = true; } #line 4053 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 151: #line 682 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldgram_had_keep = false; } #line 4058 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 154: #line 689 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_attribute (lang_object_symbols_statement_enum); } #line 4065 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 155: #line 693 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_attribute (lang_constructors_statement_enum); } #line 4072 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 156: #line 697 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { constructors_sorted = true; lang_add_attribute (lang_constructors_statement_enum); } #line 4080 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 158: #line 703 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_data ((int) yystack.l_mark[-3].integer, yystack.l_mark[-1].etree); } #line 4087 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 159: #line 707 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_string (yystack.l_mark[0].name); } #line 4094 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 160: #line 711 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_fill (yystack.l_mark[-1].fill); } #line 4101 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 161: #line 715 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_version_string (); } #line 4108 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 162: #line 719 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_expression (); } #line 4113 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 163: #line 721 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); lang_add_assignment (exp_assert (yystack.l_mark[-4].etree, yystack.l_mark[-2].name)); } #line 4121 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 164: #line 726 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldfile_open_command_file (yystack.l_mark[0].name); } #line 4128 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 170: #line 744 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.integer = yystack.l_mark[0].token; } #line 4133 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 171: #line 746 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.integer = yystack.l_mark[0].token; } #line 4138 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 172: #line 748 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.integer = yystack.l_mark[0].token; } #line 4143 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 173: #line 750 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.integer = yystack.l_mark[0].token; } #line 4148 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 174: #line 752 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.integer = yystack.l_mark[0].token; } #line 4153 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 175: #line 757 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.fill = exp_get_fill (yystack.l_mark[0].etree, 0, _("fill value")); } #line 4160 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 176: #line 764 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.fill = yystack.l_mark[0].fill; } #line 4165 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 177: #line 765 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.fill = (fill_type *) 0; } #line 4170 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 178: #line 770 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = '+'; } #line 4175 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 179: #line 772 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = '-'; } #line 4180 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 180: #line 774 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = '*'; } #line 4185 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 181: #line 776 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = '/'; } #line 4190 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 182: #line 778 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = LSHIFT; } #line 4195 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 183: #line 780 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = RSHIFT; } #line 4200 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 184: #line 782 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = '&'; } #line 4205 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 185: #line 784 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = '|'; } #line 4210 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 186: #line 786 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = '^'; } #line 4215 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 189: #line 796 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_assignment (exp_assign (yystack.l_mark[-2].name, yystack.l_mark[0].etree, false)); } #line 4222 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 190: #line 800 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_assignment (exp_assign (yystack.l_mark[-2].name, exp_binop (yystack.l_mark[-1].token, exp_nameop (NAME, yystack.l_mark[-2].name), yystack.l_mark[0].etree), false)); } #line 4233 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 191: #line 808 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_assignment (exp_assign (yystack.l_mark[-3].name, yystack.l_mark[-1].etree, true)); } #line 4240 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 192: #line 812 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_assignment (exp_provide (yystack.l_mark[-3].name, yystack.l_mark[-1].etree, false)); } #line 4247 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 193: #line 816 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_add_assignment (exp_provide (yystack.l_mark[-3].name, yystack.l_mark[-1].etree, true)); } #line 4254 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 201: #line 839 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { region = lang_memory_region_lookup (yystack.l_mark[0].name, true); } #line 4259 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 202: #line 842 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" {} #line 4264 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 203: #line 844 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldfile_open_command_file (yystack.l_mark[0].name); } #line 4269 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 205: #line 850 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { region->origin_exp = yystack.l_mark[0].etree; } #line 4276 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 206: #line 857 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { if (yychar == NAME) { yyclearin; ldlex_backup (); } region->length_exp = yystack.l_mark[0].etree; } #line 4288 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 207: #line 869 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { /* dummy action to avoid bison 1.25 error message */ } #line 4293 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 211: #line 880 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_set_flags (region, yystack.l_mark[0].name, 0); } #line 4298 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 212: #line 882 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_set_flags (region, yystack.l_mark[0].name, 1); } #line 4303 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 213: #line 887 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_startup(yystack.l_mark[-1].name); } #line 4308 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 215: #line 893 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldemul_hll((char *)NULL); } #line 4313 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 216: #line 898 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldemul_hll(yystack.l_mark[0].name); } #line 4318 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 217: #line 900 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldemul_hll(yystack.l_mark[0].name); } #line 4323 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 219: #line 909 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldemul_syslib(yystack.l_mark[0].name); } #line 4328 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 221: #line 915 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_float(true); } #line 4333 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 222: #line 917 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_float(false); } #line 4338 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 223: #line 922 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.nocrossref = NULL; } #line 4345 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 224: #line 926 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct lang_nocrossref *n; n = stat_alloc (sizeof *n); n->name = yystack.l_mark[-1].name; n->next = yystack.l_mark[0].nocrossref; yyval.nocrossref = n; } #line 4357 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 225: #line 935 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct lang_nocrossref *n; n = stat_alloc (sizeof *n); n->name = yystack.l_mark[-2].name; n->next = yystack.l_mark[0].nocrossref; yyval.nocrossref = n; } #line 4369 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 226: #line 945 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_script (); } #line 4374 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 227: #line 947 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); yyval.name = yystack.l_mark[-1].name; } #line 4379 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 228: #line 949 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_expression (); } #line 4384 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 229: #line 951 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); yyval.etree = yystack.l_mark[0].etree; } #line 4389 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 230: #line 956 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_unop ('-', yystack.l_mark[0].etree); } #line 4394 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 231: #line 958 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = yystack.l_mark[-1].etree; } #line 4399 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 232: #line 960 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_unop ((int) yystack.l_mark[-3].integer,yystack.l_mark[-1].etree); } #line 4404 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 233: #line 962 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_unop ('!', yystack.l_mark[0].etree); } #line 4409 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 234: #line 964 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = yystack.l_mark[0].etree; } #line 4414 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 235: #line 966 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_unop ('~', yystack.l_mark[0].etree);} #line 4419 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 236: #line 969 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop ('*', yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4424 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 237: #line 971 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop ('/', yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4429 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 238: #line 973 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop ('%', yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4434 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 239: #line 975 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop ('+', yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4439 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 240: #line 977 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop ('-' , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4444 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 241: #line 979 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (LSHIFT , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4449 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 242: #line 981 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (RSHIFT , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4454 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 243: #line 983 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (EQ , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4459 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 244: #line 985 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (NE , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4464 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 245: #line 987 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (LE , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4469 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 246: #line 989 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (GE , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4474 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 247: #line 991 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop ('<' , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4479 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 248: #line 993 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop ('>' , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4484 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 249: #line 995 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop ('&' , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4489 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 250: #line 997 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop ('^' , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4494 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 251: #line 999 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop ('|' , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4499 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 252: #line 1001 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_trinop ('?' , yystack.l_mark[-4].etree, yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4504 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 253: #line 1003 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (ANDAND , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4509 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 254: #line 1005 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (OROR , yystack.l_mark[-2].etree, yystack.l_mark[0].etree); } #line 4514 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 255: #line 1007 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_nameop (DEFINED, yystack.l_mark[-1].name); } #line 4519 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 256: #line 1009 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_bigintop (yystack.l_mark[0].bigint.integer, yystack.l_mark[0].bigint.str); } #line 4524 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 257: #line 1011 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_nameop (SIZEOF_HEADERS,0); } #line 4529 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 258: #line 1014 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_nameop (ALIGNOF, yystack.l_mark[0].name); } #line 4534 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 259: #line 1016 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_nameop (SIZEOF, yystack.l_mark[0].name); } #line 4539 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 260: #line 1018 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_nameop (ADDR, yystack.l_mark[0].name); } #line 4544 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 261: #line 1020 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_nameop (LOADADDR, yystack.l_mark[0].name); } #line 4549 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 262: #line 1022 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_nameop (CONSTANT,yystack.l_mark[-1].name); } #line 4554 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 263: #line 1024 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_unop (ABSOLUTE, yystack.l_mark[-1].etree); } #line 4559 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 264: #line 1026 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_unop (ALIGN_K,yystack.l_mark[-1].etree); } #line 4564 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 265: #line 1028 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (ALIGN_K,yystack.l_mark[-3].etree,yystack.l_mark[-1].etree); } #line 4569 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 266: #line 1030 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (DATA_SEGMENT_ALIGN, yystack.l_mark[-3].etree, yystack.l_mark[-1].etree); } #line 4574 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 267: #line 1032 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (DATA_SEGMENT_RELRO_END, yystack.l_mark[-1].etree, yystack.l_mark[-3].etree); } #line 4579 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 268: #line 1034 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_unop (DATA_SEGMENT_END, yystack.l_mark[-1].etree); } #line 4584 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 269: #line 1035 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_script (); } #line 4589 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 270: #line 1036 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); } #line 4594 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 271: #line 1037 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { /* The operands to the expression node are placed in the opposite order from the way in which they appear in the script as that allows us to reuse more code in fold_binary. */ yyval.etree = exp_binop (SEGMENT_START, yystack.l_mark[-1].etree, exp_nameop (NAME, yystack.l_mark[-4].name)); } #line 4606 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 272: #line 1046 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_unop (ALIGN_K,yystack.l_mark[-1].etree); } #line 4611 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 273: #line 1048 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_nameop (NAME,yystack.l_mark[0].name); } #line 4616 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 274: #line 1050 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (MAX_K, yystack.l_mark[-3].etree, yystack.l_mark[-1].etree ); } #line 4621 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 275: #line 1052 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_binop (MIN_K, yystack.l_mark[-3].etree, yystack.l_mark[-1].etree ); } #line 4626 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 276: #line 1054 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_assert (yystack.l_mark[-3].etree, yystack.l_mark[-1].name); } #line 4631 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 277: #line 1056 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_nameop (ORIGIN, yystack.l_mark[0].name); } #line 4636 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 278: #line 1058 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_nameop (LENGTH, yystack.l_mark[0].name); } #line 4641 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 279: #line 1060 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = exp_unop (LOG2CEIL, yystack.l_mark[-1].etree); } #line 4646 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 280: #line 1065 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.name = yystack.l_mark[0].name; } #line 4651 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 281: #line 1066 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.name = 0; } #line 4656 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 282: #line 1070 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = yystack.l_mark[-1].etree; } #line 4661 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 283: #line 1071 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = 0; } #line 4666 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 284: #line 1075 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = yystack.l_mark[-1].etree; } #line 4671 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 285: #line 1076 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = 0; } #line 4676 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 286: #line 1080 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = ALIGN_WITH_INPUT; } #line 4681 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 287: #line 1081 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = 0; } #line 4686 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 288: #line 1085 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = yystack.l_mark[-1].etree; } #line 4691 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 289: #line 1086 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = 0; } #line 4696 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 290: #line 1090 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = ONLY_IF_RO; } #line 4701 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 291: #line 1091 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = ONLY_IF_RW; } #line 4706 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 292: #line 1092 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = SPECIAL; } #line 4711 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 293: #line 1093 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.token = 0; } #line 4716 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 294: #line 1097 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_expression(); } #line 4721 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 295: #line 1104 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); ldlex_wild (); lang_enter_output_section_statement (yystack.l_mark[-7].name, yystack.l_mark[-5].etree, sectype, sectype_value, yystack.l_mark[-3].etree, yystack.l_mark[-1].etree, yystack.l_mark[-4].etree, yystack.l_mark[0].token, yystack.l_mark[-2].token); } #line 4731 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 296: #line 1113 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); } #line 4736 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 297: #line 1115 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { /* fill_opt may have switched the lexer into expression state, and back again, but in order to find the end of the fill expression the parser must look ahead one token. If it is a NAME, throw it away as it will have been lexed in the wrong state. */ if (yychar == NAME) { yyclearin; ldlex_backup (); } lang_leave_output_section_statement (yystack.l_mark[0].fill, yystack.l_mark[-3].name, yystack.l_mark[-1].section_phdr, yystack.l_mark[-2].name); } #line 4756 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 299: #line 1133 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_expression (); } #line 4761 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 300: #line 1135 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); } #line 4766 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 301: #line 1137 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_enter_overlay (yystack.l_mark[-5].etree, yystack.l_mark[-2].etree); } #line 4773 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 302: #line 1143 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { if (yychar == NAME) { yyclearin; ldlex_backup (); } lang_leave_overlay (yystack.l_mark[-10].etree, (int) yystack.l_mark[-11].integer, yystack.l_mark[0].fill, yystack.l_mark[-3].name, yystack.l_mark[-1].section_phdr, yystack.l_mark[-2].name); } #line 4786 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 304: #line 1158 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_expression (); } #line 4791 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 305: #line 1160 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); lang_add_assignment (exp_assign (".", yystack.l_mark[0].etree, false)); } #line 4799 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 307: #line 1166 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldfile_open_command_file (yystack.l_mark[0].name); } #line 4806 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 309: #line 1173 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { sectype = noload_section; } #line 4811 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 310: #line 1174 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { sectype = noalloc_section; } #line 4816 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 311: #line 1175 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { sectype = noalloc_section; } #line 4821 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 312: #line 1176 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { sectype = noalloc_section; } #line 4826 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 313: #line 1177 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { sectype = noalloc_section; } #line 4831 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 314: #line 1178 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { sectype = typed_readonly_section; sectype_value = yystack.l_mark[-1].etree; } #line 4836 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 315: #line 1179 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { sectype = readonly_section; } #line 4841 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 316: #line 1180 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { sectype = type_section; sectype_value = yystack.l_mark[0].etree; } #line 4846 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 318: #line 1185 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { sectype = normal_section; } #line 4851 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 319: #line 1186 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { sectype = normal_section; } #line 4856 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 320: #line 1190 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = yystack.l_mark[-2].etree; } #line 4861 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 321: #line 1191 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = (etree_type *)NULL; } #line 4866 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 322: #line 1196 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = yystack.l_mark[-3].etree; } #line 4871 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 323: #line 1198 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = yystack.l_mark[-7].etree; } #line 4876 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 324: #line 1202 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = yystack.l_mark[-1].etree; } #line 4881 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 325: #line 1203 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = (etree_type *) NULL; } #line 4886 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 326: #line 1208 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.integer = 0; } #line 4891 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 327: #line 1210 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.integer = 1; } #line 4896 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 328: #line 1215 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.name = yystack.l_mark[0].name; } #line 4901 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 329: #line 1216 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.name = DEFAULT_MEMORY_REGION; } #line 4906 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 330: #line 1221 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.section_phdr = NULL; } #line 4913 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 331: #line 1225 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct lang_output_section_phdr_list *n; n = stat_alloc (sizeof *n); n->name = yystack.l_mark[0].name; n->used = false; n->next = yystack.l_mark[-2].section_phdr; yyval.section_phdr = n; } #line 4926 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 333: #line 1240 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_wild (); lang_enter_overlay_section (yystack.l_mark[0].name); } #line 4934 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 334: #line 1247 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); } #line 4939 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 335: #line 1249 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { if (yychar == NAME) { yyclearin; ldlex_backup (); } lang_leave_overlay_section (yystack.l_mark[0].fill, yystack.l_mark[-1].section_phdr); } #line 4951 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 340: #line 1270 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_expression (); } #line 4956 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 341: #line 1271 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); } #line 4961 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 342: #line 1273 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_new_phdr (yystack.l_mark[-5].name, yystack.l_mark[-3].etree, yystack.l_mark[-2].phdr.filehdr, yystack.l_mark[-2].phdr.phdrs, yystack.l_mark[-2].phdr.at, yystack.l_mark[-2].phdr.flags); } #line 4969 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 343: #line 1281 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = yystack.l_mark[0].etree; if (yystack.l_mark[0].etree->type.node_class == etree_name && yystack.l_mark[0].etree->type.node_code == NAME) { const char *s; unsigned int i; static const char * const phdr_types[] = { "PT_NULL", "PT_LOAD", "PT_DYNAMIC", "PT_INTERP", "PT_NOTE", "PT_SHLIB", "PT_PHDR", "PT_TLS" }; s = yystack.l_mark[0].etree->name.name; for (i = 0; i < sizeof phdr_types / sizeof phdr_types[0]; i++) if (strcmp (s, phdr_types[i]) == 0) { yyval.etree = exp_intop (i); break; } if (i == sizeof phdr_types / sizeof phdr_types[0]) { if (strcmp (s, "PT_GNU_EH_FRAME") == 0) yyval.etree = exp_intop (0x6474e550); else if (strcmp (s, "PT_GNU_STACK") == 0) yyval.etree = exp_intop (0x6474e551); else if (strcmp (s, "PT_GNU_RELRO") == 0) yyval.etree = exp_intop (0x6474e552); else if (strcmp (s, "PT_GNU_PROPERTY") == 0) yyval.etree = exp_intop (0x6474e553); else { einfo (_("\ %X%P:%pS: unknown phdr type `%s' (try integer literal)\n"), NULL, s); yyval.etree = exp_intop (0); } } } } #line 5017 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 344: #line 1329 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { memset (&yyval.phdr, 0, sizeof (struct phdr_info)); } #line 5024 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 345: #line 1333 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.phdr = yystack.l_mark[0].phdr; if (strcmp (yystack.l_mark[-2].name, "FILEHDR") == 0 && yystack.l_mark[-1].etree == NULL) yyval.phdr.filehdr = true; else if (strcmp (yystack.l_mark[-2].name, "PHDRS") == 0 && yystack.l_mark[-1].etree == NULL) yyval.phdr.phdrs = true; else if (strcmp (yystack.l_mark[-2].name, "FLAGS") == 0 && yystack.l_mark[-1].etree != NULL) yyval.phdr.flags = yystack.l_mark[-1].etree; else einfo (_("%X%P:%pS: PHDRS syntax error at `%s'\n"), NULL, yystack.l_mark[-2].name); } #line 5040 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 346: #line 1346 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.phdr = yystack.l_mark[0].phdr; yyval.phdr.at = yystack.l_mark[-2].etree; } #line 5048 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 347: #line 1354 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = NULL; } #line 5055 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 348: #line 1358 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.etree = yystack.l_mark[-1].etree; } #line 5062 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 349: #line 1364 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_version_file (); PUSH_ERROR (_("dynamic list")); } #line 5070 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 350: #line 1369 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); POP_ERROR (); } #line 5078 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 354: #line 1386 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_append_dynamic_list (current_dynamic_list_p, yystack.l_mark[-1].versyms); } #line 5085 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 355: #line 1394 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_version_file (); PUSH_ERROR (_("VERSION script")); } #line 5093 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 356: #line 1399 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); POP_ERROR (); } #line 5101 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 357: #line 1408 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_version_script (); } #line 5108 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 358: #line 1412 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); } #line 5115 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 361: #line 1424 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_register_vers_node (NULL, yystack.l_mark[-2].versnode, NULL); } #line 5122 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 362: #line 1428 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_register_vers_node (yystack.l_mark[-4].name, yystack.l_mark[-2].versnode, NULL); } #line 5129 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 363: #line 1432 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { lang_register_vers_node (yystack.l_mark[-5].name, yystack.l_mark[-3].versnode, yystack.l_mark[-1].deflist); } #line 5136 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 364: #line 1439 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.deflist = lang_add_vers_depend (NULL, yystack.l_mark[0].name); } #line 5143 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 365: #line 1443 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.deflist = lang_add_vers_depend (yystack.l_mark[-1].deflist, yystack.l_mark[0].name); } #line 5150 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 366: #line 1450 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versnode = lang_new_vers_node (NULL, NULL); } #line 5157 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 367: #line 1454 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versnode = lang_new_vers_node (yystack.l_mark[-1].versyms, NULL); } #line 5164 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 368: #line 1458 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versnode = lang_new_vers_node (yystack.l_mark[-1].versyms, NULL); } #line 5171 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 369: #line 1462 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versnode = lang_new_vers_node (NULL, yystack.l_mark[-1].versyms); } #line 5178 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 370: #line 1466 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versnode = lang_new_vers_node (yystack.l_mark[-5].versyms, yystack.l_mark[-1].versyms); } #line 5185 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 371: #line 1473 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versyms = lang_new_vers_pattern (NULL, yystack.l_mark[0].name, ldgram_vers_current_lang, false); } #line 5192 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 372: #line 1477 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versyms = lang_new_vers_pattern (NULL, yystack.l_mark[0].name, ldgram_vers_current_lang, true); } #line 5199 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 373: #line 1481 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versyms = lang_new_vers_pattern (yystack.l_mark[-2].versyms, yystack.l_mark[0].name, ldgram_vers_current_lang, false); } #line 5206 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 374: #line 1485 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versyms = lang_new_vers_pattern (yystack.l_mark[-2].versyms, yystack.l_mark[0].name, ldgram_vers_current_lang, true); } #line 5213 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 375: #line 1489 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.name = ldgram_vers_current_lang; ldgram_vers_current_lang = yystack.l_mark[-1].name; } #line 5221 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 376: #line 1494 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { struct bfd_elf_version_expr *pat; for (pat = yystack.l_mark[-2].versyms; pat->next != NULL; pat = pat->next); pat->next = yystack.l_mark[-8].versyms; yyval.versyms = yystack.l_mark[-2].versyms; ldgram_vers_current_lang = yystack.l_mark[-3].name; } #line 5232 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 377: #line 1502 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.name = ldgram_vers_current_lang; ldgram_vers_current_lang = yystack.l_mark[-1].name; } #line 5240 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 378: #line 1507 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versyms = yystack.l_mark[-2].versyms; ldgram_vers_current_lang = yystack.l_mark[-3].name; } #line 5248 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 379: #line 1512 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versyms = lang_new_vers_pattern (NULL, "global", ldgram_vers_current_lang, false); } #line 5255 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 380: #line 1516 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versyms = lang_new_vers_pattern (yystack.l_mark[-2].versyms, "global", ldgram_vers_current_lang, false); } #line 5262 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 381: #line 1520 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versyms = lang_new_vers_pattern (NULL, "local", ldgram_vers_current_lang, false); } #line 5269 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 382: #line 1524 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versyms = lang_new_vers_pattern (yystack.l_mark[-2].versyms, "local", ldgram_vers_current_lang, false); } #line 5276 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 383: #line 1528 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versyms = lang_new_vers_pattern (NULL, "extern", ldgram_vers_current_lang, false); } #line 5283 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 384: #line 1532 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { yyval.versyms = lang_new_vers_pattern (yystack.l_mark[-2].versyms, "extern", ldgram_vers_current_lang, false); } #line 5290 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 387: #line 1543 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_script (); PUSH_ERROR (_("section-ordering-file script")); } #line 5298 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 388: #line 1548 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); POP_ERROR (); } #line 5306 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 392: #line 1561 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_wild (); lang_enter_output_section_statement (yystack.l_mark[-1].name, NULL, 0, NULL, NULL, NULL, NULL, 0, 0); } #line 5315 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; case 393: #line 1569 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.y" { ldlex_popstate (); lang_leave_output_section_statement (NULL, NULL, NULL, NULL); } #line 5323 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" break; #line 5325 "/net/quasar/src-5/NetBSD/src/tools/binutils/../../external/gpl3/binutils/dist/ld/ldgram.c" default: break; } yystack.s_mark -= yym; yystate = *yystack.s_mark; yystack.l_mark -= yym; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yystack.p_mark -= yym; #endif yym = yylhs[yyn]; if (yystate == 0 && yym == 0) { #if YYDEBUG if (yydebug) { fprintf(stderr, "%s[%d]: after reduction, ", YYDEBUGSTR, yydepth); #ifdef YYSTYPE_TOSTRING #if YYBTYACC if (!yytrial) #endif /* YYBTYACC */ fprintf(stderr, "result is <%s>, ", YYSTYPE_TOSTRING(yystos[YYFINAL], yyval)); #endif fprintf(stderr, "shifting from state 0 to final state %d\n", YYFINAL); } #endif yystate = YYFINAL; *++yystack.s_mark = YYFINAL; *++yystack.l_mark = yyval; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) *++yystack.p_mark = yyloc; #endif if (yychar < 0) { #if YYBTYACC do { if (yylvp < yylve) { /* we're currently re-reading tokens */ yylval = *yylvp++; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylloc = *yylpp++; #endif yychar = *yylexp++; break; } if (yyps->save) { /* in trial mode; save scanner results for future parse attempts */ if (yylvp == yylvlim) { /* Enlarge lexical value queue */ size_t p = (size_t) (yylvp - yylvals); size_t s = (size_t) (yylvlim - yylvals); s += YYLVQUEUEGROWTH; if ((yylexemes = (YYINT *)realloc(yylexemes, s * sizeof(YYINT))) == NULL) goto yyenomem; if ((yylvals = (YYSTYPE *)realloc(yylvals, s * sizeof(YYSTYPE))) == NULL) goto yyenomem; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) if ((yylpsns = (YYLTYPE *)realloc(yylpsns, s * sizeof(YYLTYPE))) == NULL) goto yyenomem; #endif yylvp = yylve = yylvals + p; yylvlim = yylvals + s; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylpp = yylpe = yylpsns + p; yylplim = yylpsns + s; #endif yylexp = yylexemes + p; } *yylexp = (YYINT) YYLEX; *yylvp++ = yylval; yylve++; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) *yylpp++ = yylloc; yylpe++; #endif yychar = *yylexp++; break; } /* normal operation, no conflict encountered */ #endif /* YYBTYACC */ yychar = YYLEX; #if YYBTYACC } while (0); #endif /* YYBTYACC */ if (yychar < 0) yychar = YYEOF; #if YYDEBUG if (yydebug) { if ((yys = yyname[YYTRANSLATE(yychar)]) == NULL) yys = yyname[YYUNDFTOKEN]; fprintf(stderr, "%s[%d]: state %d, reading token %d (%s)\n", YYDEBUGSTR, yydepth, YYFINAL, yychar, yys); } #endif } if (yychar == YYEOF) goto yyaccept; goto yyloop; } if (((yyn = yygindex[yym]) != 0) && (yyn += yystate) >= 0 && yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) yystate) yystate = yytable[yyn]; else yystate = yydgoto[yym]; #if YYDEBUG if (yydebug) { fprintf(stderr, "%s[%d]: after reduction, ", YYDEBUGSTR, yydepth); #ifdef YYSTYPE_TOSTRING #if YYBTYACC if (!yytrial) #endif /* YYBTYACC */ fprintf(stderr, "result is <%s>, ", YYSTYPE_TOSTRING(yystos[yystate], yyval)); #endif fprintf(stderr, "shifting from state %d to state %d\n", *yystack.s_mark, yystate); } #endif if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow; *++yystack.s_mark = (YYINT) yystate; *++yystack.l_mark = yyval; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) *++yystack.p_mark = yyloc; #endif goto yyloop; #if YYBTYACC /* Reduction declares that this path is valid. Set yypath and do a full parse */ yyvalid: if (yypath) YYABORT; while (yyps->save) { YYParseState *save = yyps->save; yyps->save = save->save; save->save = yypath; yypath = save; } #if YYDEBUG if (yydebug) fprintf(stderr, "%s[%d]: state %d, CONFLICT trial successful, backtracking to state %d, %d tokens\n", YYDEBUGSTR, yydepth, yystate, yypath->state, (int)(yylvp - yylvals - yypath->lexeme)); #endif if (yyerrctx) { yyFreeState(yyerrctx); yyerrctx = NULL; } yylvp = yylvals + yypath->lexeme; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yylpp = yylpsns + yypath->lexeme; #endif yylexp = yylexemes + yypath->lexeme; yychar = YYEMPTY; yystack.s_mark = yystack.s_base + (yypath->yystack.s_mark - yypath->yystack.s_base); memcpy (yystack.s_base, yypath->yystack.s_base, (size_t) (yystack.s_mark - yystack.s_base + 1) * sizeof(YYINT)); yystack.l_mark = yystack.l_base + (yypath->yystack.l_mark - yypath->yystack.l_base); memcpy (yystack.l_base, yypath->yystack.l_base, (size_t) (yystack.l_mark - yystack.l_base + 1) * sizeof(YYSTYPE)); #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) yystack.p_mark = yystack.p_base + (yypath->yystack.p_mark - yypath->yystack.p_base); memcpy (yystack.p_base, yypath->yystack.p_base, (size_t) (yystack.p_mark - yystack.p_base + 1) * sizeof(YYLTYPE)); #endif yystate = yypath->state; goto yyloop; #endif /* YYBTYACC */ yyoverflow: YYERROR_CALL("yacc stack overflow"); #if YYBTYACC goto yyabort_nomem; yyenomem: YYERROR_CALL("memory exhausted"); yyabort_nomem: #endif /* YYBTYACC */ yyresult = 2; goto yyreturn; yyabort: yyresult = 1; goto yyreturn; yyaccept: #if YYBTYACC if (yyps->save) goto yyvalid; #endif /* YYBTYACC */ yyresult = 0; yyreturn: #if defined(YYDESTRUCT_CALL) if (yychar != YYEOF && yychar != YYEMPTY) #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) YYDESTRUCT_CALL("cleanup: discarding token", yychar, &yylval, &yylloc); #else YYDESTRUCT_CALL("cleanup: discarding token", yychar, &yylval); #endif /* defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) */ { YYSTYPE *pv; #if defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) YYLTYPE *pp; for (pv = yystack.l_base, pp = yystack.p_base; pv <= yystack.l_mark; ++pv, ++pp) YYDESTRUCT_CALL("cleanup: discarding state", yystos[*(yystack.s_base + (pv - yystack.l_base))], pv, pp); #else for (pv = yystack.l_base; pv <= yystack.l_mark; ++pv) YYDESTRUCT_CALL("cleanup: discarding state", yystos[*(yystack.s_base + (pv - yystack.l_base))], pv); #endif /* defined(YYLTYPE) || defined(YYLTYPE_IS_DECLARED) */ } #endif /* defined(YYDESTRUCT_CALL) */ #if YYBTYACC if (yyerrctx) { yyFreeState(yyerrctx); yyerrctx = NULL; } while (yyps) { YYParseState *save = yyps; yyps = save->save; save->save = NULL; yyFreeState(save); } while (yypath) { YYParseState *save = yypath; yypath = save->save; save->save = NULL; yyFreeState(save); } #endif /* YYBTYACC */ yyfreestack(&yystack); return (yyresult); }