Home | History | Annotate | Line # | Download | only in ld
ldgram.c revision 1.10
      1 /* A Bison parser, made by GNU Bison 3.8.2.  */
      2 
      3 /* Bison implementation for Yacc-like parsers in C
      4 
      5    Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
      6    Inc.
      7 
      8    This program is free software: you can redistribute it and/or modify
      9    it under the terms of the GNU General Public License as published by
     10    the Free Software Foundation, either version 3 of the License, or
     11    (at your option) any later version.
     12 
     13    This program is distributed in the hope that it will be useful,
     14    but WITHOUT ANY WARRANTY; without even the implied warranty of
     15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     16    GNU General Public License for more details.
     17 
     18    You should have received a copy of the GNU General Public License
     19    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
     20 
     21 /* As a special exception, you may create a larger work that contains
     22    part or all of the Bison parser skeleton and distribute that work
     23    under terms of your choice, so long as that work isn't itself a
     24    parser generator using the skeleton or a modified version thereof
     25    as a parser skeleton.  Alternatively, if you modify or redistribute
     26    the parser skeleton itself, you may (at your option) remove this
     27    special exception, which will cause the skeleton and the resulting
     28    Bison output files to be licensed under the GNU General Public
     29    License without this special exception.
     30 
     31    This special exception was added by the Free Software Foundation in
     32    version 2.2 of Bison.  */
     33 
     34 /* C LALR(1) parser skeleton written by Richard Stallman, by
     35    simplifying the original so-called "semantic" parser.  */
     36 
     37 /* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
     38    especially those whose name start with YY_ or yy_.  They are
     39    private implementation details that can be changed or removed.  */
     40 
     41 /* All symbols defined below should begin with yy or YY, to avoid
     42    infringing on user name space.  This should be done even for local
     43    variables, as they might otherwise be expanded by user macros.
     44    There are some unavoidable exceptions within include files to
     45    define necessary library symbols; they are noted "INFRINGES ON
     46    USER NAME SPACE" below.  */
     47 
     48 /* Identify Bison output, and Bison version.  */
     49 #define YYBISON 30802
     50 
     51 /* Bison version string.  */
     52 #define YYBISON_VERSION "3.8.2"
     53 
     54 /* Skeleton name.  */
     55 #define YYSKELETON_NAME "yacc.c"
     56 
     57 /* Pure parsers.  */
     58 #define YYPURE 0
     59 
     60 /* Push parsers.  */
     61 #define YYPUSH 0
     62 
     63 /* Pull parsers.  */
     64 #define YYPULL 1
     65 
     66 
     67 
     68 
     69 /* First part of user prologue.  */
     70 #line 22 "ldgram.y"
     71 
     72 /*
     73 
     74  */
     75 
     76 #define DONTDECLARE_MALLOC
     77 
     78 #include "sysdep.h"
     79 #include "bfd.h"
     80 #include "bfdlink.h"
     81 #include "ctf-api.h"
     82 #include "ld.h"
     83 #include "ldexp.h"
     84 #include "ldver.h"
     85 #include "ldlang.h"
     86 #include "ldfile.h"
     87 #include "ldemul.h"
     88 #include "ldmisc.h"
     89 #include "ldmain.h"
     90 #include "mri.h"
     91 #include "ldctor.h"
     92 #include "ldlex.h"
     93 
     94 #ifndef YYDEBUG
     95 #define YYDEBUG 1
     96 #endif
     97 
     98 static enum section_type sectype;
     99 static etree_type *sectype_value;
    100 static lang_memory_region_type *region;
    101 
    102 static bool ldgram_had_keep = false;
    103 static char *ldgram_vers_current_lang = NULL;
    104 
    105 #define ERROR_NAME_MAX 20
    106 static char *error_names[ERROR_NAME_MAX];
    107 static int error_index;
    108 #define PUSH_ERROR(x) if (error_index < ERROR_NAME_MAX) error_names[error_index] = x; error_index++;
    109 #define POP_ERROR()   error_index--;
    110 
    111 #line 112 "ldgram.c"
    112 
    113 # ifndef YY_CAST
    114 #  ifdef __cplusplus
    115 #   define YY_CAST(Type, Val) static_cast<Type> (Val)
    116 #   define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast<Type> (Val)
    117 #  else
    118 #   define YY_CAST(Type, Val) ((Type) (Val))
    119 #   define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
    120 #  endif
    121 # endif
    122 # ifndef YY_NULLPTR
    123 #  if defined __cplusplus
    124 #   if 201103L <= __cplusplus
    125 #    define YY_NULLPTR nullptr
    126 #   else
    127 #    define YY_NULLPTR 0
    128 #   endif
    129 #  else
    130 #   define YY_NULLPTR ((void*)0)
    131 #  endif
    132 # endif
    133 
    134 /* Use api.header.include to #include this header
    135    instead of duplicating it here.  */
    136 #ifndef YY_YY_LDGRAM_H_INCLUDED
    137 # define YY_YY_LDGRAM_H_INCLUDED
    138 /* Debug traces.  */
    139 #ifndef YYDEBUG
    140 # define YYDEBUG 0
    141 #endif
    142 #if YYDEBUG
    143 extern int yydebug;
    144 #endif
    145 
    146 /* Token kinds.  */
    147 #ifndef YYTOKENTYPE
    148 # define YYTOKENTYPE
    149   enum yytokentype
    150   {
    151     YYEMPTY = -2,
    152     YYEOF = 0,                     /* "end of file"  */
    153     YYerror = 256,                 /* error  */
    154     YYUNDEF = 257,                 /* "invalid token"  */
    155     INT = 258,                     /* INT  */
    156     NAME = 259,                    /* NAME  */
    157     LNAME = 260,                   /* LNAME  */
    158     PLUSEQ = 261,                  /* PLUSEQ  */
    159     MINUSEQ = 262,                 /* MINUSEQ  */
    160     MULTEQ = 263,                  /* MULTEQ  */
    161     DIVEQ = 264,                   /* DIVEQ  */
    162     LSHIFTEQ = 265,                /* LSHIFTEQ  */
    163     RSHIFTEQ = 266,                /* RSHIFTEQ  */
    164     ANDEQ = 267,                   /* ANDEQ  */
    165     OREQ = 268,                    /* OREQ  */
    166     OROR = 269,                    /* OROR  */
    167     ANDAND = 270,                  /* ANDAND  */
    168     EQ = 271,                      /* EQ  */
    169     NE = 272,                      /* NE  */
    170     LE = 273,                      /* LE  */
    171     GE = 274,                      /* GE  */
    172     LSHIFT = 275,                  /* LSHIFT  */
    173     RSHIFT = 276,                  /* RSHIFT  */
    174     UNARY = 277,                   /* UNARY  */
    175     END = 278,                     /* END  */
    176     ALIGN_K = 279,                 /* ALIGN_K  */
    177     BLOCK = 280,                   /* BLOCK  */
    178     BIND = 281,                    /* BIND  */
    179     QUAD = 282,                    /* QUAD  */
    180     SQUAD = 283,                   /* SQUAD  */
    181     LONG = 284,                    /* LONG  */
    182     SHORT = 285,                   /* SHORT  */
    183     BYTE = 286,                    /* BYTE  */
    184     SECTIONS = 287,                /* SECTIONS  */
    185     PHDRS = 288,                   /* PHDRS  */
    186     INSERT_K = 289,                /* INSERT_K  */
    187     AFTER = 290,                   /* AFTER  */
    188     BEFORE = 291,                  /* BEFORE  */
    189     DATA_SEGMENT_ALIGN = 292,      /* DATA_SEGMENT_ALIGN  */
    190     DATA_SEGMENT_RELRO_END = 293,  /* DATA_SEGMENT_RELRO_END  */
    191     DATA_SEGMENT_END = 294,        /* DATA_SEGMENT_END  */
    192     SORT_BY_NAME = 295,            /* SORT_BY_NAME  */
    193     SORT_BY_ALIGNMENT = 296,       /* SORT_BY_ALIGNMENT  */
    194     SORT_NONE = 297,               /* SORT_NONE  */
    195     SORT_BY_INIT_PRIORITY = 298,   /* SORT_BY_INIT_PRIORITY  */
    196     SIZEOF_HEADERS = 299,          /* SIZEOF_HEADERS  */
    197     OUTPUT_FORMAT = 300,           /* OUTPUT_FORMAT  */
    198     FORCE_COMMON_ALLOCATION = 301, /* FORCE_COMMON_ALLOCATION  */
    199     OUTPUT_ARCH = 302,             /* OUTPUT_ARCH  */
    200     INHIBIT_COMMON_ALLOCATION = 303, /* INHIBIT_COMMON_ALLOCATION  */
    201     FORCE_GROUP_ALLOCATION = 304,  /* FORCE_GROUP_ALLOCATION  */
    202     SEGMENT_START = 305,           /* SEGMENT_START  */
    203     INCLUDE = 306,                 /* INCLUDE  */
    204     MEMORY = 307,                  /* MEMORY  */
    205     REGION_ALIAS = 308,            /* REGION_ALIAS  */
    206     LD_FEATURE = 309,              /* LD_FEATURE  */
    207     NOLOAD = 310,                  /* NOLOAD  */
    208     DSECT = 311,                   /* DSECT  */
    209     COPY = 312,                    /* COPY  */
    210     INFO = 313,                    /* INFO  */
    211     OVERLAY = 314,                 /* OVERLAY  */
    212     READONLY = 315,                /* READONLY  */
    213     TYPE = 316,                    /* TYPE  */
    214     DEFINED = 317,                 /* DEFINED  */
    215     TARGET_K = 318,                /* TARGET_K  */
    216     SEARCH_DIR = 319,              /* SEARCH_DIR  */
    217     MAP = 320,                     /* MAP  */
    218     ENTRY = 321,                   /* ENTRY  */
    219     NEXT = 322,                    /* NEXT  */
    220     SIZEOF = 323,                  /* SIZEOF  */
    221     ALIGNOF = 324,                 /* ALIGNOF  */
    222     ADDR = 325,                    /* ADDR  */
    223     LOADADDR = 326,                /* LOADADDR  */
    224     MAX_K = 327,                   /* MAX_K  */
    225     MIN_K = 328,                   /* MIN_K  */
    226     STARTUP = 329,                 /* STARTUP  */
    227     HLL = 330,                     /* HLL  */
    228     SYSLIB = 331,                  /* SYSLIB  */
    229     FLOAT = 332,                   /* FLOAT  */
    230     NOFLOAT = 333,                 /* NOFLOAT  */
    231     NOCROSSREFS = 334,             /* NOCROSSREFS  */
    232     NOCROSSREFS_TO = 335,          /* NOCROSSREFS_TO  */
    233     ORIGIN = 336,                  /* ORIGIN  */
    234     FILL = 337,                    /* FILL  */
    235     LENGTH = 338,                  /* LENGTH  */
    236     CREATE_OBJECT_SYMBOLS = 339,   /* CREATE_OBJECT_SYMBOLS  */
    237     INPUT = 340,                   /* INPUT  */
    238     GROUP = 341,                   /* GROUP  */
    239     OUTPUT = 342,                  /* OUTPUT  */
    240     CONSTRUCTORS = 343,            /* CONSTRUCTORS  */
    241     ALIGNMOD = 344,                /* ALIGNMOD  */
    242     AT = 345,                      /* AT  */
    243     SUBALIGN = 346,                /* SUBALIGN  */
    244     HIDDEN = 347,                  /* HIDDEN  */
    245     PROVIDE = 348,                 /* PROVIDE  */
    246     PROVIDE_HIDDEN = 349,          /* PROVIDE_HIDDEN  */
    247     AS_NEEDED = 350,               /* AS_NEEDED  */
    248     CHIP = 351,                    /* CHIP  */
    249     LIST = 352,                    /* LIST  */
    250     SECT = 353,                    /* SECT  */
    251     ABSOLUTE = 354,                /* ABSOLUTE  */
    252     LOAD = 355,                    /* LOAD  */
    253     NEWLINE = 356,                 /* NEWLINE  */
    254     ENDWORD = 357,                 /* ENDWORD  */
    255     ORDER = 358,                   /* ORDER  */
    256     NAMEWORD = 359,                /* NAMEWORD  */
    257     ASSERT_K = 360,                /* ASSERT_K  */
    258     LOG2CEIL = 361,                /* LOG2CEIL  */
    259     FORMAT = 362,                  /* FORMAT  */
    260     PUBLIC = 363,                  /* PUBLIC  */
    261     DEFSYMEND = 364,               /* DEFSYMEND  */
    262     BASE = 365,                    /* BASE  */
    263     ALIAS = 366,                   /* ALIAS  */
    264     TRUNCATE = 367,                /* TRUNCATE  */
    265     REL = 368,                     /* REL  */
    266     INPUT_SCRIPT = 369,            /* INPUT_SCRIPT  */
    267     INPUT_MRI_SCRIPT = 370,        /* INPUT_MRI_SCRIPT  */
    268     INPUT_DEFSYM = 371,            /* INPUT_DEFSYM  */
    269     CASE = 372,                    /* CASE  */
    270     EXTERN = 373,                  /* EXTERN  */
    271     START = 374,                   /* START  */
    272     VERS_TAG = 375,                /* VERS_TAG  */
    273     VERS_IDENTIFIER = 376,         /* VERS_IDENTIFIER  */
    274     GLOBAL = 377,                  /* GLOBAL  */
    275     LOCAL = 378,                   /* LOCAL  */
    276     VERSIONK = 379,                /* VERSIONK  */
    277     INPUT_VERSION_SCRIPT = 380,    /* INPUT_VERSION_SCRIPT  */
    278     KEEP = 381,                    /* KEEP  */
    279     ONLY_IF_RO = 382,              /* ONLY_IF_RO  */
    280     ONLY_IF_RW = 383,              /* ONLY_IF_RW  */
    281     SPECIAL = 384,                 /* SPECIAL  */
    282     INPUT_SECTION_FLAGS = 385,     /* INPUT_SECTION_FLAGS  */
    283     ALIGN_WITH_INPUT = 386,        /* ALIGN_WITH_INPUT  */
    284     EXCLUDE_FILE = 387,            /* EXCLUDE_FILE  */
    285     CONSTANT = 388,                /* CONSTANT  */
    286     INPUT_DYNAMIC_LIST = 389       /* INPUT_DYNAMIC_LIST  */
    287   };
    288   typedef enum yytokentype yytoken_kind_t;
    289 #endif
    290 /* Token kinds.  */
    291 #define YYEMPTY -2
    292 #define YYEOF 0
    293 #define YYerror 256
    294 #define YYUNDEF 257
    295 #define INT 258
    296 #define NAME 259
    297 #define LNAME 260
    298 #define PLUSEQ 261
    299 #define MINUSEQ 262
    300 #define MULTEQ 263
    301 #define DIVEQ 264
    302 #define LSHIFTEQ 265
    303 #define RSHIFTEQ 266
    304 #define ANDEQ 267
    305 #define OREQ 268
    306 #define OROR 269
    307 #define ANDAND 270
    308 #define EQ 271
    309 #define NE 272
    310 #define LE 273
    311 #define GE 274
    312 #define LSHIFT 275
    313 #define RSHIFT 276
    314 #define UNARY 277
    315 #define END 278
    316 #define ALIGN_K 279
    317 #define BLOCK 280
    318 #define BIND 281
    319 #define QUAD 282
    320 #define SQUAD 283
    321 #define LONG 284
    322 #define SHORT 285
    323 #define BYTE 286
    324 #define SECTIONS 287
    325 #define PHDRS 288
    326 #define INSERT_K 289
    327 #define AFTER 290
    328 #define BEFORE 291
    329 #define DATA_SEGMENT_ALIGN 292
    330 #define DATA_SEGMENT_RELRO_END 293
    331 #define DATA_SEGMENT_END 294
    332 #define SORT_BY_NAME 295
    333 #define SORT_BY_ALIGNMENT 296
    334 #define SORT_NONE 297
    335 #define SORT_BY_INIT_PRIORITY 298
    336 #define SIZEOF_HEADERS 299
    337 #define OUTPUT_FORMAT 300
    338 #define FORCE_COMMON_ALLOCATION 301
    339 #define OUTPUT_ARCH 302
    340 #define INHIBIT_COMMON_ALLOCATION 303
    341 #define FORCE_GROUP_ALLOCATION 304
    342 #define SEGMENT_START 305
    343 #define INCLUDE 306
    344 #define MEMORY 307
    345 #define REGION_ALIAS 308
    346 #define LD_FEATURE 309
    347 #define NOLOAD 310
    348 #define DSECT 311
    349 #define COPY 312
    350 #define INFO 313
    351 #define OVERLAY 314
    352 #define READONLY 315
    353 #define TYPE 316
    354 #define DEFINED 317
    355 #define TARGET_K 318
    356 #define SEARCH_DIR 319
    357 #define MAP 320
    358 #define ENTRY 321
    359 #define NEXT 322
    360 #define SIZEOF 323
    361 #define ALIGNOF 324
    362 #define ADDR 325
    363 #define LOADADDR 326
    364 #define MAX_K 327
    365 #define MIN_K 328
    366 #define STARTUP 329
    367 #define HLL 330
    368 #define SYSLIB 331
    369 #define FLOAT 332
    370 #define NOFLOAT 333
    371 #define NOCROSSREFS 334
    372 #define NOCROSSREFS_TO 335
    373 #define ORIGIN 336
    374 #define FILL 337
    375 #define LENGTH 338
    376 #define CREATE_OBJECT_SYMBOLS 339
    377 #define INPUT 340
    378 #define GROUP 341
    379 #define OUTPUT 342
    380 #define CONSTRUCTORS 343
    381 #define ALIGNMOD 344
    382 #define AT 345
    383 #define SUBALIGN 346
    384 #define HIDDEN 347
    385 #define PROVIDE 348
    386 #define PROVIDE_HIDDEN 349
    387 #define AS_NEEDED 350
    388 #define CHIP 351
    389 #define LIST 352
    390 #define SECT 353
    391 #define ABSOLUTE 354
    392 #define LOAD 355
    393 #define NEWLINE 356
    394 #define ENDWORD 357
    395 #define ORDER 358
    396 #define NAMEWORD 359
    397 #define ASSERT_K 360
    398 #define LOG2CEIL 361
    399 #define FORMAT 362
    400 #define PUBLIC 363
    401 #define DEFSYMEND 364
    402 #define BASE 365
    403 #define ALIAS 366
    404 #define TRUNCATE 367
    405 #define REL 368
    406 #define INPUT_SCRIPT 369
    407 #define INPUT_MRI_SCRIPT 370
    408 #define INPUT_DEFSYM 371
    409 #define CASE 372
    410 #define EXTERN 373
    411 #define START 374
    412 #define VERS_TAG 375
    413 #define VERS_IDENTIFIER 376
    414 #define GLOBAL 377
    415 #define LOCAL 378
    416 #define VERSIONK 379
    417 #define INPUT_VERSION_SCRIPT 380
    418 #define KEEP 381
    419 #define ONLY_IF_RO 382
    420 #define ONLY_IF_RW 383
    421 #define SPECIAL 384
    422 #define INPUT_SECTION_FLAGS 385
    423 #define ALIGN_WITH_INPUT 386
    424 #define EXCLUDE_FILE 387
    425 #define CONSTANT 388
    426 #define INPUT_DYNAMIC_LIST 389
    427 
    428 /* Value type.  */
    429 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
    430 union YYSTYPE
    431 {
    432 #line 62 "ldgram.y"
    433 
    434   bfd_vma integer;
    435   struct big_int
    436     {
    437       bfd_vma integer;
    438       char *str;
    439     } bigint;
    440   fill_type *fill;
    441   char *name;
    442   const char *cname;
    443   struct wildcard_spec wildcard;
    444   struct wildcard_list *wildcard_list;
    445   struct name_list *name_list;
    446   struct flag_info_list *flag_info_list;
    447   struct flag_info *flag_info;
    448   int token;
    449   union etree_union *etree;
    450   struct phdr_info
    451     {
    452       bool filehdr;
    453       bool phdrs;
    454       union etree_union *at;
    455       union etree_union *flags;
    456     } phdr;
    457   struct lang_nocrossref *nocrossref;
    458   struct lang_output_section_phdr_list *section_phdr;
    459   struct bfd_elf_version_deps *deflist;
    460   struct bfd_elf_version_expr *versyms;
    461   struct bfd_elf_version_tree *versnode;
    462 
    463 #line 464 "ldgram.c"
    464 
    465 };
    466 typedef union YYSTYPE YYSTYPE;
    467 # define YYSTYPE_IS_TRIVIAL 1
    468 # define YYSTYPE_IS_DECLARED 1
    469 #endif
    470 
    471 
    472 extern YYSTYPE yylval;
    473 
    474 
    475 int yyparse (void);
    476 
    477 
    478 #endif /* !YY_YY_LDGRAM_H_INCLUDED  */
    479 /* Symbol kind.  */
    480 enum yysymbol_kind_t
    481 {
    482   YYSYMBOL_YYEMPTY = -2,
    483   YYSYMBOL_YYEOF = 0,                      /* "end of file"  */
    484   YYSYMBOL_YYerror = 1,                    /* error  */
    485   YYSYMBOL_YYUNDEF = 2,                    /* "invalid token"  */
    486   YYSYMBOL_INT = 3,                        /* INT  */
    487   YYSYMBOL_NAME = 4,                       /* NAME  */
    488   YYSYMBOL_LNAME = 5,                      /* LNAME  */
    489   YYSYMBOL_PLUSEQ = 6,                     /* PLUSEQ  */
    490   YYSYMBOL_MINUSEQ = 7,                    /* MINUSEQ  */
    491   YYSYMBOL_MULTEQ = 8,                     /* MULTEQ  */
    492   YYSYMBOL_DIVEQ = 9,                      /* DIVEQ  */
    493   YYSYMBOL_10_ = 10,                       /* '='  */
    494   YYSYMBOL_LSHIFTEQ = 11,                  /* LSHIFTEQ  */
    495   YYSYMBOL_RSHIFTEQ = 12,                  /* RSHIFTEQ  */
    496   YYSYMBOL_ANDEQ = 13,                     /* ANDEQ  */
    497   YYSYMBOL_OREQ = 14,                      /* OREQ  */
    498   YYSYMBOL_15_ = 15,                       /* '?'  */
    499   YYSYMBOL_16_ = 16,                       /* ':'  */
    500   YYSYMBOL_OROR = 17,                      /* OROR  */
    501   YYSYMBOL_ANDAND = 18,                    /* ANDAND  */
    502   YYSYMBOL_19_ = 19,                       /* '|'  */
    503   YYSYMBOL_20_ = 20,                       /* '^'  */
    504   YYSYMBOL_21_ = 21,                       /* '&'  */
    505   YYSYMBOL_EQ = 22,                        /* EQ  */
    506   YYSYMBOL_NE = 23,                        /* NE  */
    507   YYSYMBOL_24_ = 24,                       /* '<'  */
    508   YYSYMBOL_25_ = 25,                       /* '>'  */
    509   YYSYMBOL_LE = 26,                        /* LE  */
    510   YYSYMBOL_GE = 27,                        /* GE  */
    511   YYSYMBOL_LSHIFT = 28,                    /* LSHIFT  */
    512   YYSYMBOL_RSHIFT = 29,                    /* RSHIFT  */
    513   YYSYMBOL_30_ = 30,                       /* '+'  */
    514   YYSYMBOL_31_ = 31,                       /* '-'  */
    515   YYSYMBOL_32_ = 32,                       /* '*'  */
    516   YYSYMBOL_33_ = 33,                       /* '/'  */
    517   YYSYMBOL_34_ = 34,                       /* '%'  */
    518   YYSYMBOL_UNARY = 35,                     /* UNARY  */
    519   YYSYMBOL_END = 36,                       /* END  */
    520   YYSYMBOL_37_ = 37,                       /* '('  */
    521   YYSYMBOL_ALIGN_K = 38,                   /* ALIGN_K  */
    522   YYSYMBOL_BLOCK = 39,                     /* BLOCK  */
    523   YYSYMBOL_BIND = 40,                      /* BIND  */
    524   YYSYMBOL_QUAD = 41,                      /* QUAD  */
    525   YYSYMBOL_SQUAD = 42,                     /* SQUAD  */
    526   YYSYMBOL_LONG = 43,                      /* LONG  */
    527   YYSYMBOL_SHORT = 44,                     /* SHORT  */
    528   YYSYMBOL_BYTE = 45,                      /* BYTE  */
    529   YYSYMBOL_SECTIONS = 46,                  /* SECTIONS  */
    530   YYSYMBOL_PHDRS = 47,                     /* PHDRS  */
    531   YYSYMBOL_INSERT_K = 48,                  /* INSERT_K  */
    532   YYSYMBOL_AFTER = 49,                     /* AFTER  */
    533   YYSYMBOL_BEFORE = 50,                    /* BEFORE  */
    534   YYSYMBOL_DATA_SEGMENT_ALIGN = 51,        /* DATA_SEGMENT_ALIGN  */
    535   YYSYMBOL_DATA_SEGMENT_RELRO_END = 52,    /* DATA_SEGMENT_RELRO_END  */
    536   YYSYMBOL_DATA_SEGMENT_END = 53,          /* DATA_SEGMENT_END  */
    537   YYSYMBOL_SORT_BY_NAME = 54,              /* SORT_BY_NAME  */
    538   YYSYMBOL_SORT_BY_ALIGNMENT = 55,         /* SORT_BY_ALIGNMENT  */
    539   YYSYMBOL_SORT_NONE = 56,                 /* SORT_NONE  */
    540   YYSYMBOL_SORT_BY_INIT_PRIORITY = 57,     /* SORT_BY_INIT_PRIORITY  */
    541   YYSYMBOL_58_ = 58,                       /* '{'  */
    542   YYSYMBOL_59_ = 59,                       /* '}'  */
    543   YYSYMBOL_SIZEOF_HEADERS = 60,            /* SIZEOF_HEADERS  */
    544   YYSYMBOL_OUTPUT_FORMAT = 61,             /* OUTPUT_FORMAT  */
    545   YYSYMBOL_FORCE_COMMON_ALLOCATION = 62,   /* FORCE_COMMON_ALLOCATION  */
    546   YYSYMBOL_OUTPUT_ARCH = 63,               /* OUTPUT_ARCH  */
    547   YYSYMBOL_INHIBIT_COMMON_ALLOCATION = 64, /* INHIBIT_COMMON_ALLOCATION  */
    548   YYSYMBOL_FORCE_GROUP_ALLOCATION = 65,    /* FORCE_GROUP_ALLOCATION  */
    549   YYSYMBOL_SEGMENT_START = 66,             /* SEGMENT_START  */
    550   YYSYMBOL_INCLUDE = 67,                   /* INCLUDE  */
    551   YYSYMBOL_MEMORY = 68,                    /* MEMORY  */
    552   YYSYMBOL_REGION_ALIAS = 69,              /* REGION_ALIAS  */
    553   YYSYMBOL_LD_FEATURE = 70,                /* LD_FEATURE  */
    554   YYSYMBOL_NOLOAD = 71,                    /* NOLOAD  */
    555   YYSYMBOL_DSECT = 72,                     /* DSECT  */
    556   YYSYMBOL_COPY = 73,                      /* COPY  */
    557   YYSYMBOL_INFO = 74,                      /* INFO  */
    558   YYSYMBOL_OVERLAY = 75,                   /* OVERLAY  */
    559   YYSYMBOL_READONLY = 76,                  /* READONLY  */
    560   YYSYMBOL_TYPE = 77,                      /* TYPE  */
    561   YYSYMBOL_DEFINED = 78,                   /* DEFINED  */
    562   YYSYMBOL_TARGET_K = 79,                  /* TARGET_K  */
    563   YYSYMBOL_SEARCH_DIR = 80,                /* SEARCH_DIR  */
    564   YYSYMBOL_MAP = 81,                       /* MAP  */
    565   YYSYMBOL_ENTRY = 82,                     /* ENTRY  */
    566   YYSYMBOL_NEXT = 83,                      /* NEXT  */
    567   YYSYMBOL_SIZEOF = 84,                    /* SIZEOF  */
    568   YYSYMBOL_ALIGNOF = 85,                   /* ALIGNOF  */
    569   YYSYMBOL_ADDR = 86,                      /* ADDR  */
    570   YYSYMBOL_LOADADDR = 87,                  /* LOADADDR  */
    571   YYSYMBOL_MAX_K = 88,                     /* MAX_K  */
    572   YYSYMBOL_MIN_K = 89,                     /* MIN_K  */
    573   YYSYMBOL_STARTUP = 90,                   /* STARTUP  */
    574   YYSYMBOL_HLL = 91,                       /* HLL  */
    575   YYSYMBOL_SYSLIB = 92,                    /* SYSLIB  */
    576   YYSYMBOL_FLOAT = 93,                     /* FLOAT  */
    577   YYSYMBOL_NOFLOAT = 94,                   /* NOFLOAT  */
    578   YYSYMBOL_NOCROSSREFS = 95,               /* NOCROSSREFS  */
    579   YYSYMBOL_NOCROSSREFS_TO = 96,            /* NOCROSSREFS_TO  */
    580   YYSYMBOL_ORIGIN = 97,                    /* ORIGIN  */
    581   YYSYMBOL_FILL = 98,                      /* FILL  */
    582   YYSYMBOL_LENGTH = 99,                    /* LENGTH  */
    583   YYSYMBOL_CREATE_OBJECT_SYMBOLS = 100,    /* CREATE_OBJECT_SYMBOLS  */
    584   YYSYMBOL_INPUT = 101,                    /* INPUT  */
    585   YYSYMBOL_GROUP = 102,                    /* GROUP  */
    586   YYSYMBOL_OUTPUT = 103,                   /* OUTPUT  */
    587   YYSYMBOL_CONSTRUCTORS = 104,             /* CONSTRUCTORS  */
    588   YYSYMBOL_ALIGNMOD = 105,                 /* ALIGNMOD  */
    589   YYSYMBOL_AT = 106,                       /* AT  */
    590   YYSYMBOL_SUBALIGN = 107,                 /* SUBALIGN  */
    591   YYSYMBOL_HIDDEN = 108,                   /* HIDDEN  */
    592   YYSYMBOL_PROVIDE = 109,                  /* PROVIDE  */
    593   YYSYMBOL_PROVIDE_HIDDEN = 110,           /* PROVIDE_HIDDEN  */
    594   YYSYMBOL_AS_NEEDED = 111,                /* AS_NEEDED  */
    595   YYSYMBOL_CHIP = 112,                     /* CHIP  */
    596   YYSYMBOL_LIST = 113,                     /* LIST  */
    597   YYSYMBOL_SECT = 114,                     /* SECT  */
    598   YYSYMBOL_ABSOLUTE = 115,                 /* ABSOLUTE  */
    599   YYSYMBOL_LOAD = 116,                     /* LOAD  */
    600   YYSYMBOL_NEWLINE = 117,                  /* NEWLINE  */
    601   YYSYMBOL_ENDWORD = 118,                  /* ENDWORD  */
    602   YYSYMBOL_ORDER = 119,                    /* ORDER  */
    603   YYSYMBOL_NAMEWORD = 120,                 /* NAMEWORD  */
    604   YYSYMBOL_ASSERT_K = 121,                 /* ASSERT_K  */
    605   YYSYMBOL_LOG2CEIL = 122,                 /* LOG2CEIL  */
    606   YYSYMBOL_FORMAT = 123,                   /* FORMAT  */
    607   YYSYMBOL_PUBLIC = 124,                   /* PUBLIC  */
    608   YYSYMBOL_DEFSYMEND = 125,                /* DEFSYMEND  */
    609   YYSYMBOL_BASE = 126,                     /* BASE  */
    610   YYSYMBOL_ALIAS = 127,                    /* ALIAS  */
    611   YYSYMBOL_TRUNCATE = 128,                 /* TRUNCATE  */
    612   YYSYMBOL_REL = 129,                      /* REL  */
    613   YYSYMBOL_INPUT_SCRIPT = 130,             /* INPUT_SCRIPT  */
    614   YYSYMBOL_INPUT_MRI_SCRIPT = 131,         /* INPUT_MRI_SCRIPT  */
    615   YYSYMBOL_INPUT_DEFSYM = 132,             /* INPUT_DEFSYM  */
    616   YYSYMBOL_CASE = 133,                     /* CASE  */
    617   YYSYMBOL_EXTERN = 134,                   /* EXTERN  */
    618   YYSYMBOL_START = 135,                    /* START  */
    619   YYSYMBOL_VERS_TAG = 136,                 /* VERS_TAG  */
    620   YYSYMBOL_VERS_IDENTIFIER = 137,          /* VERS_IDENTIFIER  */
    621   YYSYMBOL_GLOBAL = 138,                   /* GLOBAL  */
    622   YYSYMBOL_LOCAL = 139,                    /* LOCAL  */
    623   YYSYMBOL_VERSIONK = 140,                 /* VERSIONK  */
    624   YYSYMBOL_INPUT_VERSION_SCRIPT = 141,     /* INPUT_VERSION_SCRIPT  */
    625   YYSYMBOL_KEEP = 142,                     /* KEEP  */
    626   YYSYMBOL_ONLY_IF_RO = 143,               /* ONLY_IF_RO  */
    627   YYSYMBOL_ONLY_IF_RW = 144,               /* ONLY_IF_RW  */
    628   YYSYMBOL_SPECIAL = 145,                  /* SPECIAL  */
    629   YYSYMBOL_INPUT_SECTION_FLAGS = 146,      /* INPUT_SECTION_FLAGS  */
    630   YYSYMBOL_ALIGN_WITH_INPUT = 147,         /* ALIGN_WITH_INPUT  */
    631   YYSYMBOL_EXCLUDE_FILE = 148,             /* EXCLUDE_FILE  */
    632   YYSYMBOL_CONSTANT = 149,                 /* CONSTANT  */
    633   YYSYMBOL_INPUT_DYNAMIC_LIST = 150,       /* INPUT_DYNAMIC_LIST  */
    634   YYSYMBOL_151_ = 151,                     /* ','  */
    635   YYSYMBOL_152_ = 152,                     /* ';'  */
    636   YYSYMBOL_153_ = 153,                     /* ')'  */
    637   YYSYMBOL_154_ = 154,                     /* '['  */
    638   YYSYMBOL_155_ = 155,                     /* ']'  */
    639   YYSYMBOL_156_ = 156,                     /* '!'  */
    640   YYSYMBOL_157_ = 157,                     /* '~'  */
    641   YYSYMBOL_YYACCEPT = 158,                 /* $accept  */
    642   YYSYMBOL_file = 159,                     /* file  */
    643   YYSYMBOL_filename = 160,                 /* filename  */
    644   YYSYMBOL_defsym_expr = 161,              /* defsym_expr  */
    645   YYSYMBOL_162_1 = 162,                    /* $@1  */
    646   YYSYMBOL_mri_script_file = 163,          /* mri_script_file  */
    647   YYSYMBOL_164_2 = 164,                    /* $@2  */
    648   YYSYMBOL_mri_script_lines = 165,         /* mri_script_lines  */
    649   YYSYMBOL_mri_script_command = 166,       /* mri_script_command  */
    650   YYSYMBOL_167_3 = 167,                    /* $@3  */
    651   YYSYMBOL_ordernamelist = 168,            /* ordernamelist  */
    652   YYSYMBOL_mri_load_name_list = 169,       /* mri_load_name_list  */
    653   YYSYMBOL_mri_abs_name_list = 170,        /* mri_abs_name_list  */
    654   YYSYMBOL_casesymlist = 171,              /* casesymlist  */
    655   YYSYMBOL_extern_name_list = 172,         /* extern_name_list  */
    656   YYSYMBOL_script_file = 173,              /* script_file  */
    657   YYSYMBOL_174_4 = 174,                    /* $@4  */
    658   YYSYMBOL_ifile_list = 175,               /* ifile_list  */
    659   YYSYMBOL_ifile_p1 = 176,                 /* ifile_p1  */
    660   YYSYMBOL_177_5 = 177,                    /* $@5  */
    661   YYSYMBOL_178_6 = 178,                    /* $@6  */
    662   YYSYMBOL_179_7 = 179,                    /* $@7  */
    663   YYSYMBOL_input_list = 180,               /* input_list  */
    664   YYSYMBOL_181_8 = 181,                    /* $@8  */
    665   YYSYMBOL_input_list1 = 182,              /* input_list1  */
    666   YYSYMBOL_183_9 = 183,                    /* @9  */
    667   YYSYMBOL_184_10 = 184,                   /* @10  */
    668   YYSYMBOL_185_11 = 185,                   /* @11  */
    669   YYSYMBOL_sections = 186,                 /* sections  */
    670   YYSYMBOL_sec_or_group_p1 = 187,          /* sec_or_group_p1  */
    671   YYSYMBOL_statement_anywhere = 188,       /* statement_anywhere  */
    672   YYSYMBOL_189_12 = 189,                   /* $@12  */
    673   YYSYMBOL_wildcard_name = 190,            /* wildcard_name  */
    674   YYSYMBOL_wildcard_maybe_exclude = 191,   /* wildcard_maybe_exclude  */
    675   YYSYMBOL_filename_spec = 192,            /* filename_spec  */
    676   YYSYMBOL_section_name_spec = 193,        /* section_name_spec  */
    677   YYSYMBOL_sect_flag_list = 194,           /* sect_flag_list  */
    678   YYSYMBOL_sect_flags = 195,               /* sect_flags  */
    679   YYSYMBOL_exclude_name_list = 196,        /* exclude_name_list  */
    680   YYSYMBOL_section_name_list = 197,        /* section_name_list  */
    681   YYSYMBOL_input_section_spec_no_keep = 198, /* input_section_spec_no_keep  */
    682   YYSYMBOL_input_section_spec = 199,       /* input_section_spec  */
    683   YYSYMBOL_200_13 = 200,                   /* $@13  */
    684   YYSYMBOL_statement = 201,                /* statement  */
    685   YYSYMBOL_202_14 = 202,                   /* $@14  */
    686   YYSYMBOL_203_15 = 203,                   /* $@15  */
    687   YYSYMBOL_statement_list = 204,           /* statement_list  */
    688   YYSYMBOL_statement_list_opt = 205,       /* statement_list_opt  */
    689   YYSYMBOL_length = 206,                   /* length  */
    690   YYSYMBOL_fill_exp = 207,                 /* fill_exp  */
    691   YYSYMBOL_fill_opt = 208,                 /* fill_opt  */
    692   YYSYMBOL_assign_op = 209,                /* assign_op  */
    693   YYSYMBOL_separator = 210,                /* separator  */
    694   YYSYMBOL_assignment = 211,               /* assignment  */
    695   YYSYMBOL_opt_comma = 212,                /* opt_comma  */
    696   YYSYMBOL_memory = 213,                   /* memory  */
    697   YYSYMBOL_memory_spec_list_opt = 214,     /* memory_spec_list_opt  */
    698   YYSYMBOL_memory_spec_list = 215,         /* memory_spec_list  */
    699   YYSYMBOL_memory_spec = 216,              /* memory_spec  */
    700   YYSYMBOL_217_16 = 217,                   /* $@16  */
    701   YYSYMBOL_218_17 = 218,                   /* $@17  */
    702   YYSYMBOL_origin_spec = 219,              /* origin_spec  */
    703   YYSYMBOL_length_spec = 220,              /* length_spec  */
    704   YYSYMBOL_attributes_opt = 221,           /* attributes_opt  */
    705   YYSYMBOL_attributes_list = 222,          /* attributes_list  */
    706   YYSYMBOL_attributes_string = 223,        /* attributes_string  */
    707   YYSYMBOL_startup = 224,                  /* startup  */
    708   YYSYMBOL_high_level_library = 225,       /* high_level_library  */
    709   YYSYMBOL_high_level_library_NAME_list = 226, /* high_level_library_NAME_list  */
    710   YYSYMBOL_low_level_library = 227,        /* low_level_library  */
    711   YYSYMBOL_low_level_library_NAME_list = 228, /* low_level_library_NAME_list  */
    712   YYSYMBOL_floating_point_support = 229,   /* floating_point_support  */
    713   YYSYMBOL_nocrossref_list = 230,          /* nocrossref_list  */
    714   YYSYMBOL_paren_script_name = 231,        /* paren_script_name  */
    715   YYSYMBOL_232_18 = 232,                   /* $@18  */
    716   YYSYMBOL_mustbe_exp = 233,               /* mustbe_exp  */
    717   YYSYMBOL_234_19 = 234,                   /* $@19  */
    718   YYSYMBOL_exp = 235,                      /* exp  */
    719   YYSYMBOL_236_20 = 236,                   /* $@20  */
    720   YYSYMBOL_237_21 = 237,                   /* $@21  */
    721   YYSYMBOL_memspec_at_opt = 238,           /* memspec_at_opt  */
    722   YYSYMBOL_opt_at = 239,                   /* opt_at  */
    723   YYSYMBOL_opt_align = 240,                /* opt_align  */
    724   YYSYMBOL_opt_align_with_input = 241,     /* opt_align_with_input  */
    725   YYSYMBOL_opt_subalign = 242,             /* opt_subalign  */
    726   YYSYMBOL_sect_constraint = 243,          /* sect_constraint  */
    727   YYSYMBOL_section = 244,                  /* section  */
    728   YYSYMBOL_245_22 = 245,                   /* $@22  */
    729   YYSYMBOL_246_23 = 246,                   /* $@23  */
    730   YYSYMBOL_247_24 = 247,                   /* $@24  */
    731   YYSYMBOL_248_25 = 248,                   /* $@25  */
    732   YYSYMBOL_249_26 = 249,                   /* $@26  */
    733   YYSYMBOL_250_27 = 250,                   /* $@27  */
    734   YYSYMBOL_251_28 = 251,                   /* $@28  */
    735   YYSYMBOL_252_29 = 252,                   /* $@29  */
    736   YYSYMBOL_253_30 = 253,                   /* $@30  */
    737   YYSYMBOL_254_31 = 254,                   /* $@31  */
    738   YYSYMBOL_255_32 = 255,                   /* $@32  */
    739   YYSYMBOL_type = 256,                     /* type  */
    740   YYSYMBOL_atype = 257,                    /* atype  */
    741   YYSYMBOL_opt_exp_with_type = 258,        /* opt_exp_with_type  */
    742   YYSYMBOL_opt_exp_without_type = 259,     /* opt_exp_without_type  */
    743   YYSYMBOL_opt_nocrossrefs = 260,          /* opt_nocrossrefs  */
    744   YYSYMBOL_memspec_opt = 261,              /* memspec_opt  */
    745   YYSYMBOL_phdr_opt = 262,                 /* phdr_opt  */
    746   YYSYMBOL_overlay_section = 263,          /* overlay_section  */
    747   YYSYMBOL_264_33 = 264,                   /* $@33  */
    748   YYSYMBOL_265_34 = 265,                   /* $@34  */
    749   YYSYMBOL_266_35 = 266,                   /* $@35  */
    750   YYSYMBOL_phdrs = 267,                    /* phdrs  */
    751   YYSYMBOL_phdr_list = 268,                /* phdr_list  */
    752   YYSYMBOL_phdr = 269,                     /* phdr  */
    753   YYSYMBOL_270_36 = 270,                   /* $@36  */
    754   YYSYMBOL_271_37 = 271,                   /* $@37  */
    755   YYSYMBOL_phdr_type = 272,                /* phdr_type  */
    756   YYSYMBOL_phdr_qualifiers = 273,          /* phdr_qualifiers  */
    757   YYSYMBOL_phdr_val = 274,                 /* phdr_val  */
    758   YYSYMBOL_dynamic_list_file = 275,        /* dynamic_list_file  */
    759   YYSYMBOL_276_38 = 276,                   /* $@38  */
    760   YYSYMBOL_dynamic_list_nodes = 277,       /* dynamic_list_nodes  */
    761   YYSYMBOL_dynamic_list_node = 278,        /* dynamic_list_node  */
    762   YYSYMBOL_dynamic_list_tag = 279,         /* dynamic_list_tag  */
    763   YYSYMBOL_version_script_file = 280,      /* version_script_file  */
    764   YYSYMBOL_281_39 = 281,                   /* $@39  */
    765   YYSYMBOL_version = 282,                  /* version  */
    766   YYSYMBOL_283_40 = 283,                   /* $@40  */
    767   YYSYMBOL_vers_nodes = 284,               /* vers_nodes  */
    768   YYSYMBOL_vers_node = 285,                /* vers_node  */
    769   YYSYMBOL_verdep = 286,                   /* verdep  */
    770   YYSYMBOL_vers_tag = 287,                 /* vers_tag  */
    771   YYSYMBOL_vers_defns = 288,               /* vers_defns  */
    772   YYSYMBOL_289_41 = 289,                   /* @41  */
    773   YYSYMBOL_290_42 = 290,                   /* @42  */
    774   YYSYMBOL_opt_semicolon = 291             /* opt_semicolon  */
    775 };
    776 typedef enum yysymbol_kind_t yysymbol_kind_t;
    777 
    778 
    779 
    780 
    781 #ifdef short
    782 # undef short
    783 #endif
    784 
    785 /* On compilers that do not define __PTRDIFF_MAX__ etc., make sure
    786    <limits.h> and (if available) <stdint.h> are included
    787    so that the code can choose integer types of a good width.  */
    788 
    789 #ifndef __PTRDIFF_MAX__
    790 # include <limits.h> /* INFRINGES ON USER NAME SPACE */
    791 # if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
    792 #  include <stdint.h> /* INFRINGES ON USER NAME SPACE */
    793 #  define YY_STDINT_H
    794 # endif
    795 #endif
    796 
    797 /* Narrow types that promote to a signed type and that can represent a
    798    signed or unsigned integer of at least N bits.  In tables they can
    799    save space and decrease cache pressure.  Promoting to a signed type
    800    helps avoid bugs in integer arithmetic.  */
    801 
    802 #ifdef __INT_LEAST8_MAX__
    803 typedef __INT_LEAST8_TYPE__ yytype_int8;
    804 #elif defined YY_STDINT_H
    805 typedef int_least8_t yytype_int8;
    806 #else
    807 typedef signed char yytype_int8;
    808 #endif
    809 
    810 #ifdef __INT_LEAST16_MAX__
    811 typedef __INT_LEAST16_TYPE__ yytype_int16;
    812 #elif defined YY_STDINT_H
    813 typedef int_least16_t yytype_int16;
    814 #else
    815 typedef short yytype_int16;
    816 #endif
    817 
    818 /* Work around bug in HP-UX 11.23, which defines these macros
    819    incorrectly for preprocessor constants.  This workaround can likely
    820    be removed in 2023, as HPE has promised support for HP-UX 11.23
    821    (aka HP-UX 11i v2) only through the end of 2022; see Table 2 of
    822    <https://h20195.www2.hpe.com/V2/getpdf.aspx/4AA4-7673ENW.pdf>.  */
    823 #ifdef __hpux
    824 # undef UINT_LEAST8_MAX
    825 # undef UINT_LEAST16_MAX
    826 # define UINT_LEAST8_MAX 255
    827 # define UINT_LEAST16_MAX 65535
    828 #endif
    829 
    830 #if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
    831 typedef __UINT_LEAST8_TYPE__ yytype_uint8;
    832 #elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
    833        && UINT_LEAST8_MAX <= INT_MAX)
    834 typedef uint_least8_t yytype_uint8;
    835 #elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
    836 typedef unsigned char yytype_uint8;
    837 #else
    838 typedef short yytype_uint8;
    839 #endif
    840 
    841 #if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
    842 typedef __UINT_LEAST16_TYPE__ yytype_uint16;
    843 #elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
    844        && UINT_LEAST16_MAX <= INT_MAX)
    845 typedef uint_least16_t yytype_uint16;
    846 #elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
    847 typedef unsigned short yytype_uint16;
    848 #else
    849 typedef int yytype_uint16;
    850 #endif
    851 
    852 #ifndef YYPTRDIFF_T
    853 # if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
    854 #  define YYPTRDIFF_T __PTRDIFF_TYPE__
    855 #  define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__
    856 # elif defined PTRDIFF_MAX
    857 #  ifndef ptrdiff_t
    858 #   include <stddef.h> /* INFRINGES ON USER NAME SPACE */
    859 #  endif
    860 #  define YYPTRDIFF_T ptrdiff_t
    861 #  define YYPTRDIFF_MAXIMUM PTRDIFF_MAX
    862 # else
    863 #  define YYPTRDIFF_T long
    864 #  define YYPTRDIFF_MAXIMUM LONG_MAX
    865 # endif
    866 #endif
    867 
    868 #ifndef YYSIZE_T
    869 # ifdef __SIZE_TYPE__
    870 #  define YYSIZE_T __SIZE_TYPE__
    871 # elif defined size_t
    872 #  define YYSIZE_T size_t
    873 # elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
    874 #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
    875 #  define YYSIZE_T size_t
    876 # else
    877 #  define YYSIZE_T unsigned
    878 # endif
    879 #endif
    880 
    881 #define YYSIZE_MAXIMUM                                  \
    882   YY_CAST (YYPTRDIFF_T,                                 \
    883            (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1)  \
    884             ? YYPTRDIFF_MAXIMUM                         \
    885             : YY_CAST (YYSIZE_T, -1)))
    886 
    887 #define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X))
    888 
    889 
    890 /* Stored state numbers (used for stacks). */
    891 typedef yytype_int16 yy_state_t;
    892 
    893 /* State numbers in computations.  */
    894 typedef int yy_state_fast_t;
    895 
    896 #ifndef YY_
    897 # if defined YYENABLE_NLS && YYENABLE_NLS
    898 #  if ENABLE_NLS
    899 #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
    900 #   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
    901 #  endif
    902 # endif
    903 # ifndef YY_
    904 #  define YY_(Msgid) Msgid
    905 # endif
    906 #endif
    907 
    908 
    909 #ifndef YY_ATTRIBUTE_PURE
    910 # if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
    911 #  define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
    912 # else
    913 #  define YY_ATTRIBUTE_PURE
    914 # endif
    915 #endif
    916 
    917 #ifndef YY_ATTRIBUTE_UNUSED
    918 # if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
    919 #  define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
    920 # else
    921 #  define YY_ATTRIBUTE_UNUSED
    922 # endif
    923 #endif
    924 
    925 /* Suppress unused-variable warnings by "using" E.  */
    926 #if ! defined lint || defined __GNUC__
    927 # define YY_USE(E) ((void) (E))
    928 #else
    929 # define YY_USE(E) /* empty */
    930 #endif
    931 
    932 /* Suppress an incorrect diagnostic about yylval being uninitialized.  */
    933 #if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__
    934 # if __GNUC__ * 100 + __GNUC_MINOR__ < 407
    935 #  define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN                           \
    936     _Pragma ("GCC diagnostic push")                                     \
    937     _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")
    938 # else
    939 #  define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN                           \
    940     _Pragma ("GCC diagnostic push")                                     \
    941     _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")              \
    942     _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
    943 # endif
    944 # define YY_IGNORE_MAYBE_UNINITIALIZED_END      \
    945     _Pragma ("GCC diagnostic pop")
    946 #else
    947 # define YY_INITIAL_VALUE(Value) Value
    948 #endif
    949 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
    950 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
    951 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
    952 #endif
    953 #ifndef YY_INITIAL_VALUE
    954 # define YY_INITIAL_VALUE(Value) /* Nothing. */
    955 #endif
    956 
    957 #if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
    958 # define YY_IGNORE_USELESS_CAST_BEGIN                          \
    959     _Pragma ("GCC diagnostic push")                            \
    960     _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
    961 # define YY_IGNORE_USELESS_CAST_END            \
    962     _Pragma ("GCC diagnostic pop")
    963 #endif
    964 #ifndef YY_IGNORE_USELESS_CAST_BEGIN
    965 # define YY_IGNORE_USELESS_CAST_BEGIN
    966 # define YY_IGNORE_USELESS_CAST_END
    967 #endif
    968 
    969 
    970 #define YY_ASSERT(E) ((void) (0 && (E)))
    971 
    972 #if !defined yyoverflow
    973 
    974 /* The parser invokes alloca or malloc; define the necessary symbols.  */
    975 
    976 # ifdef YYSTACK_USE_ALLOCA
    977 #  if YYSTACK_USE_ALLOCA
    978 #   ifdef __GNUC__
    979 #    define YYSTACK_ALLOC __builtin_alloca
    980 #   elif defined __BUILTIN_VA_ARG_INCR
    981 #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
    982 #   elif defined _AIX
    983 #    define YYSTACK_ALLOC __alloca
    984 #   elif defined _MSC_VER
    985 #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
    986 #    define alloca _alloca
    987 #   else
    988 #    define YYSTACK_ALLOC alloca
    989 #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
    990 #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
    991       /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
    992 #     ifndef EXIT_SUCCESS
    993 #      define EXIT_SUCCESS 0
    994 #     endif
    995 #    endif
    996 #   endif
    997 #  endif
    998 # endif
    999 
   1000 # ifdef YYSTACK_ALLOC
   1001    /* Pacify GCC's 'empty if-body' warning.  */
   1002 #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
   1003 #  ifndef YYSTACK_ALLOC_MAXIMUM
   1004     /* The OS might guarantee only one guard page at the bottom of the stack,
   1005        and a page size can be as small as 4096 bytes.  So we cannot safely
   1006        invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
   1007        to allow for a few compiler-allocated temporary stack slots.  */
   1008 #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
   1009 #  endif
   1010 # else
   1011 #  define YYSTACK_ALLOC YYMALLOC
   1012 #  define YYSTACK_FREE YYFREE
   1013 #  ifndef YYSTACK_ALLOC_MAXIMUM
   1014 #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
   1015 #  endif
   1016 #  if (defined __cplusplus && ! defined EXIT_SUCCESS \
   1017        && ! ((defined YYMALLOC || defined malloc) \
   1018              && (defined YYFREE || defined free)))
   1019 #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
   1020 #   ifndef EXIT_SUCCESS
   1021 #    define EXIT_SUCCESS 0
   1022 #   endif
   1023 #  endif
   1024 #  ifndef YYMALLOC
   1025 #   define YYMALLOC malloc
   1026 #   if ! defined malloc && ! defined EXIT_SUCCESS
   1027 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
   1028 #   endif
   1029 #  endif
   1030 #  ifndef YYFREE
   1031 #   define YYFREE free
   1032 #   if ! defined free && ! defined EXIT_SUCCESS
   1033 void free (void *); /* INFRINGES ON USER NAME SPACE */
   1034 #   endif
   1035 #  endif
   1036 # endif
   1037 #endif /* !defined yyoverflow */
   1038 
   1039 #if (! defined yyoverflow \
   1040      && (! defined __cplusplus \
   1041          || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
   1042 
   1043 /* A type that is properly aligned for any stack member.  */
   1044 union yyalloc
   1045 {
   1046   yy_state_t yyss_alloc;
   1047   YYSTYPE yyvs_alloc;
   1048 };
   1049 
   1050 /* The size of the maximum gap between one aligned stack and the next.  */
   1051 # define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1)
   1052 
   1053 /* The size of an array large to enough to hold all stacks, each with
   1054    N elements.  */
   1055 # define YYSTACK_BYTES(N) \
   1056      ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \
   1057       + YYSTACK_GAP_MAXIMUM)
   1058 
   1059 # define YYCOPY_NEEDED 1
   1060 
   1061 /* Relocate STACK from its old location to the new one.  The
   1062    local variables YYSIZE and YYSTACKSIZE give the old and new number of
   1063    elements in the stack, and YYPTR gives the new location of the
   1064    stack.  Advance YYPTR to a properly aligned location for the next
   1065    stack.  */
   1066 # define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
   1067     do                                                                  \
   1068       {                                                                 \
   1069         YYPTRDIFF_T yynewbytes;                                         \
   1070         YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
   1071         Stack = &yyptr->Stack_alloc;                                    \
   1072         yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
   1073         yyptr += yynewbytes / YYSIZEOF (*yyptr);                        \
   1074       }                                                                 \
   1075     while (0)
   1076 
   1077 #endif
   1078 
   1079 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
   1080 /* Copy COUNT objects from SRC to DST.  The source and destination do
   1081    not overlap.  */
   1082 # ifndef YYCOPY
   1083 #  if defined __GNUC__ && 1 < __GNUC__
   1084 #   define YYCOPY(Dst, Src, Count) \
   1085       __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src)))
   1086 #  else
   1087 #   define YYCOPY(Dst, Src, Count)              \
   1088       do                                        \
   1089         {                                       \
   1090           YYPTRDIFF_T yyi;                      \
   1091           for (yyi = 0; yyi < (Count); yyi++)   \
   1092             (Dst)[yyi] = (Src)[yyi];            \
   1093         }                                       \
   1094       while (0)
   1095 #  endif
   1096 # endif
   1097 #endif /* !YYCOPY_NEEDED */
   1098 
   1099 /* YYFINAL -- State number of the termination state.  */
   1100 #define YYFINAL  17
   1101 /* YYLAST -- Last index in YYTABLE.  */
   1102 #define YYLAST   2005
   1103 
   1104 /* YYNTOKENS -- Number of terminals.  */
   1105 #define YYNTOKENS  158
   1106 /* YYNNTS -- Number of nonterminals.  */
   1107 #define YYNNTS  134
   1108 /* YYNRULES -- Number of rules.  */
   1109 #define YYNRULES  378
   1110 /* YYNSTATES -- Number of states.  */
   1111 #define YYNSTATES  810
   1112 
   1113 /* YYMAXUTOK -- Last valid token kind.  */
   1114 #define YYMAXUTOK   389
   1115 
   1116 
   1117 /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
   1118    as returned by yylex, with out-of-bounds checking.  */
   1119 #define YYTRANSLATE(YYX)                                \
   1120   (0 <= (YYX) && (YYX) <= YYMAXUTOK                     \
   1121    ? YY_CAST (yysymbol_kind_t, yytranslate[YYX])        \
   1122    : YYSYMBOL_YYUNDEF)
   1123 
   1124 /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
   1125    as returned by yylex.  */
   1126 static const yytype_uint8 yytranslate[] =
   1127 {
   1128        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1129        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1130        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1131        2,     2,     2,   156,     2,     2,     2,    34,    21,     2,
   1132       37,   153,    32,    30,   151,    31,     2,    33,     2,     2,
   1133        2,     2,     2,     2,     2,     2,     2,     2,    16,   152,
   1134       24,    10,    25,    15,     2,     2,     2,     2,     2,     2,
   1135        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1136        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1137        2,   154,     2,   155,    20,     2,     2,     2,     2,     2,
   1138        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1139        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1140        2,     2,     2,    58,    19,    59,   157,     2,     2,     2,
   1141        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1142        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1143        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1144        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1145        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1146        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1147        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1148        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1149        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1150        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1151        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1152        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
   1153        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
   1154        5,     6,     7,     8,     9,    11,    12,    13,    14,    17,
   1155       18,    22,    23,    26,    27,    28,    29,    35,    36,    38,
   1156       39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
   1157       49,    50,    51,    52,    53,    54,    55,    56,    57,    60,
   1158       61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
   1159       71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
   1160       81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
   1161       91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
   1162      101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
   1163      111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
   1164      121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
   1165      131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
   1166      141,   142,   143,   144,   145,   146,   147,   148,   149,   150
   1167 };
   1168 
   1169 #if YYDEBUG
   1170 /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
   1171 static const yytype_int16 yyrline[] =
   1172 {
   1173        0,   169,   169,   170,   171,   172,   173,   177,   181,   181,
   1174      188,   188,   201,   202,   206,   207,   208,   211,   214,   215,
   1175      216,   218,   220,   222,   224,   226,   228,   230,   232,   234,
   1176      236,   238,   239,   240,   242,   244,   246,   248,   250,   251,
   1177      253,   252,   255,   257,   261,   262,   263,   267,   269,   273,
   1178      275,   280,   281,   282,   286,   288,   290,   295,   295,   301,
   1179      302,   307,   308,   309,   310,   311,   312,   313,   314,   315,
   1180      316,   317,   319,   321,   323,   326,   328,   330,   332,   334,
   1181      336,   338,   337,   341,   344,   343,   346,   350,   354,   354,
   1182      356,   358,   360,   362,   367,   367,   372,   375,   378,   381,
   1183      384,   387,   391,   390,   396,   395,   401,   400,   408,   412,
   1184      413,   414,   418,   420,   421,   421,   427,   434,   441,   451,
   1185      452,   457,   465,   466,   471,   476,   481,   486,   491,   496,
   1186      501,   508,   526,   547,   560,   569,   580,   589,   600,   609,
   1187      618,   622,   631,   635,   643,   645,   644,   651,   652,   653,
   1188      657,   661,   666,   667,   672,   677,   676,   684,   683,   691,
   1189      692,   695,   697,   701,   703,   705,   707,   709,   714,   721,
   1190      723,   727,   729,   731,   733,   735,   737,   739,   741,   746,
   1191      746,   751,   755,   763,   767,   771,   779,   779,   783,   786,
   1192      786,   789,   790,   795,   794,   800,   799,   805,   812,   825,
   1193      826,   830,   831,   835,   837,   842,   847,   848,   853,   855,
   1194      860,   864,   866,   870,   872,   878,   881,   890,   901,   901,
   1195      905,   905,   911,   913,   915,   917,   919,   921,   924,   926,
   1196      928,   930,   932,   934,   936,   938,   940,   942,   944,   946,
   1197      948,   950,   952,   954,   956,   958,   960,   962,   964,   966,
   1198      969,   971,   973,   975,   977,   979,   981,   983,   985,   987,
   1199      989,   991,   992,   991,  1001,  1003,  1005,  1007,  1009,  1011,
   1200     1013,  1015,  1021,  1022,  1026,  1027,  1031,  1032,  1036,  1037,
   1201     1041,  1042,  1046,  1047,  1048,  1049,  1053,  1060,  1069,  1071,
   1202     1052,  1089,  1091,  1093,  1099,  1088,  1114,  1116,  1113,  1122,
   1203     1121,  1129,  1130,  1131,  1132,  1133,  1134,  1135,  1136,  1140,
   1204     1141,  1142,  1146,  1147,  1152,  1153,  1158,  1159,  1164,  1165,
   1205     1170,  1172,  1177,  1180,  1193,  1197,  1204,  1206,  1195,  1218,
   1206     1221,  1223,  1227,  1228,  1227,  1237,  1286,  1289,  1302,  1311,
   1207     1314,  1321,  1321,  1333,  1334,  1338,  1342,  1351,  1351,  1365,
   1208     1365,  1375,  1376,  1380,  1384,  1388,  1395,  1399,  1407,  1410,
   1209     1414,  1418,  1422,  1429,  1433,  1437,  1441,  1446,  1445,  1459,
   1210     1458,  1468,  1472,  1476,  1480,  1484,  1488,  1494,  1496
   1211 };
   1212 #endif
   1213 
   1214 /** Accessing symbol of state STATE.  */
   1215 #define YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State])
   1216 
   1217 #if YYDEBUG || 0
   1218 /* The user-facing name of the symbol whose (internal) number is
   1219    YYSYMBOL.  No bounds checking.  */
   1220 static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED;
   1221 
   1222 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
   1223    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
   1224 static const char *const yytname[] =
   1225 {
   1226   "\"end of file\"", "error", "\"invalid token\"", "INT", "NAME", "LNAME",
   1227   "PLUSEQ", "MINUSEQ", "MULTEQ", "DIVEQ", "'='", "LSHIFTEQ", "RSHIFTEQ",
   1228   "ANDEQ", "OREQ", "'?'", "':'", "OROR", "ANDAND", "'|'", "'^'", "'&'",
   1229   "EQ", "NE", "'<'", "'>'", "LE", "GE", "LSHIFT", "RSHIFT", "'+'", "'-'",
   1230   "'*'", "'/'", "'%'", "UNARY", "END", "'('", "ALIGN_K", "BLOCK", "BIND",
   1231   "QUAD", "SQUAD", "LONG", "SHORT", "BYTE", "SECTIONS", "PHDRS",
   1232   "INSERT_K", "AFTER", "BEFORE", "DATA_SEGMENT_ALIGN",
   1233   "DATA_SEGMENT_RELRO_END", "DATA_SEGMENT_END", "SORT_BY_NAME",
   1234   "SORT_BY_ALIGNMENT", "SORT_NONE", "SORT_BY_INIT_PRIORITY", "'{'", "'}'",
   1235   "SIZEOF_HEADERS", "OUTPUT_FORMAT", "FORCE_COMMON_ALLOCATION",
   1236   "OUTPUT_ARCH", "INHIBIT_COMMON_ALLOCATION", "FORCE_GROUP_ALLOCATION",
   1237   "SEGMENT_START", "INCLUDE", "MEMORY", "REGION_ALIAS", "LD_FEATURE",
   1238   "NOLOAD", "DSECT", "COPY", "INFO", "OVERLAY", "READONLY", "TYPE",
   1239   "DEFINED", "TARGET_K", "SEARCH_DIR", "MAP", "ENTRY", "NEXT", "SIZEOF",
   1240   "ALIGNOF", "ADDR", "LOADADDR", "MAX_K", "MIN_K", "STARTUP", "HLL",
   1241   "SYSLIB", "FLOAT", "NOFLOAT", "NOCROSSREFS", "NOCROSSREFS_TO", "ORIGIN",
   1242   "FILL", "LENGTH", "CREATE_OBJECT_SYMBOLS", "INPUT", "GROUP", "OUTPUT",
   1243   "CONSTRUCTORS", "ALIGNMOD", "AT", "SUBALIGN", "HIDDEN", "PROVIDE",
   1244   "PROVIDE_HIDDEN", "AS_NEEDED", "CHIP", "LIST", "SECT", "ABSOLUTE",
   1245   "LOAD", "NEWLINE", "ENDWORD", "ORDER", "NAMEWORD", "ASSERT_K",
   1246   "LOG2CEIL", "FORMAT", "PUBLIC", "DEFSYMEND", "BASE", "ALIAS", "TRUNCATE",
   1247   "REL", "INPUT_SCRIPT", "INPUT_MRI_SCRIPT", "INPUT_DEFSYM", "CASE",
   1248   "EXTERN", "START", "VERS_TAG", "VERS_IDENTIFIER", "GLOBAL", "LOCAL",
   1249   "VERSIONK", "INPUT_VERSION_SCRIPT", "KEEP", "ONLY_IF_RO", "ONLY_IF_RW",
   1250   "SPECIAL", "INPUT_SECTION_FLAGS", "ALIGN_WITH_INPUT", "EXCLUDE_FILE",
   1251   "CONSTANT", "INPUT_DYNAMIC_LIST", "','", "';'", "')'", "'['", "']'",
   1252   "'!'", "'~'", "$accept", "file", "filename", "defsym_expr", "$@1",
   1253   "mri_script_file", "$@2", "mri_script_lines", "mri_script_command",
   1254   "$@3", "ordernamelist", "mri_load_name_list", "mri_abs_name_list",
   1255   "casesymlist", "extern_name_list", "script_file", "$@4", "ifile_list",
   1256   "ifile_p1", "$@5", "$@6", "$@7", "input_list", "$@8", "input_list1",
   1257   "@9", "@10", "@11", "sections", "sec_or_group_p1", "statement_anywhere",
   1258   "$@12", "wildcard_name", "wildcard_maybe_exclude", "filename_spec",
   1259   "section_name_spec", "sect_flag_list", "sect_flags", "exclude_name_list",
   1260   "section_name_list", "input_section_spec_no_keep", "input_section_spec",
   1261   "$@13", "statement", "$@14", "$@15", "statement_list",
   1262   "statement_list_opt", "length", "fill_exp", "fill_opt", "assign_op",
   1263   "separator", "assignment", "opt_comma", "memory", "memory_spec_list_opt",
   1264   "memory_spec_list", "memory_spec", "$@16", "$@17", "origin_spec",
   1265   "length_spec", "attributes_opt", "attributes_list", "attributes_string",
   1266   "startup", "high_level_library", "high_level_library_NAME_list",
   1267   "low_level_library", "low_level_library_NAME_list",
   1268   "floating_point_support", "nocrossref_list", "paren_script_name", "$@18",
   1269   "mustbe_exp", "$@19", "exp", "$@20", "$@21", "memspec_at_opt", "opt_at",
   1270   "opt_align", "opt_align_with_input", "opt_subalign", "sect_constraint",
   1271   "section", "$@22", "$@23", "$@24", "$@25", "$@26", "$@27", "$@28",
   1272   "$@29", "$@30", "$@31", "$@32", "type", "atype", "opt_exp_with_type",
   1273   "opt_exp_without_type", "opt_nocrossrefs", "memspec_opt", "phdr_opt",
   1274   "overlay_section", "$@33", "$@34", "$@35", "phdrs", "phdr_list", "phdr",
   1275   "$@36", "$@37", "phdr_type", "phdr_qualifiers", "phdr_val",
   1276   "dynamic_list_file", "$@38", "dynamic_list_nodes", "dynamic_list_node",
   1277   "dynamic_list_tag", "version_script_file", "$@39", "version", "$@40",
   1278   "vers_nodes", "vers_node", "verdep", "vers_tag", "vers_defns", "@41",
   1279   "@42", "opt_semicolon", YY_NULLPTR
   1280 };
   1281 
   1282 static const char *
   1283 yysymbol_name (yysymbol_kind_t yysymbol)
   1284 {
   1285   return yytname[yysymbol];
   1286 }
   1287 #endif
   1288 
   1289 #define YYPACT_NINF (-750)
   1290 
   1291 #define yypact_value_is_default(Yyn) \
   1292   ((Yyn) == YYPACT_NINF)
   1293 
   1294 #define YYTABLE_NINF (-350)
   1295 
   1296 #define yytable_value_is_error(Yyn) \
   1297   0
   1298 
   1299 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
   1300    STATE-NUM.  */
   1301 static const yytype_int16 yypact[] =
   1302 {
   1303      147,  -750,  -750,  -750,  -750,  -750,    90,  -750,  -750,  -750,
   1304     -750,  -750,    20,  -750,   -16,  -750,   -26,  -750,   915,  1765,
   1305      453,    56,    68,    89,  -750,   106,    59,   -16,  -750,   112,
   1306      -26,  -750,    69,    73,    52,    98,  -750,   114,  -750,  -750,
   1307      184,   176,   198,   204,   205,   210,   211,   215,   232,   233,
   1308      238,  -750,  -750,   243,   252,   256,  -750,   261,  -750,   262,
   1309     -750,  -750,  -750,  -750,   -43,  -750,  -750,  -750,  -750,  -750,
   1310     -750,  -750,   161,  -750,   298,   184,   299,   768,  -750,   300,
   1311      309,   310,  -750,  -750,   311,   312,   321,   768,   322,   325,
   1312      328,   338,   339,   207,  -750,  -750,  -750,  -750,  -750,  -750,
   1313     -750,  -750,  -750,  -750,   340,   341,   343,  -750,   344,  -750,
   1314      313,   342,   304,   236,   106,  -750,  -750,  -750,   330,   245,
   1315     -750,  -750,  -750,   380,   395,   396,   398,  -750,  -750,    30,
   1316      409,   410,   411,   184,   184,   413,   184,    13,  -750,   414,
   1317      414,  -750,   383,   184,   386,  -750,  -750,  -750,  -750,   366,
   1318        2,  -750,    77,  -750,  -750,   768,   768,   768,   388,   389,
   1319      390,   394,   397,  -750,  -750,   399,   400,  -750,  -750,  -750,
   1320     -750,   401,   403,  -750,  -750,   404,   412,   415,   416,   768,
   1321      768,  1550,   391,  -750,   281,  -750,   282,    43,  -750,  -750,
   1322      506,  1820,   284,  -750,  -750,   297,  -750,    44,  -750,  -750,
   1323     -750,   768,  -750,   440,   444,   458,   423,   112,   112,   318,
   1324      120,   425,   319,   120,   337,    22,  -750,  -750,   -94,   329,
   1325     -750,  -750,   184,   426,   -14,  -750,   335,   334,   336,   346,
   1326      349,   351,   352,  -750,  -750,   -30,     7,    49,   354,   355,
   1327      361,    23,  -750,   362,   768,   338,   -16,   768,   768,  -750,
   1328      768,   768,  -750,  -750,   347,   768,   768,   768,   768,   768,
   1329      435,   469,   768,  -750,   455,  -750,  -750,  -750,   768,   768,
   1330     -750,  -750,   768,   768,   768,   490,  -750,  -750,   768,   768,
   1331      768,   768,   768,   768,   768,   768,   768,   768,   768,   768,
   1332      768,   768,   768,   768,   768,   768,   768,   768,   768,   768,
   1333     1820,   492,   513,  -750,   516,   768,   768,  1820,   151,   517,
   1334     -750,   518,  1820,  -750,  -750,  -750,  -750,   371,   372,  -750,
   1335     -750,   521,  -750,  -750,  -750,   -74,  -750,   453,  -750,   184,
   1336     -750,  -750,  -750,  -750,  -750,  -750,  -750,   522,  -750,  -750,
   1337      983,   491,  -750,  -750,  -750,    30,   525,  -750,  -750,  -750,
   1338     -750,  -750,  -750,  -750,   184,  -750,   184,   414,  -750,  -750,
   1339     -750,  -750,  -750,  -750,   493,    39,   378,  -750,  1570,    48,
   1340       -4,  1820,  1820,  1790,  1820,  1820,  -750,   881,  1119,  1590,
   1341     1610,  1139,   528,   385,  1159,   535,  1630,  1685,  1179,  1705,
   1342     1199,   393,   925,  1236,  1099,  1371,  1507,  1643,   674,   674,
   1343      377,   377,   377,   377,   320,   320,    79,    79,  -750,  -750,
   1344     -750,  1820,  1820,  1820,  -750,  -750,  -750,  1820,  1820,  -750,
   1345     -750,  -750,  -750,   402,   417,   421,   112,   129,   120,   494,
   1346     -750,  -750,   -70,   594,  -750,   681,   594,   768,   405,  -750,
   1347        9,   534,    30,  -750,   422,  -750,  -750,  -750,  -750,  -750,
   1348     -750,   514,    46,  -750,   549,  -750,  -750,  -750,   768,  -750,
   1349     -750,   768,   768,  -750,  -750,  -750,  -750,   424,   768,   768,
   1350     -750,   559,  -750,  -750,   768,  -750,  -750,  -750,   427,   548,
   1351     -750,  -750,  -750,   234,   530,  1787,   552,   459,  -750,  -750,
   1352     1916,   474,  -750,  1820,    42,   572,  -750,   574,     3,  -750,
   1353      484,   546,  -750,    23,  -750,  -750,  -750,   550,   430,  1219,
   1354     1256,  1276,   445,  -750,  1296,  1316,   433,  1820,   120,   540,
   1355      112,   112,  -750,  -750,  -750,  -750,  -750,   563,   591,  -750,
   1356      449,   768,   263,   588,  -750,   569,   570,   706,  -750,  -750,
   1357      459,   551,   573,   585,  -750,   454,  -750,  -750,  -750,   613,
   1358      475,  -750,    25,    23,  -750,  -750,  -750,  -750,  -750,   768,
   1359     -750,  -750,  -750,  -750,   477,   427,   560,   768,  -750,  1336,
   1360     -750,   768,   599,   495,  -750,   531,  -750,   768,    42,   768,
   1361      487,  -750,  -750,   541,  -750,    36,    23,  1356,   120,   582,
   1362      634,  1820,   216,  1393,   768,  -750,   531,   611,  -750,   452,
   1363     1413,  -750,  1433,  -750,  -750,   639,  -750,  -750,    80,  -750,
   1364     -750,   768,   614,   636,  -750,  1453,   117,   768,   592,  -750,
   1365     -750,    42,  -750,  -750,  1473,   768,  -750,  -750,  -750,  -750,
   1366     -750,  -750,  1493,  -750,  -750,  -750,  -750,  1530,   595,  -750,
   1367     -750,   619,   818,    32,   643,   606,  -750,  -750,  -750,  -750,
   1368     -750,   624,   627,   184,   628,  -750,  -750,  -750,   629,   630,
   1369      631,  -750,    84,  -750,  -750,   632,    19,  -750,  -750,  -750,
   1370      818,   612,   633,   -43,  -750,   648,  -750,    14,    29,  -750,
   1371     -750,   637,  -750,   671,   672,  -750,   649,   650,   651,   652,
   1372     -750,  -750,   -79,    84,   653,   655,    84,   657,  -750,  -750,
   1373     -750,  -750,   656,   691,   607,   568,   571,   575,   818,   576,
   1374     -750,   768,    15,  -750,    -1,  -750,    17,    88,    91,    29,
   1375       29,  -750,    84,   123,    29,   -55,    84,   648,   577,   818,
   1376     -750,   697,  -750,  -750,  -750,  -750,   687,  -750,  1725,   578,
   1377      583,   721,  -750,   672,  -750,   689,   690,   584,   698,   701,
   1378      586,   587,   593,  -750,  -750,  -750,   131,   607,  -750,   685,
   1379      741,    67,  -750,   744,  -750,  -750,  -750,    29,    29,  -750,
   1380       29,    29,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,
   1381      745,  -750,   600,   601,   602,   603,   604,    67,  -750,  -750,
   1382     -750,   475,   -43,   605,   608,   609,   610,  -750,    67,  -750,
   1383     -750,  -750,  -750,  -750,  -750,   475,  -750,  -750,   475,  -750
   1384 };
   1385 
   1386 /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
   1387    Performed when YYTABLE does not specify something else to do.  Zero
   1388    means the default is an error.  */
   1389 static const yytype_int16 yydefact[] =
   1390 {
   1391        0,    57,    10,     8,   347,   341,     0,     2,    60,     3,
   1392       13,     6,     0,     4,     0,     5,     0,     1,    58,    11,
   1393        0,     0,     0,     0,     9,   358,     0,   348,   351,     0,
   1394      342,   343,     0,     0,     0,     0,    77,     0,    79,    78,
   1395        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   1396        0,   213,   214,     0,     0,     0,    81,     0,   114,     0,
   1397       70,    59,    62,    68,     0,    61,    64,    65,    66,    67,
   1398       63,    69,     0,    16,     0,     0,     0,     0,    17,     0,
   1399        0,     0,    19,    46,     0,     0,     0,     0,     0,     0,
   1400       51,     0,     0,     0,   171,   172,   173,   174,   220,   175,
   1401      176,   177,   178,   220,     0,     0,     0,   364,   375,   363,
   1402      371,   373,     0,     0,   358,   352,   371,   373,     0,     0,
   1403      344,   111,   330,     0,     0,     0,     0,     7,    84,   190,
   1404        0,     0,     0,     0,     0,     0,     0,     0,   212,   215,
   1405      215,    94,     0,     0,     0,    88,   180,   179,   113,     0,
   1406        0,    40,     0,   248,   265,     0,     0,     0,     0,     0,
   1407        0,     0,     0,   249,   261,     0,     0,   218,   218,   218,
   1408      218,     0,     0,   218,   218,     0,     0,     0,     0,     0,
   1409        0,    14,     0,    49,    31,    47,    32,    18,    33,    23,
   1410        0,    36,     0,    37,    52,    38,    54,    39,    42,    12,
   1411      181,     0,   182,     0,     0,     0,     0,     0,     0,     0,
   1412      359,     0,     0,   346,     0,     0,    90,    91,     0,     0,
   1413       60,   193,     0,     0,   187,   192,     0,     0,     0,     0,
   1414        0,     0,     0,   207,   209,   187,   187,   215,     0,     0,
   1415        0,     0,    94,     0,     0,     0,     0,     0,     0,    13,
   1416        0,     0,   226,   222,     0,     0,     0,     0,     0,     0,
   1417        0,     0,     0,   251,     0,   250,   252,   253,     0,     0,
   1418      269,   270,     0,     0,     0,     0,   225,   227,     0,     0,
   1419        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   1420        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   1421       25,     0,     0,    45,     0,     0,     0,    22,     0,     0,
   1422       55,     0,   221,   220,   220,   220,   369,     0,     0,   353,
   1423      366,   376,   365,   372,   374,     0,   345,   286,   108,     0,
   1424      291,   296,   110,   109,   332,   329,   331,     0,    74,    76,
   1425      349,   199,   195,   188,   186,     0,     0,    93,    71,    72,
   1426       83,   112,   205,   206,     0,   210,     0,   215,   216,    86,
   1427       87,    80,    96,    99,     0,    95,     0,    73,     0,     0,
   1428        0,    27,    28,    43,    29,    30,   223,     0,     0,     0,
   1429        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   1430        0,     0,     0,   246,   245,   243,   242,   241,   235,   236,
   1431      239,   240,   237,   238,   233,   234,   231,   232,   228,   229,
   1432      230,    15,    26,    24,    50,    48,    44,    20,    21,    35,
   1433       34,    53,    56,     0,     0,     0,     0,   360,   361,     0,
   1434      356,   354,     0,   310,   299,     0,   310,     0,     0,    85,
   1435        0,     0,   190,   191,     0,   208,   211,   217,   102,    98,
   1436      101,     0,     0,    82,     0,    89,   350,    41,     0,   256,
   1437      264,     0,     0,   260,   262,   247,   224,     0,     0,     0,
   1438      255,     0,   271,   254,     0,   183,   184,   185,   377,   374,
   1439      367,   357,   355,     0,     0,   310,     0,   275,   111,   317,
   1440        0,   318,   297,   335,   336,     0,   203,     0,     0,   201,
   1441        0,     0,    92,     0,   106,    97,   100,     0,     0,     0,
   1442        0,     0,     0,   219,     0,     0,     0,   244,   378,     0,
   1443        0,     0,   301,   302,   303,   304,   305,   307,     0,   311,
   1444        0,     0,     0,     0,   313,     0,   277,     0,   316,   319,
   1445      275,     0,   339,     0,   333,     0,   204,   200,   202,     0,
   1446      187,   196,     0,     0,   104,   115,   257,   258,   259,     0,
   1447      266,   267,   268,   370,     0,   377,     0,     0,   309,     0,
   1448      312,     0,     0,   279,   300,   281,   111,     0,   336,     0,
   1449        0,    75,   220,     0,   103,     0,     0,     0,   362,     0,
   1450        0,   308,   310,     0,     0,   278,   281,     0,   292,     0,
   1451        0,   337,     0,   334,   197,     0,   194,   107,     0,   263,
   1452      368,     0,     0,     0,   274,     0,   285,     0,     0,   298,
   1453      340,   336,   220,   105,     0,     0,   314,   276,   282,   283,
   1454      284,   287,     0,   293,   338,   198,   306,     0,     0,   280,
   1455      324,   310,   161,     0,     0,   138,   163,   164,   165,   166,
   1456      167,     0,     0,     0,     0,   149,   150,   155,     0,     0,
   1457        0,   147,     0,   117,   119,     0,     0,   144,   152,   160,
   1458      162,     0,     0,     0,   325,   321,   315,     0,     0,   157,
   1459      220,     0,   145,     0,     0,   116,     0,     0,     0,     0,
   1460      122,   137,   187,     0,   139,     0,     0,     0,   159,   288,
   1461      220,   148,     0,     0,   273,     0,     0,     0,   161,     0,
   1462      168,     0,     0,   131,     0,   135,     0,     0,     0,     0,
   1463        0,   140,     0,   187,     0,   187,     0,   321,     0,   161,
   1464      320,     0,   322,   151,   120,   121,     0,   154,     0,   116,
   1465        0,     0,   133,     0,   134,     0,     0,     0,     0,     0,
   1466        0,     0,     0,   136,   142,   141,   187,   273,   153,     0,
   1467        0,   170,   158,     0,   146,   132,   118,     0,     0,   123,
   1468        0,     0,   124,   125,   130,   143,   322,   326,   272,   220,
   1469        0,   294,     0,     0,     0,     0,     0,   170,   322,   169,
   1470      323,   187,     0,     0,     0,     0,     0,   289,   170,   295,
   1471      156,   127,   126,   128,   129,   187,   327,   290,   187,   328
   1472 };
   1473 
   1474 /* YYPGOTO[NTERM-NUM].  */
   1475 static const yytype_int16 yypgoto[] =
   1476 {
   1477     -750,  -750,   -73,  -750,  -750,  -750,  -750,   503,  -750,  -750,
   1478     -750,  -750,  -750,  -750,   515,  -750,  -750,   554,  -750,  -750,
   1479     -750,  -750,   533,  -750,  -464,  -750,  -750,  -750,  -750,  -457,
   1480      -13,  -750,  -649,  1234,   110,    55,  -750,  -750,  -750,  -628,
   1481       70,  -750,  -750,   109,  -750,  -750,  -750,  -671,  -750,     4,
   1482     -749,  -750,  -648,   -12,  -220,  -750,   345,  -750,   439,  -750,
   1483     -750,  -750,  -750,  -750,  -750,   287,  -750,  -750,  -750,  -750,
   1484     -750,  -750,  -130,   122,  -750,   -89,  -750,   -76,  -750,  -750,
   1485       33,   246,  -750,  -750,   193,  -750,  -750,  -750,  -750,  -750,
   1486     -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -477,
   1487      356,  -750,  -750,    64,  -702,  -750,  -750,  -750,  -750,  -750,
   1488     -750,  -750,  -750,  -750,  -750,  -522,  -750,  -750,  -750,  -750,
   1489      763,  -750,  -750,  -750,  -750,  -750,   555,   -24,  -750,   680,
   1490      -23,  -750,  -750,   230
   1491 };
   1492 
   1493 /* YYDEFGOTO[NTERM-NUM].  */
   1494 static const yytype_int16 yydefgoto[] =
   1495 {
   1496        0,     6,   128,    11,    12,     9,    10,    19,    93,   249,
   1497      187,   186,   184,   195,   197,     7,     8,    18,    61,   142,
   1498      220,   245,   240,   241,   365,   503,   586,   553,    62,   214,
   1499      332,   144,   663,   664,   665,   691,   714,   666,   716,   692,
   1500      667,   668,   712,   669,   681,   708,   670,   671,   672,   709,
   1501      781,   103,   148,    64,   722,    65,   223,   224,   225,   341,
   1502      442,   550,   606,   441,   498,   499,    66,    67,   235,    68,
   1503      236,    69,   238,   263,   264,   710,   201,   254,   260,   512,
   1504      732,   536,   573,   596,   598,   631,   333,   433,   638,   727,
   1505      805,   435,   618,   640,   791,   436,   541,   488,   530,   486,
   1506      487,   491,   540,   704,   761,   643,   702,   788,   808,    70,
   1507      215,   336,   437,   580,   494,   544,   578,    15,    16,    30,
   1508       31,   118,    13,    14,    71,    72,    27,    28,   432,   112,
   1509      113,   521,   426,   519
   1510 };
   1511 
   1512 /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
   1513    positive, shift that token.  If negative, reduce the rule whose
   1514    number is the opposite.  If YYTABLE_NINF, syntax error.  */
   1515 static const yytype_int16 yytable[] =
   1516 {
   1517       24,   181,   151,   115,   345,    63,   119,   496,   533,   200,
   1518      239,   191,   247,   496,   202,   354,   356,   127,   685,   739,
   1519      741,   685,  -189,   694,    20,   701,   334,   362,   363,   449,
   1520      450,   537,    29,   685,   221,   715,   674,   736,   797,   552,
   1521      449,   450,    25,   449,   450,  -189,   542,   303,   310,   806,
   1522      505,   506,   310,   237,    25,   456,   601,   337,   759,   338,
   1523      229,   230,   430,   232,   234,   723,   481,   744,   725,   695,
   1524      243,   652,   344,   695,   787,   652,   721,   779,   431,   252,
   1525      253,   335,   482,   780,   449,   450,   798,   250,   685,   585,
   1526       17,   675,   685,   104,   766,   685,   344,   222,   756,   634,
   1527      755,   123,   124,   276,   277,   105,   300,   358,   146,   147,
   1528      107,   294,   295,   296,   307,   613,   107,   114,   705,   599,
   1529       26,   344,   608,   353,   320,   312,   106,   121,    21,    22,
   1530       23,   122,    26,   320,   364,   125,   451,   344,   686,   687,
   1531      688,   689,   745,   746,   800,   748,   749,   451,   543,   342,
   1532      451,   126,   742,   248,   419,   420,   547,   507,   344,   497,
   1533      355,   659,   660,   660,   644,   497,   233,   660,   368,   662,
   1534      743,   371,   372,   696,   374,   375,   452,   660,   584,   377,
   1535      378,   379,   380,   381,   317,   318,   384,   452,   127,   607,
   1536      452,   451,   386,   387,   304,   311,   388,   389,   390,   311,
   1537      357,   455,   392,   393,   394,   395,   396,   397,   398,   399,
   1538      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
   1539      410,   411,   412,   413,   423,   424,   425,   447,   251,   417,
   1540      418,   452,   660,   623,   129,   130,   660,   153,   154,   660,
   1541      108,   131,   132,   109,   110,   111,   108,   133,   134,   109,
   1542      116,   117,   135,   532,   321,   612,   434,   322,   323,   324,
   1543      628,   629,   630,   321,   155,   156,   322,   323,   479,   136,
   1544      137,   157,   158,   159,   344,   138,   754,     1,     2,     3,
   1545      139,   445,   344,   446,   775,   160,   161,   162,     4,   140,
   1546      265,   266,   267,   141,   163,   270,   271,     5,   143,   145,
   1547      164,   149,   150,   152,   182,   522,   523,   524,   525,   526,
   1548      527,   528,   165,   183,   185,   188,   189,   166,   167,   168,
   1549      169,   170,   171,   172,   199,   190,   192,    63,   193,   207,
   1550      583,   173,   194,   174,   522,   523,   524,   525,   526,   527,
   1551      528,   327,   196,   198,   203,   204,   115,   205,   206,   175,
   1552      292,   293,   294,   295,   296,   176,   177,   485,   208,   490,
   1553      485,   493,   278,   209,   279,   280,   281,   282,   283,   284,
   1554      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
   1555      295,   296,   509,   178,   216,   510,   511,   529,   210,   212,
   1556      179,   180,   514,   515,   153,   154,   328,   213,   517,   217,
   1557      218,   298,   219,   478,   329,   290,   291,   292,   293,   294,
   1558      295,   296,   330,   226,   227,   228,   529,   231,   237,    47,
   1559      242,   155,   156,   244,   246,   255,   256,   257,   157,   158,
   1560      159,   258,   301,   302,   259,   308,   261,   262,   268,   331,
   1561      269,   272,   160,   161,   162,    21,    22,    23,   309,   273,
   1562      313,   163,   274,   275,   314,   569,   327,   164,    58,    94,
   1563       95,    96,    97,    98,    99,   100,   101,   102,   315,   165,
   1564      319,   326,   382,   383,   166,   167,   168,   169,   170,   171,
   1565      172,   316,   339,   587,   325,   343,   346,   347,   173,   348,
   1566      174,   591,   385,   604,   391,   593,   414,   564,   565,   349,
   1567      376,   600,   350,   602,   351,   352,   175,   359,   360,   153,
   1568      154,   619,   176,   177,   361,   367,   305,   415,   615,   329,
   1569      416,   421,   422,   427,   428,   429,   438,   330,   440,   444,
   1570      448,   453,   464,   635,    47,   624,   155,   156,   465,   467,
   1571      178,   632,   299,   157,   158,   159,   473,   179,   180,   637,
   1572      500,   504,   480,   508,   331,   475,   495,   160,   161,   162,
   1573       21,    22,    23,   516,   520,   535,   163,   531,   534,   539,
   1574      476,   799,   164,    58,   477,   502,   545,   513,   546,   518,
   1575      679,   549,   551,   555,   165,   807,   562,   554,   809,   166,
   1576      167,   168,   169,   170,   171,   172,   559,   153,   154,   563,
   1577      566,   567,   568,   173,   570,   174,   571,   581,   572,   576,
   1578      577,   728,    94,    95,    96,    97,    98,    99,   100,   101,
   1579      102,   175,   579,   582,   155,   156,   344,   176,   177,   588,
   1580      673,   483,   158,   159,   484,   738,   594,   590,   597,   603,
   1581      605,   610,   595,  -116,   611,   160,   161,   162,   617,   622,
   1582      633,   625,   626,   642,   163,   178,   532,   306,   673,   676,
   1583      164,   677,   179,   180,   678,   680,   682,   683,   684,   693,
   1584      700,   699,   165,   703,   711,   713,   685,   166,   167,   168,
   1585      169,   170,   171,   172,   153,   154,   717,   718,   719,   720,
   1586     -116,   173,   724,   174,   726,   730,   673,   489,   286,   287,
   1587      288,   289,   290,   291,   292,   293,   294,   295,   296,   175,
   1588      327,   155,   156,   731,   729,   176,   177,   673,   157,   158,
   1589      159,   733,   760,   762,   734,   765,   767,   768,   735,   737,
   1590      758,  -138,   160,   161,   162,   770,   764,   769,   771,   772,
   1591      773,   163,   574,   178,   777,   778,   774,   164,   782,   790,
   1592      179,   180,   373,   792,   793,   794,   795,   796,   801,   165,
   1593      369,   802,   803,   804,   166,   167,   168,   169,   170,   171,
   1594      172,   153,   154,   329,   340,   366,   697,   753,   173,   698,
   1595      174,   330,   740,   789,   443,   548,   575,   501,    47,   616,
   1596      776,   757,   492,   120,   211,   589,   175,     0,   155,   156,
   1597        0,   370,   176,   177,     0,   157,   158,   159,   331,     0,
   1598        0,     0,     0,     0,    21,    22,    23,     0,     0,   160,
   1599      161,   162,   645,     0,     0,     0,     0,    58,   163,     0,
   1600      178,     0,     0,     0,   164,     0,     0,   179,   180,     0,
   1601        0,     0,     0,     0,     0,     0,   165,     0,     0,     0,
   1602        0,   166,   167,   168,   169,   170,   171,   172,     0,   646,
   1603      647,   648,   649,   650,     0,   173,     0,   174,     0,     0,
   1604        0,     0,   651,     0,   652,     0,     0,     0,     0,     0,
   1605        0,     0,     0,   175,     0,   653,     0,     0,     0,   176,
   1606      177,     0,     0,     0,     0,     0,   278,     0,   279,   280,
   1607      281,   282,   283,   284,   285,   286,   287,   288,   289,   290,
   1608      291,   292,   293,   294,   295,   296,   654,   178,   655,    20,
   1609        0,     0,   656,     0,   179,   180,    21,    22,    23,     0,
   1610        0,     0,     0,     0,     0,     0,     0,     0,     0,   657,
   1611      278,   474,   279,   280,   281,   282,   283,   284,   285,   286,
   1612      287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
   1613      658,    32,    33,    34,   659,     0,   660,     0,     0,     0,
   1614      661,     0,   662,     0,     0,     0,    35,    36,    37,    38,
   1615       39,     0,    40,    41,    42,    43,     0,    20,     0,     0,
   1616        0,     0,     0,     0,    44,    45,    46,    47,     0,     0,
   1617        0,     0,     0,     0,     0,    48,    49,    50,    51,    52,
   1618       53,    54,     0,     0,     0,     0,    55,    56,    57,   439,
   1619        0,     0,     0,    21,    22,    23,     0,     0,     0,    32,
   1620       33,    34,   458,     0,   459,     0,    58,     0,     0,     0,
   1621        0,     0,     0,     0,    35,    36,    37,    38,    39,    59,
   1622       40,    41,    42,    43,     0,  -349,     0,     0,     0,     0,
   1623        0,     0,    44,    45,    46,    47,     0,    60,     0,     0,
   1624        0,     0,     0,    48,    49,    50,    51,    52,    53,    54,
   1625        0,     0,     0,     0,    55,    56,    57,     0,     0,     0,
   1626        0,    21,    22,    23,     0,     0,     0,     0,     0,     0,
   1627        0,     0,     0,     0,    58,     0,     0,     0,     0,     0,
   1628        0,     0,     0,     0,     0,     0,     0,    59,   281,   282,
   1629      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
   1630      293,   294,   295,   296,   278,    60,   279,   280,   281,   282,
   1631      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
   1632      293,   294,   295,   296,   278,     0,   279,   280,   281,   282,
   1633      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
   1634      293,   294,   295,   296,   278,     0,   279,   280,   281,   282,
   1635      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
   1636      293,   294,   295,   296,   278,     0,   279,   280,   281,   282,
   1637      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
   1638      293,   294,   295,   296,   278,     0,   279,   280,   281,   282,
   1639      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
   1640      293,   294,   295,   296,   278,     0,   279,   280,   281,   282,
   1641      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
   1642      293,   294,   295,   296,   280,   281,   282,   283,   284,   285,
   1643      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
   1644      296,   278,   460,   279,   280,   281,   282,   283,   284,   285,
   1645      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
   1646      296,   278,   463,   279,   280,   281,   282,   283,   284,   285,
   1647      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
   1648      296,   278,   466,   279,   280,   281,   282,   283,   284,   285,
   1649      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
   1650      296,   278,   470,   279,   280,   281,   282,   283,   284,   285,
   1651      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
   1652      296,   278,   472,   279,   280,   281,   282,   283,   284,   285,
   1653      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
   1654      296,   278,   556,   279,   280,   281,   282,   283,   284,   285,
   1655      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
   1656      296,   282,   283,   284,   285,   286,   287,   288,   289,   290,
   1657      291,   292,   293,   294,   295,   296,     0,     0,   278,   557,
   1658      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
   1659      289,   290,   291,   292,   293,   294,   295,   296,   278,   558,
   1660      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
   1661      289,   290,   291,   292,   293,   294,   295,   296,   278,   560,
   1662      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
   1663      289,   290,   291,   292,   293,   294,   295,   296,   278,   561,
   1664      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
   1665      289,   290,   291,   292,   293,   294,   295,   296,   278,   592,
   1666      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
   1667      289,   290,   291,   292,   293,   294,   295,   296,   278,   609,
   1668      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
   1669      289,   290,   291,   292,   293,   294,   295,   296,   283,   284,
   1670      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
   1671      295,   296,     0,     0,     0,   278,   614,   279,   280,   281,
   1672      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
   1673      292,   293,   294,   295,   296,   278,   620,   279,   280,   281,
   1674      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
   1675      292,   293,   294,   295,   296,   278,   621,   279,   280,   281,
   1676      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
   1677      292,   293,   294,   295,   296,   278,   627,   279,   280,   281,
   1678      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
   1679      292,   293,   294,   295,   296,   278,   636,   279,   280,   281,
   1680      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
   1681      292,   293,   294,   295,   296,   278,   639,   279,   280,   281,
   1682      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
   1683      292,   293,   294,   295,   296,   284,   285,   286,   287,   288,
   1684      289,   290,   291,   292,   293,   294,   295,   296,     0,     0,
   1685        0,     0,     0,   641,     0,     0,     0,     0,     0,     0,
   1686        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   1687      278,   297,   279,   280,   281,   282,   283,   284,   285,   286,
   1688      287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
   1689      278,   454,   279,   280,   281,   282,   283,   284,   285,   286,
   1690      287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
   1691      278,   461,   279,   280,   281,   282,   283,   284,   285,   286,
   1692      287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
   1693        0,   462,     0,     0,     0,     0,     0,     0,     0,    73,
   1694        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   1695        0,   468,     0,     0,     0,     0,     0,     0,     0,     0,
   1696        0,     0,     0,     0,    73,     0,     0,     0,     0,     0,
   1697        0,     0,   278,    74,   279,   280,   281,   282,   283,   284,
   1698      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
   1699      295,   296,     0,     0,   532,     0,   457,     0,    74,     0,
   1700        0,     0,    75,     0,     0,   278,   469,   279,   280,   281,
   1701      282,   283,   284,   285,   286,   287,   288,   289,   290,   291,
   1702      292,   293,   294,   295,   296,     0,   471,    75,     0,     0,
   1703        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   1704       76,     0,     0,     0,     0,     0,   763,    77,    78,    79,
   1705       80,    81,   -43,    82,    83,    84,     0,     0,    85,    86,
   1706        0,    87,    88,    89,     0,    76,   690,     0,    90,    91,
   1707       92,     0,    77,    78,    79,    80,    81,     0,    82,    83,
   1708       84,   706,   707,    85,    86,     0,    87,    88,    89,     0,
   1709        0,     0,     0,    90,    91,    92,     0,   690,     0,     0,
   1710      690,   278,   538,   279,   280,   281,   282,   283,   284,   285,
   1711      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
   1712      296,   747,   750,   751,   752,     0,   690,     0,   706,     0,
   1713      690,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   1714        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   1715        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   1716        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   1717        0,   783,   784,     0,   785,   786
   1718 };
   1719 
   1720 static const yytype_int16 yycheck[] =
   1721 {
   1722       12,    77,    75,    27,   224,    18,    29,     4,   485,    98,
   1723      140,    87,    10,     4,   103,   235,   236,     4,     4,     4,
   1724       21,     4,    36,     4,     4,   673,     4,     4,     5,     4,
   1725        5,   488,    58,     4,     4,   684,     4,   708,   787,   503,
   1726        4,     5,    58,     4,     5,    59,     4,     4,     4,   798,
   1727        4,     5,     4,     4,    58,    59,   578,   151,   729,   153,
   1728      133,   134,   136,   136,   137,   693,   136,   716,   696,    54,
   1729      143,    56,   151,    54,   776,    56,   155,    10,   152,   155,
   1730      156,    59,   152,    16,     4,     5,   788,    10,     4,   553,
   1731        0,    59,     4,    37,   743,     4,   151,    67,   726,   621,
   1732      155,    49,    50,   179,   180,    37,   182,   237,   151,   152,
   1733        4,    32,    33,    34,   190,   592,     4,    58,   104,   576,
   1734      136,   151,   586,   153,     4,   201,    37,    58,   108,   109,
   1735      110,    58,   136,     4,   111,    37,   111,   151,    54,    55,
   1736       56,    57,    54,    55,   792,    54,    55,   111,   106,   222,
   1737      111,    37,   153,   151,     3,     4,   153,   111,   151,   156,
   1738      153,   146,   148,   148,   641,   156,   153,   148,   244,   154,
   1739      153,   247,   248,   154,   250,   251,   151,   148,   153,   255,
   1740      256,   257,   258,   259,   207,   208,   262,   151,     4,   153,
   1741      151,   111,   268,   269,   151,   151,   272,   273,   274,   151,
   1742      151,   153,   278,   279,   280,   281,   282,   283,   284,   285,
   1743      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
   1744      296,   297,   298,   299,   313,   314,   315,   357,   151,   305,
   1745      306,   151,   148,   153,    58,    37,   148,     3,     4,   148,
   1746      134,    37,    37,   137,   138,   139,   134,    37,    37,   137,
   1747      138,   139,    37,    37,   134,    39,   329,   137,   138,   139,
   1748      143,   144,   145,   134,    30,    31,   137,   138,   139,    37,
   1749       37,    37,    38,    39,   151,    37,   153,   130,   131,   132,
   1750       37,   354,   151,   356,   153,    51,    52,    53,   141,    37,
   1751      168,   169,   170,    37,    60,   173,   174,   150,    37,    37,
   1752       66,   140,     4,     4,     4,    71,    72,    73,    74,    75,
   1753       76,    77,    78,     4,     4,     4,     4,    83,    84,    85,
   1754       86,    87,    88,    89,   117,     4,     4,   340,     3,    16,
   1755      550,    97,     4,    99,    71,    72,    73,    74,    75,    76,
   1756       77,     4,     4,     4,     4,     4,   370,     4,     4,   115,
   1757       30,    31,    32,    33,    34,   121,   122,   433,    16,   435,
   1758      436,   437,    15,    59,    17,    18,    19,    20,    21,    22,
   1759       23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
   1760       33,    34,   458,   149,     4,   461,   462,   153,   152,    59,
   1761      156,   157,   468,   469,     3,     4,    59,   152,   474,     4,
   1762        4,    10,     4,   426,    67,    28,    29,    30,    31,    32,
   1763       33,    34,    75,     4,     4,     4,   153,     4,     4,    82,
   1764       37,    30,    31,    37,    58,    37,    37,    37,    37,    38,
   1765       39,    37,   151,   151,    37,   151,    37,    37,    37,   102,
   1766       37,    37,    51,    52,    53,   108,   109,   110,   151,    37,
   1767       10,    60,    37,    37,    10,   531,     4,    66,   121,     6,
   1768        7,     8,     9,    10,    11,    12,    13,    14,    10,    78,
   1769      152,   152,    37,     4,    83,    84,    85,    86,    87,    88,
   1770       89,    58,   153,   559,    59,    59,   151,   153,    97,   153,
   1771       99,   567,    37,   582,     4,   571,     4,   520,   521,   153,
   1772      153,   577,   153,   579,   153,   153,   115,   153,   153,     3,
   1773        4,    59,   121,   122,   153,   153,    10,     4,   594,    67,
   1774        4,     4,     4,   152,   152,     4,     4,    75,    37,     4,
   1775       37,   153,     4,   622,    82,   611,    30,    31,   153,     4,
   1776      149,   617,   151,    37,    38,    39,   153,   156,   157,   625,
   1777       16,    37,    58,     4,   102,   153,   151,    51,    52,    53,
   1778      108,   109,   110,     4,    16,   106,    60,    37,    16,    95,
   1779      153,   791,    66,   121,   153,   153,     4,   153,     4,   152,
   1780      653,    97,    36,   153,    78,   805,   153,    37,   808,    83,
   1781       84,    85,    86,    87,    88,    89,   151,     3,     4,    59,
   1782       37,    10,   153,    97,    16,    99,    37,   153,    38,    58,
   1783       37,   700,     6,     7,     8,     9,    10,    11,    12,    13,
   1784       14,   115,    37,    10,    30,    31,   151,   121,   122,   152,
   1785      642,    37,    38,    39,    40,   711,    37,    77,   107,   152,
   1786       99,    59,   147,    37,    10,    51,    52,    53,    37,    10,
   1787       58,    37,    16,    58,    60,   149,    37,   151,   670,    16,
   1788       66,    37,   156,   157,    37,    37,    37,    37,    37,    37,
   1789       37,    59,    78,    25,    37,     4,     4,    83,    84,    85,
   1790       86,    87,    88,    89,     3,     4,    37,    37,    37,    37,
   1791       37,    97,    37,    99,    37,     4,   708,    16,    24,    25,
   1792       26,    27,    28,    29,    30,    31,    32,    33,    34,   115,
   1793        4,    30,    31,   106,    58,   121,   122,   729,    37,    38,
   1794       39,   153,    25,    36,   153,     4,    37,    37,   153,   153,
   1795      153,   153,    51,    52,    53,    37,   153,   153,    37,   153,
   1796      153,    60,    36,   149,    59,     4,   153,    66,     4,     4,
   1797      156,   157,   249,   153,   153,   153,   153,   153,   153,    78,
   1798      245,   153,   153,   153,    83,    84,    85,    86,    87,    88,
   1799       89,     3,     4,    67,   220,   242,   666,   722,    97,   670,
   1800       99,    75,   712,   779,   345,   498,   540,   442,    82,   596,
   1801      757,   727,   436,    30,   114,   565,   115,    -1,    30,    31,
   1802       -1,   246,   121,   122,    -1,    37,    38,    39,   102,    -1,
   1803       -1,    -1,    -1,    -1,   108,   109,   110,    -1,    -1,    51,
   1804       52,    53,     4,    -1,    -1,    -1,    -1,   121,    60,    -1,
   1805      149,    -1,    -1,    -1,    66,    -1,    -1,   156,   157,    -1,
   1806       -1,    -1,    -1,    -1,    -1,    -1,    78,    -1,    -1,    -1,
   1807       -1,    83,    84,    85,    86,    87,    88,    89,    -1,    41,
   1808       42,    43,    44,    45,    -1,    97,    -1,    99,    -1,    -1,
   1809       -1,    -1,    54,    -1,    56,    -1,    -1,    -1,    -1,    -1,
   1810       -1,    -1,    -1,   115,    -1,    67,    -1,    -1,    -1,   121,
   1811      122,    -1,    -1,    -1,    -1,    -1,    15,    -1,    17,    18,
   1812       19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
   1813       29,    30,    31,    32,    33,    34,    98,   149,   100,     4,
   1814       -1,    -1,   104,    -1,   156,   157,   108,   109,   110,    -1,
   1815       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   121,
   1816       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
   1817       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
   1818      142,    46,    47,    48,   146,    -1,   148,    -1,    -1,    -1,
   1819      152,    -1,   154,    -1,    -1,    -1,    61,    62,    63,    64,
   1820       65,    -1,    67,    68,    69,    70,    -1,     4,    -1,    -1,
   1821       -1,    -1,    -1,    -1,    79,    80,    81,    82,    -1,    -1,
   1822       -1,    -1,    -1,    -1,    -1,    90,    91,    92,    93,    94,
   1823       95,    96,    -1,    -1,    -1,    -1,   101,   102,   103,    36,
   1824       -1,    -1,    -1,   108,   109,   110,    -1,    -1,    -1,    46,
   1825       47,    48,   151,    -1,   153,    -1,   121,    -1,    -1,    -1,
   1826       -1,    -1,    -1,    -1,    61,    62,    63,    64,    65,   134,
   1827       67,    68,    69,    70,    -1,   140,    -1,    -1,    -1,    -1,
   1828       -1,    -1,    79,    80,    81,    82,    -1,   152,    -1,    -1,
   1829       -1,    -1,    -1,    90,    91,    92,    93,    94,    95,    96,
   1830       -1,    -1,    -1,    -1,   101,   102,   103,    -1,    -1,    -1,
   1831       -1,   108,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
   1832       -1,    -1,    -1,    -1,   121,    -1,    -1,    -1,    -1,    -1,
   1833       -1,    -1,    -1,    -1,    -1,    -1,    -1,   134,    19,    20,
   1834       21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
   1835       31,    32,    33,    34,    15,   152,    17,    18,    19,    20,
   1836       21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
   1837       31,    32,    33,    34,    15,    -1,    17,    18,    19,    20,
   1838       21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
   1839       31,    32,    33,    34,    15,    -1,    17,    18,    19,    20,
   1840       21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
   1841       31,    32,    33,    34,    15,    -1,    17,    18,    19,    20,
   1842       21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
   1843       31,    32,    33,    34,    15,    -1,    17,    18,    19,    20,
   1844       21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
   1845       31,    32,    33,    34,    15,    -1,    17,    18,    19,    20,
   1846       21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
   1847       31,    32,    33,    34,    18,    19,    20,    21,    22,    23,
   1848       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
   1849       34,    15,   153,    17,    18,    19,    20,    21,    22,    23,
   1850       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
   1851       34,    15,   153,    17,    18,    19,    20,    21,    22,    23,
   1852       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
   1853       34,    15,   153,    17,    18,    19,    20,    21,    22,    23,
   1854       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
   1855       34,    15,   153,    17,    18,    19,    20,    21,    22,    23,
   1856       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
   1857       34,    15,   153,    17,    18,    19,    20,    21,    22,    23,
   1858       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
   1859       34,    15,   153,    17,    18,    19,    20,    21,    22,    23,
   1860       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
   1861       34,    20,    21,    22,    23,    24,    25,    26,    27,    28,
   1862       29,    30,    31,    32,    33,    34,    -1,    -1,    15,   153,
   1863       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
   1864       27,    28,    29,    30,    31,    32,    33,    34,    15,   153,
   1865       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
   1866       27,    28,    29,    30,    31,    32,    33,    34,    15,   153,
   1867       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
   1868       27,    28,    29,    30,    31,    32,    33,    34,    15,   153,
   1869       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
   1870       27,    28,    29,    30,    31,    32,    33,    34,    15,   153,
   1871       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
   1872       27,    28,    29,    30,    31,    32,    33,    34,    15,   153,
   1873       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
   1874       27,    28,    29,    30,    31,    32,    33,    34,    21,    22,
   1875       23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
   1876       33,    34,    -1,    -1,    -1,    15,   153,    17,    18,    19,
   1877       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
   1878       30,    31,    32,    33,    34,    15,   153,    17,    18,    19,
   1879       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
   1880       30,    31,    32,    33,    34,    15,   153,    17,    18,    19,
   1881       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
   1882       30,    31,    32,    33,    34,    15,   153,    17,    18,    19,
   1883       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
   1884       30,    31,    32,    33,    34,    15,   153,    17,    18,    19,
   1885       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
   1886       30,    31,    32,    33,    34,    15,   153,    17,    18,    19,
   1887       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
   1888       30,    31,    32,    33,    34,    22,    23,    24,    25,    26,
   1889       27,    28,    29,    30,    31,    32,    33,    34,    -1,    -1,
   1890       -1,    -1,    -1,   153,    -1,    -1,    -1,    -1,    -1,    -1,
   1891       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
   1892       15,   151,    17,    18,    19,    20,    21,    22,    23,    24,
   1893       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
   1894       15,   151,    17,    18,    19,    20,    21,    22,    23,    24,
   1895       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
   1896       15,   151,    17,    18,    19,    20,    21,    22,    23,    24,
   1897       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
   1898       -1,   151,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     4,
   1899       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
   1900       -1,   151,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
   1901       -1,    -1,    -1,    -1,     4,    -1,    -1,    -1,    -1,    -1,
   1902       -1,    -1,    15,    38,    17,    18,    19,    20,    21,    22,
   1903       23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
   1904       33,    34,    -1,    -1,    37,    -1,    36,    -1,    38,    -1,
   1905       -1,    -1,    67,    -1,    -1,    15,   151,    17,    18,    19,
   1906       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
   1907       30,    31,    32,    33,    34,    -1,   151,    67,    -1,    -1,
   1908       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
   1909      105,    -1,    -1,    -1,    -1,    -1,   151,   112,   113,   114,
   1910      115,   116,   117,   118,   119,   120,    -1,    -1,   123,   124,
   1911       -1,   126,   127,   128,    -1,   105,   662,    -1,   133,   134,
   1912      135,    -1,   112,   113,   114,   115,   116,    -1,   118,   119,
   1913      120,   677,   678,   123,   124,    -1,   126,   127,   128,    -1,
   1914       -1,    -1,    -1,   133,   134,   135,    -1,   693,    -1,    -1,
   1915      696,    15,    16,    17,    18,    19,    20,    21,    22,    23,
   1916       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
   1917       34,   717,   718,   719,   720,    -1,   722,    -1,   724,    -1,
   1918      726,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
   1919       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
   1920       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
   1921       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
   1922       -1,   767,   768,    -1,   770,   771
   1923 };
   1924 
   1925 /* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of
   1926    state STATE-NUM.  */
   1927 static const yytype_int16 yystos[] =
   1928 {
   1929        0,   130,   131,   132,   141,   150,   159,   173,   174,   163,
   1930      164,   161,   162,   280,   281,   275,   276,     0,   175,   165,
   1931        4,   108,   109,   110,   211,    58,   136,   284,   285,    58,
   1932      277,   278,    46,    47,    48,    61,    62,    63,    64,    65,
   1933       67,    68,    69,    70,    79,    80,    81,    82,    90,    91,
   1934       92,    93,    94,    95,    96,   101,   102,   103,   121,   134,
   1935      152,   176,   186,   188,   211,   213,   224,   225,   227,   229,
   1936      267,   282,   283,     4,    38,    67,   105,   112,   113,   114,
   1937      115,   116,   118,   119,   120,   123,   124,   126,   127,   128,
   1938      133,   134,   135,   166,     6,     7,     8,     9,    10,    11,
   1939       12,    13,    14,   209,    37,    37,    37,     4,   134,   137,
   1940      138,   139,   287,   288,    58,   285,   138,   139,   279,   288,
   1941      278,    58,    58,    49,    50,    37,    37,     4,   160,    58,
   1942       37,    37,    37,    37,    37,    37,    37,    37,    37,    37,
   1943       37,    37,   177,    37,   189,    37,   151,   152,   210,   140,
   1944        4,   160,     4,     3,     4,    30,    31,    37,    38,    39,
   1945       51,    52,    53,    60,    66,    78,    83,    84,    85,    86,
   1946       87,    88,    89,    97,    99,   115,   121,   122,   149,   156,
   1947      157,   235,     4,     4,   170,     4,   169,   168,     4,     4,
   1948        4,   235,     4,     3,     4,   171,     4,   172,     4,   117,
   1949      233,   234,   233,     4,     4,     4,     4,    16,    16,    59,
   1950      152,   287,    59,   152,   187,   268,     4,     4,     4,     4,
   1951      178,     4,    67,   214,   215,   216,     4,     4,     4,   160,
   1952      160,     4,   160,   153,   160,   226,   228,     4,   230,   230,
   1953      180,   181,    37,   160,    37,   179,    58,    10,   151,   167,
   1954       10,   151,   235,   235,   235,    37,    37,    37,    37,    37,
   1955      236,    37,    37,   231,   232,   231,   231,   231,    37,    37,
   1956      231,   231,    37,    37,    37,    37,   235,   235,    15,    17,
   1957       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
   1958       28,    29,    30,    31,    32,    33,    34,   151,    10,   151,
   1959      235,   151,   151,     4,   151,    10,   151,   235,   151,   151,
   1960        4,   151,   235,    10,    10,    10,    58,   288,   288,   152,
   1961        4,   134,   137,   138,   139,    59,   152,     4,    59,    67,
   1962       75,   102,   188,   244,     4,    59,   269,   151,   153,   153,
   1963      175,   217,   160,    59,   151,   212,   151,   153,   153,   153,
   1964      153,   153,   153,   153,   212,   153,   212,   151,   230,   153,
   1965      153,   153,     4,     5,   111,   182,   180,   153,   235,   172,
   1966      284,   235,   235,   165,   235,   235,   153,   235,   235,   235,
   1967      235,   235,    37,     4,   235,    37,   235,   235,   235,   235,
   1968      235,     4,   235,   235,   235,   235,   235,   235,   235,   235,
   1969      235,   235,   235,   235,   235,   235,   235,   235,   235,   235,
   1970      235,   235,   235,   235,     4,     4,     4,   235,   235,     3,
   1971        4,     4,     4,   233,   233,   233,   290,   152,   152,     4,
   1972      136,   152,   286,   245,   160,   249,   253,   270,     4,    36,
   1973       37,   221,   218,   216,     4,   160,   160,   230,    37,     4,
   1974        5,   111,   151,   153,   151,   153,    59,    36,   151,   153,
   1975      153,   151,   151,   153,     4,   153,   153,     4,   151,   151,
   1976      153,   151,   153,   153,    16,   153,   153,   153,   288,   139,
   1977       58,   136,   152,    37,    40,   235,   257,   258,   255,    16,
   1978      235,   259,   258,   235,   272,   151,     4,   156,   222,   223,
   1979       16,   214,   153,   183,    37,     4,     5,   111,     4,   235,
   1980      235,   235,   237,   153,   235,   235,     4,   235,   152,   291,
   1981       16,   289,    71,    72,    73,    74,    75,    76,    77,   153,
   1982      256,    37,    37,   257,    16,   106,   239,   187,    16,    95,
   1983      260,   254,     4,   106,   273,     4,     4,   153,   223,    97,
   1984      219,    36,   182,   185,    37,   153,   153,   153,   153,   151,
   1985      153,   153,   153,    59,   288,   288,    37,    10,   153,   235,
   1986       16,    37,    38,   240,    36,   239,    58,    37,   274,    37,
   1987      271,   153,    10,   212,   153,   182,   184,   235,   152,   291,
   1988       77,   235,   153,   235,    37,   147,   241,   107,   242,   187,
   1989      235,   273,   235,   152,   233,    99,   220,   153,   182,   153,
   1990       59,    10,    39,   257,   153,   235,   242,    37,   250,    59,
   1991      153,   153,    10,   153,   235,    37,    16,   153,   143,   144,
   1992      145,   243,   235,    58,   273,   233,   153,   235,   246,   153,
   1993      251,   153,    58,   263,   257,     4,    41,    42,    43,    44,
   1994       45,    54,    56,    67,    98,   100,   104,   121,   142,   146,
   1995      148,   152,   154,   190,   191,   192,   195,   198,   199,   201,
   1996      204,   205,   206,   211,     4,    59,    16,    37,    37,   160,
   1997       37,   202,    37,    37,    37,     4,    54,    55,    56,    57,
   1998      191,   193,   197,    37,     4,    54,   154,   192,   201,    59,
   1999       37,   210,   264,    25,   261,   104,   191,   191,   203,   207,
   2000      233,    37,   200,     4,   194,   190,   196,    37,    37,    37,
   2001       37,   155,   212,   197,    37,   197,    37,   247,   233,    58,
   2002        4,   106,   238,   153,   153,   153,   205,   153,   235,     4,
   2003      198,    21,   153,   153,   190,    54,    55,   191,    54,    55,
   2004      191,   191,   191,   193,   153,   155,   197,   261,   153,   205,
   2005       25,   262,    36,   151,   153,     4,   190,    37,    37,   153,
   2006       37,    37,   153,   153,   153,   153,   238,    59,     4,    10,
   2007       16,   208,     4,   191,   191,   191,   191,   262,   265,   207,
   2008        4,   252,   153,   153,   153,   153,   153,   208,   262,   212,
   2009      210,   153,   153,   153,   153,   248,   208,   212,   266,   212
   2010 };
   2011 
   2012 /* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM.  */
   2013 static const yytype_int16 yyr1[] =
   2014 {
   2015        0,   158,   159,   159,   159,   159,   159,   160,   162,   161,
   2016      164,   163,   165,   165,   166,   166,   166,   166,   166,   166,
   2017      166,   166,   166,   166,   166,   166,   166,   166,   166,   166,
   2018      166,   166,   166,   166,   166,   166,   166,   166,   166,   166,
   2019      167,   166,   166,   166,   168,   168,   168,   169,   169,   170,
   2020      170,   171,   171,   171,   172,   172,   172,   174,   173,   175,
   2021      175,   176,   176,   176,   176,   176,   176,   176,   176,   176,
   2022      176,   176,   176,   176,   176,   176,   176,   176,   176,   176,
   2023      176,   177,   176,   176,   178,   176,   176,   176,   179,   176,
   2024      176,   176,   176,   176,   181,   180,   182,   182,   182,   182,
   2025      182,   182,   183,   182,   184,   182,   185,   182,   186,   187,
   2026      187,   187,   188,   188,   189,   188,   190,   191,   191,   192,
   2027      192,   192,   193,   193,   193,   193,   193,   193,   193,   193,
   2028      193,   194,   194,   195,   196,   196,   197,   197,   198,   198,
   2029      198,   198,   198,   198,   199,   200,   199,   201,   201,   201,
   2030      201,   201,   201,   201,   201,   202,   201,   203,   201,   204,
   2031      204,   205,   205,   206,   206,   206,   206,   206,   207,   208,
   2032      208,   209,   209,   209,   209,   209,   209,   209,   209,   210,
   2033      210,   211,   211,   211,   211,   211,   212,   212,   213,   214,
   2034      214,   215,   215,   217,   216,   218,   216,   219,   220,   221,
   2035      221,   222,   222,   223,   223,   224,   225,   225,   226,   226,
   2036      227,   228,   228,   229,   229,   230,   230,   230,   232,   231,
   2037      234,   233,   235,   235,   235,   235,   235,   235,   235,   235,
   2038      235,   235,   235,   235,   235,   235,   235,   235,   235,   235,
   2039      235,   235,   235,   235,   235,   235,   235,   235,   235,   235,
   2040      235,   235,   235,   235,   235,   235,   235,   235,   235,   235,
   2041      235,   236,   237,   235,   235,   235,   235,   235,   235,   235,
   2042      235,   235,   238,   238,   239,   239,   240,   240,   241,   241,
   2043      242,   242,   243,   243,   243,   243,   245,   246,   247,   248,
   2044      244,   249,   250,   251,   252,   244,   253,   254,   244,   255,
   2045      244,   256,   256,   256,   256,   256,   256,   256,   256,   257,
   2046      257,   257,   258,   258,   258,   258,   259,   259,   260,   260,
   2047      261,   261,   262,   262,   263,   264,   265,   266,   263,   267,
   2048      268,   268,   270,   271,   269,   272,   273,   273,   273,   274,
   2049      274,   276,   275,   277,   277,   278,   279,   281,   280,   283,
   2050      282,   284,   284,   285,   285,   285,   286,   286,   287,   287,
   2051      287,   287,   287,   288,   288,   288,   288,   289,   288,   290,
   2052      288,   288,   288,   288,   288,   288,   288,   291,   291
   2053 };
   2054 
   2055 /* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM.  */
   2056 static const yytype_int8 yyr2[] =
   2057 {
   2058        0,     2,     2,     2,     2,     2,     2,     1,     0,     2,
   2059        0,     2,     3,     0,     2,     4,     1,     1,     2,     1,
   2060        4,     4,     3,     2,     4,     3,     4,     4,     4,     4,
   2061        4,     2,     2,     2,     4,     4,     2,     2,     2,     2,
   2062        0,     5,     2,     0,     3,     2,     0,     1,     3,     1,
   2063        3,     0,     1,     3,     1,     2,     3,     0,     2,     2,
   2064        0,     1,     1,     1,     1,     1,     1,     1,     1,     1,
   2065        1,     4,     4,     4,     4,     8,     4,     1,     1,     1,
   2066        4,     0,     5,     4,     0,     5,     4,     4,     0,     5,
   2067        3,     3,     6,     4,     0,     2,     1,     3,     2,     1,
   2068        3,     2,     0,     5,     0,     7,     0,     6,     4,     2,
   2069        2,     0,     4,     2,     0,     7,     1,     1,     5,     1,
   2070        4,     4,     1,     4,     4,     4,     7,     7,     7,     7,
   2071        4,     1,     3,     4,     2,     1,     3,     1,     1,     2,
   2072        3,     4,     4,     5,     1,     0,     5,     1,     2,     1,
   2073        1,     4,     1,     4,     4,     0,     8,     0,     5,     2,
   2074        1,     0,     1,     1,     1,     1,     1,     1,     1,     2,
   2075        0,     1,     1,     1,     1,     1,     1,     1,     1,     1,
   2076        1,     3,     3,     6,     6,     6,     1,     0,     4,     1,
   2077        0,     3,     1,     0,     7,     0,     5,     3,     3,     0,
   2078        3,     1,     2,     1,     2,     4,     4,     3,     3,     1,
   2079        4,     3,     0,     1,     1,     0,     2,     3,     0,     4,
   2080        0,     2,     2,     3,     4,     2,     2,     2,     3,     3,
   2081        3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
   2082        3,     3,     3,     3,     5,     3,     3,     4,     1,     1,
   2083        2,     2,     2,     2,     4,     4,     4,     6,     6,     6,
   2084        4,     0,     0,     8,     4,     1,     6,     6,     6,     2,
   2085        2,     4,     3,     0,     4,     0,     4,     0,     1,     0,
   2086        4,     0,     1,     1,     1,     0,     0,     0,     0,     0,
   2087       19,     0,     0,     0,     0,    17,     0,     0,     7,     0,
   2088        5,     1,     1,     1,     1,     1,     6,     1,     3,     3,
   2089        0,     2,     3,     2,     6,    10,     2,     1,     0,     1,
   2090        2,     0,     0,     3,     0,     0,     0,     0,    11,     4,
   2091        0,     2,     0,     0,     6,     1,     0,     3,     5,     0,
   2092        3,     0,     2,     1,     2,     4,     2,     0,     2,     0,
   2093        5,     1,     2,     4,     5,     6,     1,     2,     0,     2,
   2094        4,     4,     8,     1,     1,     3,     3,     0,     9,     0,
   2095        7,     1,     3,     1,     3,     1,     3,     0,     1
   2096 };
   2097 
   2098 
   2099 enum { YYENOMEM = -2 };
   2100 
   2101 #define yyerrok         (yyerrstatus = 0)
   2102 #define yyclearin       (yychar = YYEMPTY)
   2103 
   2104 #define YYACCEPT        goto yyacceptlab
   2105 #define YYABORT         goto yyabortlab
   2106 #define YYERROR         goto yyerrorlab
   2107 #define YYNOMEM         goto yyexhaustedlab
   2108 
   2109 
   2110 #define YYRECOVERING()  (!!yyerrstatus)
   2111 
   2112 #define YYBACKUP(Token, Value)                                    \
   2113   do                                                              \
   2114     if (yychar == YYEMPTY)                                        \
   2115       {                                                           \
   2116         yychar = (Token);                                         \
   2117         yylval = (Value);                                         \
   2118         YYPOPSTACK (yylen);                                       \
   2119         yystate = *yyssp;                                         \
   2120         goto yybackup;                                            \
   2121       }                                                           \
   2122     else                                                          \
   2123       {                                                           \
   2124         yyerror (YY_("syntax error: cannot back up")); \
   2125         YYERROR;                                                  \
   2126       }                                                           \
   2127   while (0)
   2128 
   2129 /* Backward compatibility with an undocumented macro.
   2130    Use YYerror or YYUNDEF. */
   2131 #define YYERRCODE YYUNDEF
   2132 
   2133 
   2134 /* Enable debugging if requested.  */
   2135 #if YYDEBUG
   2136 
   2137 # ifndef YYFPRINTF
   2138 #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
   2139 #  define YYFPRINTF fprintf
   2140 # endif
   2141 
   2142 # define YYDPRINTF(Args)                        \
   2143 do {                                            \
   2144   if (yydebug)                                  \
   2145     YYFPRINTF Args;                             \
   2146 } while (0)
   2147 
   2148 
   2149 
   2150 
   2151 # define YY_SYMBOL_PRINT(Title, Kind, Value, Location)                    \
   2152 do {                                                                      \
   2153   if (yydebug)                                                            \
   2154     {                                                                     \
   2155       YYFPRINTF (stderr, "%s ", Title);                                   \
   2156       yy_symbol_print (stderr,                                            \
   2157                   Kind, Value); \
   2158       YYFPRINTF (stderr, "\n");                                           \
   2159     }                                                                     \
   2160 } while (0)
   2161 
   2162 
   2163 /*-----------------------------------.
   2164 | Print this symbol's value on YYO.  |
   2165 `-----------------------------------*/
   2166 
   2167 static void
   2168 yy_symbol_value_print (FILE *yyo,
   2169                        yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep)
   2170 {
   2171   FILE *yyoutput = yyo;
   2172   YY_USE (yyoutput);
   2173   if (!yyvaluep)
   2174     return;
   2175   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
   2176   YY_USE (yykind);
   2177   YY_IGNORE_MAYBE_UNINITIALIZED_END
   2178 }
   2179 
   2180 
   2181 /*---------------------------.
   2182 | Print this symbol on YYO.  |
   2183 `---------------------------*/
   2184 
   2185 static void
   2186 yy_symbol_print (FILE *yyo,
   2187                  yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep)
   2188 {
   2189   YYFPRINTF (yyo, "%s %s (",
   2190              yykind < YYNTOKENS ? "token" : "nterm", yysymbol_name (yykind));
   2191 
   2192   yy_symbol_value_print (yyo, yykind, yyvaluep);
   2193   YYFPRINTF (yyo, ")");
   2194 }
   2195 
   2196 /*------------------------------------------------------------------.
   2197 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
   2198 | TOP (included).                                                   |
   2199 `------------------------------------------------------------------*/
   2200 
   2201 static void
   2202 yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
   2203 {
   2204   YYFPRINTF (stderr, "Stack now");
   2205   for (; yybottom <= yytop; yybottom++)
   2206     {
   2207       int yybot = *yybottom;
   2208       YYFPRINTF (stderr, " %d", yybot);
   2209     }
   2210   YYFPRINTF (stderr, "\n");
   2211 }
   2212 
   2213 # define YY_STACK_PRINT(Bottom, Top)                            \
   2214 do {                                                            \
   2215   if (yydebug)                                                  \
   2216     yy_stack_print ((Bottom), (Top));                           \
   2217 } while (0)
   2218 
   2219 
   2220 /*------------------------------------------------.
   2221 | Report that the YYRULE is going to be reduced.  |
   2222 `------------------------------------------------*/
   2223 
   2224 static void
   2225 yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp,
   2226                  int yyrule)
   2227 {
   2228   int yylno = yyrline[yyrule];
   2229   int yynrhs = yyr2[yyrule];
   2230   int yyi;
   2231   YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
   2232              yyrule - 1, yylno);
   2233   /* The symbols being reduced.  */
   2234   for (yyi = 0; yyi < yynrhs; yyi++)
   2235     {
   2236       YYFPRINTF (stderr, "   $%d = ", yyi + 1);
   2237       yy_symbol_print (stderr,
   2238                        YY_ACCESSING_SYMBOL (+yyssp[yyi + 1 - yynrhs]),
   2239                        &yyvsp[(yyi + 1) - (yynrhs)]);
   2240       YYFPRINTF (stderr, "\n");
   2241     }
   2242 }
   2243 
   2244 # define YY_REDUCE_PRINT(Rule)          \
   2245 do {                                    \
   2246   if (yydebug)                          \
   2247     yy_reduce_print (yyssp, yyvsp, Rule); \
   2248 } while (0)
   2249 
   2250 /* Nonzero means print parse trace.  It is left uninitialized so that
   2251    multiple parsers can coexist.  */
   2252 int yydebug;
   2253 #else /* !YYDEBUG */
   2254 # define YYDPRINTF(Args) ((void) 0)
   2255 # define YY_SYMBOL_PRINT(Title, Kind, Value, Location)
   2256 # define YY_STACK_PRINT(Bottom, Top)
   2257 # define YY_REDUCE_PRINT(Rule)
   2258 #endif /* !YYDEBUG */
   2259 
   2260 
   2261 /* YYINITDEPTH -- initial size of the parser's stacks.  */
   2262 #ifndef YYINITDEPTH
   2263 # define YYINITDEPTH 200
   2264 #endif
   2265 
   2266 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
   2267    if the built-in stack extension method is used).
   2268 
   2269    Do not make this value too large; the results are undefined if
   2270    YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
   2271    evaluated with infinite-precision integer arithmetic.  */
   2272 
   2273 #ifndef YYMAXDEPTH
   2274 # define YYMAXDEPTH 10000
   2275 #endif
   2276 
   2277 
   2278 
   2279 
   2280 
   2281 
   2282 /*-----------------------------------------------.
   2283 | Release the memory associated to this symbol.  |
   2284 `-----------------------------------------------*/
   2285 
   2286 static void
   2287 yydestruct (const char *yymsg,
   2288             yysymbol_kind_t yykind, YYSTYPE *yyvaluep)
   2289 {
   2290   YY_USE (yyvaluep);
   2291   if (!yymsg)
   2292     yymsg = "Deleting";
   2293   YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp);
   2294 
   2295   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
   2296   YY_USE (yykind);
   2297   YY_IGNORE_MAYBE_UNINITIALIZED_END
   2298 }
   2299 
   2300 
   2301 /* Lookahead token kind.  */
   2302 int yychar;
   2303 
   2304 /* The semantic value of the lookahead symbol.  */
   2305 YYSTYPE yylval;
   2306 /* Number of syntax errors so far.  */
   2307 int yynerrs;
   2308 
   2309 
   2310 
   2311 
   2312 /*----------.
   2313 | yyparse.  |
   2314 `----------*/
   2315 
   2316 int
   2317 yyparse (void)
   2318 {
   2319     yy_state_fast_t yystate = 0;
   2320     /* Number of tokens to shift before error messages enabled.  */
   2321     int yyerrstatus = 0;
   2322 
   2323     /* Refer to the stacks through separate pointers, to allow yyoverflow
   2324        to reallocate them elsewhere.  */
   2325 
   2326     /* Their size.  */
   2327     YYPTRDIFF_T yystacksize = YYINITDEPTH;
   2328 
   2329     /* The state stack: array, bottom, top.  */
   2330     yy_state_t yyssa[YYINITDEPTH];
   2331     yy_state_t *yyss = yyssa;
   2332     yy_state_t *yyssp = yyss;
   2333 
   2334     /* The semantic value stack: array, bottom, top.  */
   2335     YYSTYPE yyvsa[YYINITDEPTH];
   2336     YYSTYPE *yyvs = yyvsa;
   2337     YYSTYPE *yyvsp = yyvs;
   2338 
   2339   int yyn;
   2340   /* The return value of yyparse.  */
   2341   int yyresult;
   2342   /* Lookahead symbol kind.  */
   2343   yysymbol_kind_t yytoken = YYSYMBOL_YYEMPTY;
   2344   /* The variables used to return semantic value and location from the
   2345      action routines.  */
   2346   YYSTYPE yyval;
   2347 
   2348 
   2349 
   2350 #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
   2351 
   2352   /* The number of symbols on the RHS of the reduced rule.
   2353      Keep to zero when no symbol should be popped.  */
   2354   int yylen = 0;
   2355 
   2356   YYDPRINTF ((stderr, "Starting parse\n"));
   2357 
   2358   yychar = YYEMPTY; /* Cause a token to be read.  */
   2359 
   2360   goto yysetstate;
   2361 
   2362 
   2363 /*------------------------------------------------------------.
   2364 | yynewstate -- push a new state, which is found in yystate.  |
   2365 `------------------------------------------------------------*/
   2366 yynewstate:
   2367   /* In all cases, when you get here, the value and location stacks
   2368      have just been pushed.  So pushing a state here evens the stacks.  */
   2369   yyssp++;
   2370 
   2371 
   2372 /*--------------------------------------------------------------------.
   2373 | yysetstate -- set current state (the top of the stack) to yystate.  |
   2374 `--------------------------------------------------------------------*/
   2375 yysetstate:
   2376   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
   2377   YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
   2378   YY_IGNORE_USELESS_CAST_BEGIN
   2379   *yyssp = YY_CAST (yy_state_t, yystate);
   2380   YY_IGNORE_USELESS_CAST_END
   2381   YY_STACK_PRINT (yyss, yyssp);
   2382 
   2383   if (yyss + yystacksize - 1 <= yyssp)
   2384 #if !defined yyoverflow && !defined YYSTACK_RELOCATE
   2385     YYNOMEM;
   2386 #else
   2387     {
   2388       /* Get the current used size of the three stacks, in elements.  */
   2389       YYPTRDIFF_T yysize = yyssp - yyss + 1;
   2390 
   2391 # if defined yyoverflow
   2392       {
   2393         /* Give user a chance to reallocate the stack.  Use copies of
   2394            these so that the &'s don't force the real ones into
   2395            memory.  */
   2396         yy_state_t *yyss1 = yyss;
   2397         YYSTYPE *yyvs1 = yyvs;
   2398 
   2399         /* Each stack pointer address is followed by the size of the
   2400            data in use in that stack, in bytes.  This used to be a
   2401            conditional around just the two extra args, but that might
   2402            be undefined if yyoverflow is a macro.  */
   2403         yyoverflow (YY_("memory exhausted"),
   2404                     &yyss1, yysize * YYSIZEOF (*yyssp),
   2405                     &yyvs1, yysize * YYSIZEOF (*yyvsp),
   2406                     &yystacksize);
   2407         yyss = yyss1;
   2408         yyvs = yyvs1;
   2409       }
   2410 # else /* defined YYSTACK_RELOCATE */
   2411       /* Extend the stack our own way.  */
   2412       if (YYMAXDEPTH <= yystacksize)
   2413         YYNOMEM;
   2414       yystacksize *= 2;
   2415       if (YYMAXDEPTH < yystacksize)
   2416         yystacksize = YYMAXDEPTH;
   2417 
   2418       {
   2419         yy_state_t *yyss1 = yyss;
   2420         union yyalloc *yyptr =
   2421           YY_CAST (union yyalloc *,
   2422                    YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
   2423         if (! yyptr)
   2424           YYNOMEM;
   2425         YYSTACK_RELOCATE (yyss_alloc, yyss);
   2426         YYSTACK_RELOCATE (yyvs_alloc, yyvs);
   2427 #  undef YYSTACK_RELOCATE
   2428         if (yyss1 != yyssa)
   2429           YYSTACK_FREE (yyss1);
   2430       }
   2431 # endif
   2432 
   2433       yyssp = yyss + yysize - 1;
   2434       yyvsp = yyvs + yysize - 1;
   2435 
   2436       YY_IGNORE_USELESS_CAST_BEGIN
   2437       YYDPRINTF ((stderr, "Stack size increased to %ld\n",
   2438                   YY_CAST (long, yystacksize)));
   2439       YY_IGNORE_USELESS_CAST_END
   2440 
   2441       if (yyss + yystacksize - 1 <= yyssp)
   2442         YYABORT;
   2443     }
   2444 #endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
   2445 
   2446 
   2447   if (yystate == YYFINAL)
   2448     YYACCEPT;
   2449 
   2450   goto yybackup;
   2451 
   2452 
   2453 /*-----------.
   2454 | yybackup.  |
   2455 `-----------*/
   2456 yybackup:
   2457   /* Do appropriate processing given the current state.  Read a
   2458      lookahead token if we need one and don't already have one.  */
   2459 
   2460   /* First try to decide what to do without reference to lookahead token.  */
   2461   yyn = yypact[yystate];
   2462   if (yypact_value_is_default (yyn))
   2463     goto yydefault;
   2464 
   2465   /* Not known => get a lookahead token if don't already have one.  */
   2466 
   2467   /* YYCHAR is either empty, or end-of-input, or a valid lookahead.  */
   2468   if (yychar == YYEMPTY)
   2469     {
   2470       YYDPRINTF ((stderr, "Reading a token\n"));
   2471       yychar = yylex ();
   2472     }
   2473 
   2474   if (yychar <= YYEOF)
   2475     {
   2476       yychar = YYEOF;
   2477       yytoken = YYSYMBOL_YYEOF;
   2478       YYDPRINTF ((stderr, "Now at end of input.\n"));
   2479     }
   2480   else if (yychar == YYerror)
   2481     {
   2482       /* The scanner already issued an error message, process directly
   2483          to error recovery.  But do not keep the error token as
   2484          lookahead, it is too special and may lead us to an endless
   2485          loop in error recovery. */
   2486       yychar = YYUNDEF;
   2487       yytoken = YYSYMBOL_YYerror;
   2488       goto yyerrlab1;
   2489     }
   2490   else
   2491     {
   2492       yytoken = YYTRANSLATE (yychar);
   2493       YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
   2494     }
   2495 
   2496   /* If the proper action on seeing token YYTOKEN is to reduce or to
   2497      detect an error, take that action.  */
   2498   yyn += yytoken;
   2499   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
   2500     goto yydefault;
   2501   yyn = yytable[yyn];
   2502   if (yyn <= 0)
   2503     {
   2504       if (yytable_value_is_error (yyn))
   2505         goto yyerrlab;
   2506       yyn = -yyn;
   2507       goto yyreduce;
   2508     }
   2509 
   2510   /* Count tokens shifted since error; after three, turn off error
   2511      status.  */
   2512   if (yyerrstatus)
   2513     yyerrstatus--;
   2514 
   2515   /* Shift the lookahead token.  */
   2516   YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
   2517   yystate = yyn;
   2518   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
   2519   *++yyvsp = yylval;
   2520   YY_IGNORE_MAYBE_UNINITIALIZED_END
   2521 
   2522   /* Discard the shifted token.  */
   2523   yychar = YYEMPTY;
   2524   goto yynewstate;
   2525 
   2526 
   2527 /*-----------------------------------------------------------.
   2528 | yydefault -- do the default action for the current state.  |
   2529 `-----------------------------------------------------------*/
   2530 yydefault:
   2531   yyn = yydefact[yystate];
   2532   if (yyn == 0)
   2533     goto yyerrlab;
   2534   goto yyreduce;
   2535 
   2536 
   2537 /*-----------------------------.
   2538 | yyreduce -- do a reduction.  |
   2539 `-----------------------------*/
   2540 yyreduce:
   2541   /* yyn is the number of a rule to reduce with.  */
   2542   yylen = yyr2[yyn];
   2543 
   2544   /* If YYLEN is nonzero, implement the default value of the action:
   2545      '$$ = $1'.
   2546 
   2547      Otherwise, the following line sets YYVAL to garbage.
   2548      This behavior is undocumented and Bison
   2549      users should not rely upon it.  Assigning to YYVAL
   2550      unconditionally makes the parser a bit smaller, and it avoids a
   2551      GCC warning that YYVAL may be used uninitialized.  */
   2552   yyval = yyvsp[1-yylen];
   2553 
   2554 
   2555   YY_REDUCE_PRINT (yyn);
   2556   switch (yyn)
   2557     {
   2558   case 8: /* $@1: %empty  */
   2559 #line 181 "ldgram.y"
   2560                 { ldlex_expression(); }
   2561 #line 2562 "ldgram.c"
   2562     break;
   2563 
   2564   case 9: /* defsym_expr: $@1 assignment  */
   2565 #line 183 "ldgram.y"
   2566                 { ldlex_popstate(); }
   2567 #line 2568 "ldgram.c"
   2568     break;
   2569 
   2570   case 10: /* $@2: %empty  */
   2571 #line 188 "ldgram.y"
   2572                 {
   2573 		  ldlex_mri_script ();
   2574 		  PUSH_ERROR (_("MRI style script"));
   2575 		}
   2576 #line 2577 "ldgram.c"
   2577     break;
   2578 
   2579   case 11: /* mri_script_file: $@2 mri_script_lines  */
   2580 #line 193 "ldgram.y"
   2581                 {
   2582 		  ldlex_popstate ();
   2583 		  mri_draw_tree ();
   2584 		  POP_ERROR ();
   2585 		}
   2586 #line 2587 "ldgram.c"
   2587     break;
   2588 
   2589   case 16: /* mri_script_command: NAME  */
   2590 #line 208 "ldgram.y"
   2591                         {
   2592 			einfo(_("%F%P: unrecognised keyword in MRI style script '%s'\n"),(yyvsp[0].name));
   2593 			}
   2594 #line 2595 "ldgram.c"
   2595     break;
   2596 
   2597   case 17: /* mri_script_command: LIST  */
   2598 #line 211 "ldgram.y"
   2599                         {
   2600 			config.map_filename = "-";
   2601 			}
   2602 #line 2603 "ldgram.c"
   2603     break;
   2604 
   2605   case 20: /* mri_script_command: PUBLIC NAME '=' exp  */
   2606 #line 217 "ldgram.y"
   2607                         { mri_public((yyvsp[-2].name), (yyvsp[0].etree)); }
   2608 #line 2609 "ldgram.c"
   2609     break;
   2610 
   2611   case 21: /* mri_script_command: PUBLIC NAME ',' exp  */
   2612 #line 219 "ldgram.y"
   2613                         { mri_public((yyvsp[-2].name), (yyvsp[0].etree)); }
   2614 #line 2615 "ldgram.c"
   2615     break;
   2616 
   2617   case 22: /* mri_script_command: PUBLIC NAME exp  */
   2618 #line 221 "ldgram.y"
   2619                         { mri_public((yyvsp[-1].name), (yyvsp[0].etree)); }
   2620 #line 2621 "ldgram.c"
   2621     break;
   2622 
   2623   case 23: /* mri_script_command: FORMAT NAME  */
   2624 #line 223 "ldgram.y"
   2625                         { mri_format((yyvsp[0].name)); }
   2626 #line 2627 "ldgram.c"
   2627     break;
   2628 
   2629   case 24: /* mri_script_command: SECT NAME ',' exp  */
   2630 #line 225 "ldgram.y"
   2631                         { mri_output_section((yyvsp[-2].name), (yyvsp[0].etree));}
   2632 #line 2633 "ldgram.c"
   2633     break;
   2634 
   2635   case 25: /* mri_script_command: SECT NAME exp  */
   2636 #line 227 "ldgram.y"
   2637                         { mri_output_section((yyvsp[-1].name), (yyvsp[0].etree));}
   2638 #line 2639 "ldgram.c"
   2639     break;
   2640 
   2641   case 26: /* mri_script_command: SECT NAME '=' exp  */
   2642 #line 229 "ldgram.y"
   2643                         { mri_output_section((yyvsp[-2].name), (yyvsp[0].etree));}
   2644 #line 2645 "ldgram.c"
   2645     break;
   2646 
   2647   case 27: /* mri_script_command: ALIGN_K NAME '=' exp  */
   2648 #line 231 "ldgram.y"
   2649                         { mri_align((yyvsp[-2].name),(yyvsp[0].etree)); }
   2650 #line 2651 "ldgram.c"
   2651     break;
   2652 
   2653   case 28: /* mri_script_command: ALIGN_K NAME ',' exp  */
   2654 #line 233 "ldgram.y"
   2655                         { mri_align((yyvsp[-2].name),(yyvsp[0].etree)); }
   2656 #line 2657 "ldgram.c"
   2657     break;
   2658 
   2659   case 29: /* mri_script_command: ALIGNMOD NAME '=' exp  */
   2660 #line 235 "ldgram.y"
   2661                         { mri_alignmod((yyvsp[-2].name),(yyvsp[0].etree)); }
   2662 #line 2663 "ldgram.c"
   2663     break;
   2664 
   2665   case 30: /* mri_script_command: ALIGNMOD NAME ',' exp  */
   2666 #line 237 "ldgram.y"
   2667                         { mri_alignmod((yyvsp[-2].name),(yyvsp[0].etree)); }
   2668 #line 2669 "ldgram.c"
   2669     break;
   2670 
   2671   case 33: /* mri_script_command: NAMEWORD NAME  */
   2672 #line 241 "ldgram.y"
   2673                         { mri_name((yyvsp[0].name)); }
   2674 #line 2675 "ldgram.c"
   2675     break;
   2676 
   2677   case 34: /* mri_script_command: ALIAS NAME ',' NAME  */
   2678 #line 243 "ldgram.y"
   2679                         { mri_alias((yyvsp[-2].name),(yyvsp[0].name),0);}
   2680 #line 2681 "ldgram.c"
   2681     break;
   2682 
   2683   case 35: /* mri_script_command: ALIAS NAME ',' INT  */
   2684 #line 245 "ldgram.y"
   2685                         { mri_alias ((yyvsp[-2].name), 0, (int) (yyvsp[0].bigint).integer); }
   2686 #line 2687 "ldgram.c"
   2687     break;
   2688 
   2689   case 36: /* mri_script_command: BASE exp  */
   2690 #line 247 "ldgram.y"
   2691                         { mri_base((yyvsp[0].etree)); }
   2692 #line 2693 "ldgram.c"
   2693     break;
   2694 
   2695   case 37: /* mri_script_command: TRUNCATE INT  */
   2696 #line 249 "ldgram.y"
   2697                 { mri_truncate ((unsigned int) (yyvsp[0].bigint).integer); }
   2698 #line 2699 "ldgram.c"
   2699     break;
   2700 
   2701   case 40: /* $@3: %empty  */
   2702 #line 253 "ldgram.y"
   2703                 { ldfile_open_command_file ((yyvsp[0].name)); }
   2704 #line 2705 "ldgram.c"
   2705     break;
   2706 
   2707   case 42: /* mri_script_command: START NAME  */
   2708 #line 256 "ldgram.y"
   2709                 { lang_add_entry ((yyvsp[0].name), false); }
   2710 #line 2711 "ldgram.c"
   2711     break;
   2712 
   2713   case 44: /* ordernamelist: ordernamelist ',' NAME  */
   2714 #line 261 "ldgram.y"
   2715                                              { mri_order((yyvsp[0].name)); }
   2716 #line 2717 "ldgram.c"
   2717     break;
   2718 
   2719   case 45: /* ordernamelist: ordernamelist NAME  */
   2720 #line 262 "ldgram.y"
   2721                                           { mri_order((yyvsp[0].name)); }
   2722 #line 2723 "ldgram.c"
   2723     break;
   2724 
   2725   case 47: /* mri_load_name_list: NAME  */
   2726 #line 268 "ldgram.y"
   2727                         { mri_load((yyvsp[0].name)); }
   2728 #line 2729 "ldgram.c"
   2729     break;
   2730 
   2731   case 48: /* mri_load_name_list: mri_load_name_list ',' NAME  */
   2732 #line 269 "ldgram.y"
   2733                                             { mri_load((yyvsp[0].name)); }
   2734 #line 2735 "ldgram.c"
   2735     break;
   2736 
   2737   case 49: /* mri_abs_name_list: NAME  */
   2738 #line 274 "ldgram.y"
   2739                         { mri_only_load((yyvsp[0].name)); }
   2740 #line 2741 "ldgram.c"
   2741     break;
   2742 
   2743   case 50: /* mri_abs_name_list: mri_abs_name_list ',' NAME  */
   2744 #line 276 "ldgram.y"
   2745                         { mri_only_load((yyvsp[0].name)); }
   2746 #line 2747 "ldgram.c"
   2747     break;
   2748 
   2749   case 51: /* casesymlist: %empty  */
   2750 #line 280 "ldgram.y"
   2751                       { (yyval.name) = NULL; }
   2752 #line 2753 "ldgram.c"
   2753     break;
   2754 
   2755   case 54: /* extern_name_list: NAME  */
   2756 #line 287 "ldgram.y"
   2757                         { ldlang_add_undef ((yyvsp[0].name), false); }
   2758 #line 2759 "ldgram.c"
   2759     break;
   2760 
   2761   case 55: /* extern_name_list: extern_name_list NAME  */
   2762 #line 289 "ldgram.y"
   2763                         { ldlang_add_undef ((yyvsp[0].name), false); }
   2764 #line 2765 "ldgram.c"
   2765     break;
   2766 
   2767   case 56: /* extern_name_list: extern_name_list ',' NAME  */
   2768 #line 291 "ldgram.y"
   2769                         { ldlang_add_undef ((yyvsp[0].name), false); }
   2770 #line 2771 "ldgram.c"
   2771     break;
   2772 
   2773   case 57: /* $@4: %empty  */
   2774 #line 295 "ldgram.y"
   2775         { ldlex_script (); }
   2776 #line 2777 "ldgram.c"
   2777     break;
   2778 
   2779   case 58: /* script_file: $@4 ifile_list  */
   2780 #line 297 "ldgram.y"
   2781         { ldlex_popstate (); }
   2782 #line 2783 "ldgram.c"
   2783     break;
   2784 
   2785   case 71: /* ifile_p1: TARGET_K '(' NAME ')'  */
   2786 #line 318 "ldgram.y"
   2787                 { lang_add_target((yyvsp[-1].name)); }
   2788 #line 2789 "ldgram.c"
   2789     break;
   2790 
   2791   case 72: /* ifile_p1: SEARCH_DIR '(' filename ')'  */
   2792 #line 320 "ldgram.y"
   2793                 { ldfile_add_library_path ((yyvsp[-1].name), false); }
   2794 #line 2795 "ldgram.c"
   2795     break;
   2796 
   2797   case 73: /* ifile_p1: OUTPUT '(' filename ')'  */
   2798 #line 322 "ldgram.y"
   2799                 { lang_add_output((yyvsp[-1].name), 1); }
   2800 #line 2801 "ldgram.c"
   2801     break;
   2802 
   2803   case 74: /* ifile_p1: OUTPUT_FORMAT '(' NAME ')'  */
   2804 #line 324 "ldgram.y"
   2805                   { lang_add_output_format ((yyvsp[-1].name), (char *) NULL,
   2806 					    (char *) NULL, 1); }
   2807 #line 2808 "ldgram.c"
   2808     break;
   2809 
   2810   case 75: /* ifile_p1: OUTPUT_FORMAT '(' NAME ',' NAME ',' NAME ')'  */
   2811 #line 327 "ldgram.y"
   2812                   { lang_add_output_format ((yyvsp[-5].name), (yyvsp[-3].name), (yyvsp[-1].name), 1); }
   2813 #line 2814 "ldgram.c"
   2814     break;
   2815 
   2816   case 76: /* ifile_p1: OUTPUT_ARCH '(' NAME ')'  */
   2817 #line 329 "ldgram.y"
   2818                   { ldfile_set_output_arch ((yyvsp[-1].name), bfd_arch_unknown); }
   2819 #line 2820 "ldgram.c"
   2820     break;
   2821 
   2822   case 77: /* ifile_p1: FORCE_COMMON_ALLOCATION  */
   2823 #line 331 "ldgram.y"
   2824                 { command_line.force_common_definition = true ; }
   2825 #line 2826 "ldgram.c"
   2826     break;
   2827 
   2828   case 78: /* ifile_p1: FORCE_GROUP_ALLOCATION  */
   2829 #line 333 "ldgram.y"
   2830                 { command_line.force_group_allocation = true ; }
   2831 #line 2832 "ldgram.c"
   2832     break;
   2833 
   2834   case 79: /* ifile_p1: INHIBIT_COMMON_ALLOCATION  */
   2835 #line 335 "ldgram.y"
   2836                 { link_info.inhibit_common_definition = true ; }
   2837 #line 2838 "ldgram.c"
   2838     break;
   2839 
   2840   case 81: /* $@5: %empty  */
   2841 #line 338 "ldgram.y"
   2842                   { lang_enter_group (); }
   2843 #line 2844 "ldgram.c"
   2844     break;
   2845 
   2846   case 82: /* ifile_p1: GROUP $@5 '(' input_list ')'  */
   2847 #line 340 "ldgram.y"
   2848                   { lang_leave_group (); }
   2849 #line 2850 "ldgram.c"
   2850     break;
   2851 
   2852   case 83: /* ifile_p1: MAP '(' filename ')'  */
   2853 #line 342 "ldgram.y"
   2854                 { lang_add_map((yyvsp[-1].name)); }
   2855 #line 2856 "ldgram.c"
   2856     break;
   2857 
   2858   case 84: /* $@6: %empty  */
   2859 #line 344 "ldgram.y"
   2860                 { ldfile_open_command_file ((yyvsp[0].name)); }
   2861 #line 2862 "ldgram.c"
   2862     break;
   2863 
   2864   case 86: /* ifile_p1: NOCROSSREFS '(' nocrossref_list ')'  */
   2865 #line 347 "ldgram.y"
   2866                 {
   2867 		  lang_add_nocrossref ((yyvsp[-1].nocrossref));
   2868 		}
   2869 #line 2870 "ldgram.c"
   2870     break;
   2871 
   2872   case 87: /* ifile_p1: NOCROSSREFS_TO '(' nocrossref_list ')'  */
   2873 #line 351 "ldgram.y"
   2874                 {
   2875 		  lang_add_nocrossref_to ((yyvsp[-1].nocrossref));
   2876 		}
   2877 #line 2878 "ldgram.c"
   2878     break;
   2879 
   2880   case 88: /* $@7: %empty  */
   2881 #line 354 "ldgram.y"
   2882                            { ldlex_expression (); }
   2883 #line 2884 "ldgram.c"
   2884     break;
   2885 
   2886   case 89: /* ifile_p1: EXTERN '(' $@7 extern_name_list ')'  */
   2887 #line 355 "ldgram.y"
   2888                         { ldlex_popstate (); }
   2889 #line 2890 "ldgram.c"
   2890     break;
   2891 
   2892   case 90: /* ifile_p1: INSERT_K AFTER NAME  */
   2893 #line 357 "ldgram.y"
   2894                 { lang_add_insert ((yyvsp[0].name), 0); }
   2895 #line 2896 "ldgram.c"
   2896     break;
   2897 
   2898   case 91: /* ifile_p1: INSERT_K BEFORE NAME  */
   2899 #line 359 "ldgram.y"
   2900                 { lang_add_insert ((yyvsp[0].name), 1); }
   2901 #line 2902 "ldgram.c"
   2902     break;
   2903 
   2904   case 92: /* ifile_p1: REGION_ALIAS '(' NAME ',' NAME ')'  */
   2905 #line 361 "ldgram.y"
   2906                 { lang_memory_region_alias ((yyvsp[-3].name), (yyvsp[-1].name)); }
   2907 #line 2908 "ldgram.c"
   2908     break;
   2909 
   2910   case 93: /* ifile_p1: LD_FEATURE '(' NAME ')'  */
   2911 #line 363 "ldgram.y"
   2912                 { lang_ld_feature ((yyvsp[-1].name)); }
   2913 #line 2914 "ldgram.c"
   2914     break;
   2915 
   2916   case 94: /* $@8: %empty  */
   2917 #line 367 "ldgram.y"
   2918                 { ldlex_inputlist(); }
   2919 #line 2920 "ldgram.c"
   2920     break;
   2921 
   2922   case 95: /* input_list: $@8 input_list1  */
   2923 #line 369 "ldgram.y"
   2924                 { ldlex_popstate(); }
   2925 #line 2926 "ldgram.c"
   2926     break;
   2927 
   2928   case 96: /* input_list1: NAME  */
   2929 #line 373 "ldgram.y"
   2930                 { lang_add_input_file((yyvsp[0].name),lang_input_file_is_search_file_enum,
   2931 				 (char *)NULL); }
   2932 #line 2933 "ldgram.c"
   2933     break;
   2934 
   2935   case 97: /* input_list1: input_list1 ',' NAME  */
   2936 #line 376 "ldgram.y"
   2937                 { lang_add_input_file((yyvsp[0].name),lang_input_file_is_search_file_enum,
   2938 				 (char *)NULL); }
   2939 #line 2940 "ldgram.c"
   2940     break;
   2941 
   2942   case 98: /* input_list1: input_list1 NAME  */
   2943 #line 379 "ldgram.y"
   2944                 { lang_add_input_file((yyvsp[0].name),lang_input_file_is_search_file_enum,
   2945 				 (char *)NULL); }
   2946 #line 2947 "ldgram.c"
   2947     break;
   2948 
   2949   case 99: /* input_list1: LNAME  */
   2950 #line 382 "ldgram.y"
   2951                 { lang_add_input_file((yyvsp[0].name),lang_input_file_is_l_enum,
   2952 				 (char *)NULL); }
   2953 #line 2954 "ldgram.c"
   2954     break;
   2955 
   2956   case 100: /* input_list1: input_list1 ',' LNAME  */
   2957 #line 385 "ldgram.y"
   2958                 { lang_add_input_file((yyvsp[0].name),lang_input_file_is_l_enum,
   2959 				 (char *)NULL); }
   2960 #line 2961 "ldgram.c"
   2961     break;
   2962 
   2963   case 101: /* input_list1: input_list1 LNAME  */
   2964 #line 388 "ldgram.y"
   2965                 { lang_add_input_file((yyvsp[0].name),lang_input_file_is_l_enum,
   2966 				 (char *)NULL); }
   2967 #line 2968 "ldgram.c"
   2968     break;
   2969 
   2970   case 102: /* @9: %empty  */
   2971 #line 391 "ldgram.y"
   2972                   { (yyval.integer) = input_flags.add_DT_NEEDED_for_regular;
   2973 		    input_flags.add_DT_NEEDED_for_regular = true; }
   2974 #line 2975 "ldgram.c"
   2975     break;
   2976 
   2977   case 103: /* input_list1: AS_NEEDED '(' @9 input_list1 ')'  */
   2978 #line 394 "ldgram.y"
   2979                   { input_flags.add_DT_NEEDED_for_regular = (yyvsp[-2].integer); }
   2980 #line 2981 "ldgram.c"
   2981     break;
   2982 
   2983   case 104: /* @10: %empty  */
   2984 #line 396 "ldgram.y"
   2985                   { (yyval.integer) = input_flags.add_DT_NEEDED_for_regular;
   2986 		    input_flags.add_DT_NEEDED_for_regular = true; }
   2987 #line 2988 "ldgram.c"
   2988     break;
   2989 
   2990   case 105: /* input_list1: input_list1 ',' AS_NEEDED '(' @10 input_list1 ')'  */
   2991 #line 399 "ldgram.y"
   2992                   { input_flags.add_DT_NEEDED_for_regular = (yyvsp[-2].integer); }
   2993 #line 2994 "ldgram.c"
   2994     break;
   2995 
   2996   case 106: /* @11: %empty  */
   2997 #line 401 "ldgram.y"
   2998                   { (yyval.integer) = input_flags.add_DT_NEEDED_for_regular;
   2999 		    input_flags.add_DT_NEEDED_for_regular = true; }
   3000 #line 3001 "ldgram.c"
   3001     break;
   3002 
   3003   case 107: /* input_list1: input_list1 AS_NEEDED '(' @11 input_list1 ')'  */
   3004 #line 404 "ldgram.y"
   3005                   { input_flags.add_DT_NEEDED_for_regular = (yyvsp[-2].integer); }
   3006 #line 3007 "ldgram.c"
   3007     break;
   3008 
   3009   case 112: /* statement_anywhere: ENTRY '(' NAME ')'  */
   3010 #line 419 "ldgram.y"
   3011                 { lang_add_entry ((yyvsp[-1].name), false); }
   3012 #line 3013 "ldgram.c"
   3013     break;
   3014 
   3015   case 114: /* $@12: %empty  */
   3016 #line 421 "ldgram.y"
   3017                           {ldlex_expression ();}
   3018 #line 3019 "ldgram.c"
   3019     break;
   3020 
   3021   case 115: /* statement_anywhere: ASSERT_K $@12 '(' exp ',' NAME ')'  */
   3022 #line 422 "ldgram.y"
   3023                 { ldlex_popstate ();
   3024 		  lang_add_assignment (exp_assert ((yyvsp[-3].etree), (yyvsp[-1].name))); }
   3025 #line 3026 "ldgram.c"
   3026     break;
   3027 
   3028   case 116: /* wildcard_name: NAME  */
   3029 #line 428 "ldgram.y"
   3030                         {
   3031 			  (yyval.cname) = (yyvsp[0].name);
   3032 			}
   3033 #line 3034 "ldgram.c"
   3034     break;
   3035 
   3036   case 117: /* wildcard_maybe_exclude: wildcard_name  */
   3037 #line 435 "ldgram.y"
   3038                         {
   3039 			  (yyval.wildcard).name = (yyvsp[0].cname);
   3040 			  (yyval.wildcard).sorted = none;
   3041 			  (yyval.wildcard).exclude_name_list = NULL;
   3042 			  (yyval.wildcard).section_flag_list = NULL;
   3043 			}
   3044 #line 3045 "ldgram.c"
   3045     break;
   3046 
   3047   case 118: /* wildcard_maybe_exclude: EXCLUDE_FILE '(' exclude_name_list ')' wildcard_name  */
   3048 #line 442 "ldgram.y"
   3049                         {
   3050 			  (yyval.wildcard).name = (yyvsp[0].cname);
   3051 			  (yyval.wildcard).sorted = none;
   3052 			  (yyval.wildcard).exclude_name_list = (yyvsp[-2].name_list);
   3053 			  (yyval.wildcard).section_flag_list = NULL;
   3054 			}
   3055 #line 3056 "ldgram.c"
   3056     break;
   3057 
   3058   case 120: /* filename_spec: SORT_BY_NAME '(' wildcard_maybe_exclude ')'  */
   3059 #line 453 "ldgram.y"
   3060                         {
   3061 			  (yyval.wildcard) = (yyvsp[-1].wildcard);
   3062 			  (yyval.wildcard).sorted = by_name;
   3063 			}
   3064 #line 3065 "ldgram.c"
   3065     break;
   3066 
   3067   case 121: /* filename_spec: SORT_NONE '(' wildcard_maybe_exclude ')'  */
   3068 #line 458 "ldgram.y"
   3069                         {
   3070 			  (yyval.wildcard) = (yyvsp[-1].wildcard);
   3071 			  (yyval.wildcard).sorted = by_none;
   3072 			}
   3073 #line 3074 "ldgram.c"
   3074     break;
   3075 
   3076   case 123: /* section_name_spec: SORT_BY_NAME '(' wildcard_maybe_exclude ')'  */
   3077 #line 467 "ldgram.y"
   3078                         {
   3079 			  (yyval.wildcard) = (yyvsp[-1].wildcard);
   3080 			  (yyval.wildcard).sorted = by_name;
   3081 			}
   3082 #line 3083 "ldgram.c"
   3083     break;
   3084 
   3085   case 124: /* section_name_spec: SORT_BY_ALIGNMENT '(' wildcard_maybe_exclude ')'  */
   3086 #line 472 "ldgram.y"
   3087                         {
   3088 			  (yyval.wildcard) = (yyvsp[-1].wildcard);
   3089 			  (yyval.wildcard).sorted = by_alignment;
   3090 			}
   3091 #line 3092 "ldgram.c"
   3092     break;
   3093 
   3094   case 125: /* section_name_spec: SORT_NONE '(' wildcard_maybe_exclude ')'  */
   3095 #line 477 "ldgram.y"
   3096                         {
   3097 			  (yyval.wildcard) = (yyvsp[-1].wildcard);
   3098 			  (yyval.wildcard).sorted = by_none;
   3099 			}
   3100 #line 3101 "ldgram.c"
   3101     break;
   3102 
   3103   case 126: /* section_name_spec: SORT_BY_NAME '(' SORT_BY_ALIGNMENT '(' wildcard_maybe_exclude ')' ')'  */
   3104 #line 482 "ldgram.y"
   3105                         {
   3106 			  (yyval.wildcard) = (yyvsp[-2].wildcard);
   3107 			  (yyval.wildcard).sorted = by_name_alignment;
   3108 			}
   3109 #line 3110 "ldgram.c"
   3110     break;
   3111 
   3112   case 127: /* section_name_spec: SORT_BY_NAME '(' SORT_BY_NAME '(' wildcard_maybe_exclude ')' ')'  */
   3113 #line 487 "ldgram.y"
   3114                         {
   3115 			  (yyval.wildcard) = (yyvsp[-2].wildcard);
   3116 			  (yyval.wildcard).sorted = by_name;
   3117 			}
   3118 #line 3119 "ldgram.c"
   3119     break;
   3120 
   3121   case 128: /* section_name_spec: SORT_BY_ALIGNMENT '(' SORT_BY_NAME '(' wildcard_maybe_exclude ')' ')'  */
   3122 #line 492 "ldgram.y"
   3123                         {
   3124 			  (yyval.wildcard) = (yyvsp[-2].wildcard);
   3125 			  (yyval.wildcard).sorted = by_alignment_name;
   3126 			}
   3127 #line 3128 "ldgram.c"
   3128     break;
   3129 
   3130   case 129: /* section_name_spec: SORT_BY_ALIGNMENT '(' SORT_BY_ALIGNMENT '(' wildcard_maybe_exclude ')' ')'  */
   3131 #line 497 "ldgram.y"
   3132                         {
   3133 			  (yyval.wildcard) = (yyvsp[-2].wildcard);
   3134 			  (yyval.wildcard).sorted = by_alignment;
   3135 			}
   3136 #line 3137 "ldgram.c"
   3137     break;
   3138 
   3139   case 130: /* section_name_spec: SORT_BY_INIT_PRIORITY '(' wildcard_maybe_exclude ')'  */
   3140 #line 502 "ldgram.y"
   3141                         {
   3142 			  (yyval.wildcard) = (yyvsp[-1].wildcard);
   3143 			  (yyval.wildcard).sorted = by_init_priority;
   3144 			}
   3145 #line 3146 "ldgram.c"
   3146     break;
   3147 
   3148   case 131: /* sect_flag_list: NAME  */
   3149 #line 509 "ldgram.y"
   3150                         {
   3151 			  struct flag_info_list *n;
   3152 			  n = ((struct flag_info_list *) xmalloc (sizeof *n));
   3153 			  if ((yyvsp[0].name)[0] == '!')
   3154 			    {
   3155 			      n->with = without_flags;
   3156 			      n->name = &(yyvsp[0].name)[1];
   3157 			    }
   3158 			  else
   3159 			    {
   3160 			      n->with = with_flags;
   3161 			      n->name = (yyvsp[0].name);
   3162 			    }
   3163 			  n->valid = false;
   3164 			  n->next = NULL;
   3165 			  (yyval.flag_info_list) = n;
   3166 			}
   3167 #line 3168 "ldgram.c"
   3168     break;
   3169 
   3170   case 132: /* sect_flag_list: sect_flag_list '&' NAME  */
   3171 #line 527 "ldgram.y"
   3172                         {
   3173 			  struct flag_info_list *n;
   3174 			  n = ((struct flag_info_list *) xmalloc (sizeof *n));
   3175 			  if ((yyvsp[0].name)[0] == '!')
   3176 			    {
   3177 			      n->with = without_flags;
   3178 			      n->name = &(yyvsp[0].name)[1];
   3179 			    }
   3180 			  else
   3181 			    {
   3182 			      n->with = with_flags;
   3183 			      n->name = (yyvsp[0].name);
   3184 			    }
   3185 			  n->valid = false;
   3186 			  n->next = (yyvsp[-2].flag_info_list);
   3187 			  (yyval.flag_info_list) = n;
   3188 			}
   3189 #line 3190 "ldgram.c"
   3190     break;
   3191 
   3192   case 133: /* sect_flags: INPUT_SECTION_FLAGS '(' sect_flag_list ')'  */
   3193 #line 548 "ldgram.y"
   3194                         {
   3195 			  struct flag_info *n;
   3196 			  n = ((struct flag_info *) xmalloc (sizeof *n));
   3197 			  n->flag_list = (yyvsp[-1].flag_info_list);
   3198 			  n->flags_initialized = false;
   3199 			  n->not_with_flags = 0;
   3200 			  n->only_with_flags = 0;
   3201 			  (yyval.flag_info) = n;
   3202 			}
   3203 #line 3204 "ldgram.c"
   3204     break;
   3205 
   3206   case 134: /* exclude_name_list: exclude_name_list wildcard_name  */
   3207 #line 561 "ldgram.y"
   3208                         {
   3209 			  struct name_list *tmp;
   3210 			  tmp = (struct name_list *) xmalloc (sizeof *tmp);
   3211 			  tmp->name = (yyvsp[0].cname);
   3212 			  tmp->next = (yyvsp[-1].name_list);
   3213 			  (yyval.name_list) = tmp;
   3214 			}
   3215 #line 3216 "ldgram.c"
   3216     break;
   3217 
   3218   case 135: /* exclude_name_list: wildcard_name  */
   3219 #line 570 "ldgram.y"
   3220                         {
   3221 			  struct name_list *tmp;
   3222 			  tmp = (struct name_list *) xmalloc (sizeof *tmp);
   3223 			  tmp->name = (yyvsp[0].cname);
   3224 			  tmp->next = NULL;
   3225 			  (yyval.name_list) = tmp;
   3226 			}
   3227 #line 3228 "ldgram.c"
   3228     break;
   3229 
   3230   case 136: /* section_name_list: section_name_list opt_comma section_name_spec  */
   3231 #line 581 "ldgram.y"
   3232                         {
   3233 			  struct wildcard_list *tmp;
   3234 			  tmp = (struct wildcard_list *) xmalloc (sizeof *tmp);
   3235 			  tmp->next = (yyvsp[-2].wildcard_list);
   3236 			  tmp->spec = (yyvsp[0].wildcard);
   3237 			  (yyval.wildcard_list) = tmp;
   3238 			}
   3239 #line 3240 "ldgram.c"
   3240     break;
   3241 
   3242   case 137: /* section_name_list: section_name_spec  */
   3243 #line 590 "ldgram.y"
   3244                         {
   3245 			  struct wildcard_list *tmp;
   3246 			  tmp = (struct wildcard_list *) xmalloc (sizeof *tmp);
   3247 			  tmp->next = NULL;
   3248 			  tmp->spec = (yyvsp[0].wildcard);
   3249 			  (yyval.wildcard_list) = tmp;
   3250 			}
   3251 #line 3252 "ldgram.c"
   3252     break;
   3253 
   3254   case 138: /* input_section_spec_no_keep: NAME  */
   3255 #line 601 "ldgram.y"
   3256                         {
   3257 			  struct wildcard_spec tmp;
   3258 			  tmp.name = (yyvsp[0].name);
   3259 			  tmp.exclude_name_list = NULL;
   3260 			  tmp.sorted = none;
   3261 			  tmp.section_flag_list = NULL;
   3262 			  lang_add_wild (&tmp, NULL, ldgram_had_keep);
   3263 			}
   3264 #line 3265 "ldgram.c"
   3265     break;
   3266 
   3267   case 139: /* input_section_spec_no_keep: sect_flags NAME  */
   3268 #line 610 "ldgram.y"
   3269                         {
   3270 			  struct wildcard_spec tmp;
   3271 			  tmp.name = (yyvsp[0].name);
   3272 			  tmp.exclude_name_list = NULL;
   3273 			  tmp.sorted = none;
   3274 			  tmp.section_flag_list = (yyvsp[-1].flag_info);
   3275 			  lang_add_wild (&tmp, NULL, ldgram_had_keep);
   3276 			}
   3277 #line 3278 "ldgram.c"
   3278     break;
   3279 
   3280   case 140: /* input_section_spec_no_keep: '[' section_name_list ']'  */
   3281 #line 619 "ldgram.y"
   3282                         {
   3283 			  lang_add_wild (NULL, (yyvsp[-1].wildcard_list), ldgram_had_keep);
   3284 			}
   3285 #line 3286 "ldgram.c"
   3286     break;
   3287 
   3288   case 141: /* input_section_spec_no_keep: sect_flags '[' section_name_list ']'  */
   3289 #line 623 "ldgram.y"
   3290                         {
   3291 			  struct wildcard_spec tmp;
   3292 			  tmp.name = NULL;
   3293 			  tmp.exclude_name_list = NULL;
   3294 			  tmp.sorted = none;
   3295 			  tmp.section_flag_list = (yyvsp[-3].flag_info);
   3296 			  lang_add_wild (&tmp, (yyvsp[-1].wildcard_list), ldgram_had_keep);
   3297 			}
   3298 #line 3299 "ldgram.c"
   3299     break;
   3300 
   3301   case 142: /* input_section_spec_no_keep: filename_spec '(' section_name_list ')'  */
   3302 #line 632 "ldgram.y"
   3303                         {
   3304 			  lang_add_wild (&(yyvsp[-3].wildcard), (yyvsp[-1].wildcard_list), ldgram_had_keep);
   3305 			}
   3306 #line 3307 "ldgram.c"
   3307     break;
   3308 
   3309   case 143: /* input_section_spec_no_keep: sect_flags filename_spec '(' section_name_list ')'  */
   3310 #line 636 "ldgram.y"
   3311                         {
   3312 			  (yyvsp[-3].wildcard).section_flag_list = (yyvsp[-4].flag_info);
   3313 			  lang_add_wild (&(yyvsp[-3].wildcard), (yyvsp[-1].wildcard_list), ldgram_had_keep);
   3314 			}
   3315 #line 3316 "ldgram.c"
   3316     break;
   3317 
   3318   case 145: /* $@13: %empty  */
   3319 #line 645 "ldgram.y"
   3320                         { ldgram_had_keep = true; }
   3321 #line 3322 "ldgram.c"
   3322     break;
   3323 
   3324   case 146: /* input_section_spec: KEEP '(' $@13 input_section_spec_no_keep ')'  */
   3325 #line 647 "ldgram.y"
   3326                         { ldgram_had_keep = false; }
   3327 #line 3328 "ldgram.c"
   3328     break;
   3329 
   3330   case 149: /* statement: CREATE_OBJECT_SYMBOLS  */
   3331 #line 654 "ldgram.y"
   3332                 {
   3333 		  lang_add_attribute (lang_object_symbols_statement_enum);
   3334 		}
   3335 #line 3336 "ldgram.c"
   3336     break;
   3337 
   3338   case 150: /* statement: CONSTRUCTORS  */
   3339 #line 658 "ldgram.y"
   3340                 {
   3341 		  lang_add_attribute (lang_constructors_statement_enum);
   3342 		}
   3343 #line 3344 "ldgram.c"
   3344     break;
   3345 
   3346   case 151: /* statement: SORT_BY_NAME '(' CONSTRUCTORS ')'  */
   3347 #line 662 "ldgram.y"
   3348                 {
   3349 		  constructors_sorted = true;
   3350 		  lang_add_attribute (lang_constructors_statement_enum);
   3351 		}
   3352 #line 3353 "ldgram.c"
   3353     break;
   3354 
   3355   case 153: /* statement: length '(' mustbe_exp ')'  */
   3356 #line 668 "ldgram.y"
   3357                 {
   3358 		  lang_add_data ((int) (yyvsp[-3].integer), (yyvsp[-1].etree));
   3359 		}
   3360 #line 3361 "ldgram.c"
   3361     break;
   3362 
   3363   case 154: /* statement: FILL '(' fill_exp ')'  */
   3364 #line 673 "ldgram.y"
   3365                 {
   3366 		  lang_add_fill ((yyvsp[-1].fill));
   3367 		}
   3368 #line 3369 "ldgram.c"
   3369     break;
   3370 
   3371   case 155: /* $@14: %empty  */
   3372 #line 677 "ldgram.y"
   3373                 { ldlex_expression (); }
   3374 #line 3375 "ldgram.c"
   3375     break;
   3376 
   3377   case 156: /* statement: ASSERT_K $@14 '(' exp ',' NAME ')' separator  */
   3378 #line 679 "ldgram.y"
   3379                 {
   3380 		  ldlex_popstate ();
   3381 		  lang_add_assignment (exp_assert ((yyvsp[-4].etree), (yyvsp[-2].name)));
   3382 		}
   3383 #line 3384 "ldgram.c"
   3384     break;
   3385 
   3386   case 157: /* $@15: %empty  */
   3387 #line 684 "ldgram.y"
   3388                 {
   3389 		  ldfile_open_command_file ((yyvsp[0].name));
   3390 		}
   3391 #line 3392 "ldgram.c"
   3392     break;
   3393 
   3394   case 163: /* length: QUAD  */
   3395 #line 702 "ldgram.y"
   3396                         { (yyval.integer) = (yyvsp[0].token); }
   3397 #line 3398 "ldgram.c"
   3398     break;
   3399 
   3400   case 164: /* length: SQUAD  */
   3401 #line 704 "ldgram.y"
   3402                         { (yyval.integer) = (yyvsp[0].token); }
   3403 #line 3404 "ldgram.c"
   3404     break;
   3405 
   3406   case 165: /* length: LONG  */
   3407 #line 706 "ldgram.y"
   3408                         { (yyval.integer) = (yyvsp[0].token); }
   3409 #line 3410 "ldgram.c"
   3410     break;
   3411 
   3412   case 166: /* length: SHORT  */
   3413 #line 708 "ldgram.y"
   3414                         { (yyval.integer) = (yyvsp[0].token); }
   3415 #line 3416 "ldgram.c"
   3416     break;
   3417 
   3418   case 167: /* length: BYTE  */
   3419 #line 710 "ldgram.y"
   3420                         { (yyval.integer) = (yyvsp[0].token); }
   3421 #line 3422 "ldgram.c"
   3422     break;
   3423 
   3424   case 168: /* fill_exp: mustbe_exp  */
   3425 #line 715 "ldgram.y"
   3426                 {
   3427 		  (yyval.fill) = exp_get_fill ((yyvsp[0].etree), 0, "fill value");
   3428 		}
   3429 #line 3430 "ldgram.c"
   3430     break;
   3431 
   3432   case 169: /* fill_opt: '=' fill_exp  */
   3433 #line 722 "ldgram.y"
   3434                 { (yyval.fill) = (yyvsp[0].fill); }
   3435 #line 3436 "ldgram.c"
   3436     break;
   3437 
   3438   case 170: /* fill_opt: %empty  */
   3439 #line 723 "ldgram.y"
   3440                 { (yyval.fill) = (fill_type *) 0; }
   3441 #line 3442 "ldgram.c"
   3442     break;
   3443 
   3444   case 171: /* assign_op: PLUSEQ  */
   3445 #line 728 "ldgram.y"
   3446                         { (yyval.token) = '+'; }
   3447 #line 3448 "ldgram.c"
   3448     break;
   3449 
   3450   case 172: /* assign_op: MINUSEQ  */
   3451 #line 730 "ldgram.y"
   3452                         { (yyval.token) = '-'; }
   3453 #line 3454 "ldgram.c"
   3454     break;
   3455 
   3456   case 173: /* assign_op: MULTEQ  */
   3457 #line 732 "ldgram.y"
   3458                         { (yyval.token) = '*'; }
   3459 #line 3460 "ldgram.c"
   3460     break;
   3461 
   3462   case 174: /* assign_op: DIVEQ  */
   3463 #line 734 "ldgram.y"
   3464                         { (yyval.token) = '/'; }
   3465 #line 3466 "ldgram.c"
   3466     break;
   3467 
   3468   case 175: /* assign_op: LSHIFTEQ  */
   3469 #line 736 "ldgram.y"
   3470                         { (yyval.token) = LSHIFT; }
   3471 #line 3472 "ldgram.c"
   3472     break;
   3473 
   3474   case 176: /* assign_op: RSHIFTEQ  */
   3475 #line 738 "ldgram.y"
   3476                         { (yyval.token) = RSHIFT; }
   3477 #line 3478 "ldgram.c"
   3478     break;
   3479 
   3480   case 177: /* assign_op: ANDEQ  */
   3481 #line 740 "ldgram.y"
   3482                         { (yyval.token) = '&'; }
   3483 #line 3484 "ldgram.c"
   3484     break;
   3485 
   3486   case 178: /* assign_op: OREQ  */
   3487 #line 742 "ldgram.y"
   3488                         { (yyval.token) = '|'; }
   3489 #line 3490 "ldgram.c"
   3490     break;
   3491 
   3492   case 181: /* assignment: NAME '=' mustbe_exp  */
   3493 #line 752 "ldgram.y"
   3494                 {
   3495 		  lang_add_assignment (exp_assign ((yyvsp[-2].name), (yyvsp[0].etree), false));
   3496 		}
   3497 #line 3498 "ldgram.c"
   3498     break;
   3499 
   3500   case 182: /* assignment: NAME assign_op mustbe_exp  */
   3501 #line 756 "ldgram.y"
   3502                 {
   3503 		  lang_add_assignment (exp_assign ((yyvsp[-2].name),
   3504 						   exp_binop ((yyvsp[-1].token),
   3505 							      exp_nameop (NAME,
   3506 									  (yyvsp[-2].name)),
   3507 							      (yyvsp[0].etree)), false));
   3508 		}
   3509 #line 3510 "ldgram.c"
   3510     break;
   3511 
   3512   case 183: /* assignment: HIDDEN '(' NAME '=' mustbe_exp ')'  */
   3513 #line 764 "ldgram.y"
   3514                 {
   3515 		  lang_add_assignment (exp_assign ((yyvsp[-3].name), (yyvsp[-1].etree), true));
   3516 		}
   3517 #line 3518 "ldgram.c"
   3518     break;
   3519 
   3520   case 184: /* assignment: PROVIDE '(' NAME '=' mustbe_exp ')'  */
   3521 #line 768 "ldgram.y"
   3522                 {
   3523 		  lang_add_assignment (exp_provide ((yyvsp[-3].name), (yyvsp[-1].etree), false));
   3524 		}
   3525 #line 3526 "ldgram.c"
   3526     break;
   3527 
   3528   case 185: /* assignment: PROVIDE_HIDDEN '(' NAME '=' mustbe_exp ')'  */
   3529 #line 772 "ldgram.y"
   3530                 {
   3531 		  lang_add_assignment (exp_provide ((yyvsp[-3].name), (yyvsp[-1].etree), true));
   3532 		}
   3533 #line 3534 "ldgram.c"
   3534     break;
   3535 
   3536   case 193: /* $@16: %empty  */
   3537 #line 795 "ldgram.y"
   3538                 { region = lang_memory_region_lookup ((yyvsp[0].name), true); }
   3539 #line 3540 "ldgram.c"
   3540     break;
   3541 
   3542   case 194: /* memory_spec: NAME $@16 attributes_opt ':' origin_spec opt_comma length_spec  */
   3543 #line 798 "ldgram.y"
   3544                 {}
   3545 #line 3546 "ldgram.c"
   3546     break;
   3547 
   3548   case 195: /* $@17: %empty  */
   3549 #line 800 "ldgram.y"
   3550                 { ldfile_open_command_file ((yyvsp[0].name)); }
   3551 #line 3552 "ldgram.c"
   3552     break;
   3553 
   3554   case 197: /* origin_spec: ORIGIN '=' mustbe_exp  */
   3555 #line 806 "ldgram.y"
   3556                 {
   3557 		  region->origin_exp = (yyvsp[0].etree);
   3558 		}
   3559 #line 3560 "ldgram.c"
   3560     break;
   3561 
   3562   case 198: /* length_spec: LENGTH '=' mustbe_exp  */
   3563 #line 813 "ldgram.y"
   3564                 {
   3565 		  if (yychar == NAME)
   3566 		    {
   3567 		      yyclearin;
   3568 		      ldlex_backup ();
   3569 		    }
   3570 		  region->length_exp = (yyvsp[0].etree);
   3571 		}
   3572 #line 3573 "ldgram.c"
   3573     break;
   3574 
   3575   case 199: /* attributes_opt: %empty  */
   3576 #line 825 "ldgram.y"
   3577                   { /* dummy action to avoid bison 1.25 error message */ }
   3578 #line 3579 "ldgram.c"
   3579     break;
   3580 
   3581   case 203: /* attributes_string: NAME  */
   3582 #line 836 "ldgram.y"
   3583                   { lang_set_flags (region, (yyvsp[0].name), 0); }
   3584 #line 3585 "ldgram.c"
   3585     break;
   3586 
   3587   case 204: /* attributes_string: '!' NAME  */
   3588 #line 838 "ldgram.y"
   3589                   { lang_set_flags (region, (yyvsp[0].name), 1); }
   3590 #line 3591 "ldgram.c"
   3591     break;
   3592 
   3593   case 205: /* startup: STARTUP '(' filename ')'  */
   3594 #line 843 "ldgram.y"
   3595                 { lang_startup((yyvsp[-1].name)); }
   3596 #line 3597 "ldgram.c"
   3597     break;
   3598 
   3599   case 207: /* high_level_library: HLL '(' ')'  */
   3600 #line 849 "ldgram.y"
   3601                         { ldemul_hll((char *)NULL); }
   3602 #line 3603 "ldgram.c"
   3603     break;
   3604 
   3605   case 208: /* high_level_library_NAME_list: high_level_library_NAME_list opt_comma filename  */
   3606 #line 854 "ldgram.y"
   3607                         { ldemul_hll((yyvsp[0].name)); }
   3608 #line 3609 "ldgram.c"
   3609     break;
   3610 
   3611   case 209: /* high_level_library_NAME_list: filename  */
   3612 #line 856 "ldgram.y"
   3613                         { ldemul_hll((yyvsp[0].name)); }
   3614 #line 3615 "ldgram.c"
   3615     break;
   3616 
   3617   case 211: /* low_level_library_NAME_list: low_level_library_NAME_list opt_comma filename  */
   3618 #line 865 "ldgram.y"
   3619                         { ldemul_syslib((yyvsp[0].name)); }
   3620 #line 3621 "ldgram.c"
   3621     break;
   3622 
   3623   case 213: /* floating_point_support: FLOAT  */
   3624 #line 871 "ldgram.y"
   3625                         { lang_float(true); }
   3626 #line 3627 "ldgram.c"
   3627     break;
   3628 
   3629   case 214: /* floating_point_support: NOFLOAT  */
   3630 #line 873 "ldgram.y"
   3631                         { lang_float(false); }
   3632 #line 3633 "ldgram.c"
   3633     break;
   3634 
   3635   case 215: /* nocrossref_list: %empty  */
   3636 #line 878 "ldgram.y"
   3637                 {
   3638 		  (yyval.nocrossref) = NULL;
   3639 		}
   3640 #line 3641 "ldgram.c"
   3641     break;
   3642 
   3643   case 216: /* nocrossref_list: NAME nocrossref_list  */
   3644 #line 882 "ldgram.y"
   3645                 {
   3646 		  struct lang_nocrossref *n;
   3647 
   3648 		  n = (struct lang_nocrossref *) xmalloc (sizeof *n);
   3649 		  n->name = (yyvsp[-1].name);
   3650 		  n->next = (yyvsp[0].nocrossref);
   3651 		  (yyval.nocrossref) = n;
   3652 		}
   3653 #line 3654 "ldgram.c"
   3654     break;
   3655 
   3656   case 217: /* nocrossref_list: NAME ',' nocrossref_list  */
   3657 #line 891 "ldgram.y"
   3658                 {
   3659 		  struct lang_nocrossref *n;
   3660 
   3661 		  n = (struct lang_nocrossref *) xmalloc (sizeof *n);
   3662 		  n->name = (yyvsp[-2].name);
   3663 		  n->next = (yyvsp[0].nocrossref);
   3664 		  (yyval.nocrossref) = n;
   3665 		}
   3666 #line 3667 "ldgram.c"
   3667     break;
   3668 
   3669   case 218: /* $@18: %empty  */
   3670 #line 901 "ldgram.y"
   3671                         { ldlex_script (); }
   3672 #line 3673 "ldgram.c"
   3673     break;
   3674 
   3675   case 219: /* paren_script_name: $@18 '(' NAME ')'  */
   3676 #line 903 "ldgram.y"
   3677                         { ldlex_popstate (); (yyval.name) = (yyvsp[-1].name); }
   3678 #line 3679 "ldgram.c"
   3679     break;
   3680 
   3681   case 220: /* $@19: %empty  */
   3682 #line 905 "ldgram.y"
   3683                         { ldlex_expression (); }
   3684 #line 3685 "ldgram.c"
   3685     break;
   3686 
   3687   case 221: /* mustbe_exp: $@19 exp  */
   3688 #line 907 "ldgram.y"
   3689                         { ldlex_popstate (); (yyval.etree) = (yyvsp[0].etree); }
   3690 #line 3691 "ldgram.c"
   3691     break;
   3692 
   3693   case 222: /* exp: '-' exp  */
   3694 #line 912 "ldgram.y"
   3695                         { (yyval.etree) = exp_unop ('-', (yyvsp[0].etree)); }
   3696 #line 3697 "ldgram.c"
   3697     break;
   3698 
   3699   case 223: /* exp: '(' exp ')'  */
   3700 #line 914 "ldgram.y"
   3701                         { (yyval.etree) = (yyvsp[-1].etree); }
   3702 #line 3703 "ldgram.c"
   3703     break;
   3704 
   3705   case 224: /* exp: NEXT '(' exp ')'  */
   3706 #line 916 "ldgram.y"
   3707                         { (yyval.etree) = exp_unop ((int) (yyvsp[-3].integer),(yyvsp[-1].etree)); }
   3708 #line 3709 "ldgram.c"
   3709     break;
   3710 
   3711   case 225: /* exp: '!' exp  */
   3712 #line 918 "ldgram.y"
   3713                         { (yyval.etree) = exp_unop ('!', (yyvsp[0].etree)); }
   3714 #line 3715 "ldgram.c"
   3715     break;
   3716 
   3717   case 226: /* exp: '+' exp  */
   3718 #line 920 "ldgram.y"
   3719                         { (yyval.etree) = (yyvsp[0].etree); }
   3720 #line 3721 "ldgram.c"
   3721     break;
   3722 
   3723   case 227: /* exp: '~' exp  */
   3724 #line 922 "ldgram.y"
   3725                         { (yyval.etree) = exp_unop ('~', (yyvsp[0].etree));}
   3726 #line 3727 "ldgram.c"
   3727     break;
   3728 
   3729   case 228: /* exp: exp '*' exp  */
   3730 #line 925 "ldgram.y"
   3731                         { (yyval.etree) = exp_binop ('*', (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3732 #line 3733 "ldgram.c"
   3733     break;
   3734 
   3735   case 229: /* exp: exp '/' exp  */
   3736 #line 927 "ldgram.y"
   3737                         { (yyval.etree) = exp_binop ('/', (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3738 #line 3739 "ldgram.c"
   3739     break;
   3740 
   3741   case 230: /* exp: exp '%' exp  */
   3742 #line 929 "ldgram.y"
   3743                         { (yyval.etree) = exp_binop ('%', (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3744 #line 3745 "ldgram.c"
   3745     break;
   3746 
   3747   case 231: /* exp: exp '+' exp  */
   3748 #line 931 "ldgram.y"
   3749                         { (yyval.etree) = exp_binop ('+', (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3750 #line 3751 "ldgram.c"
   3751     break;
   3752 
   3753   case 232: /* exp: exp '-' exp  */
   3754 #line 933 "ldgram.y"
   3755                         { (yyval.etree) = exp_binop ('-' , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3756 #line 3757 "ldgram.c"
   3757     break;
   3758 
   3759   case 233: /* exp: exp LSHIFT exp  */
   3760 #line 935 "ldgram.y"
   3761                         { (yyval.etree) = exp_binop (LSHIFT , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3762 #line 3763 "ldgram.c"
   3763     break;
   3764 
   3765   case 234: /* exp: exp RSHIFT exp  */
   3766 #line 937 "ldgram.y"
   3767                         { (yyval.etree) = exp_binop (RSHIFT , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3768 #line 3769 "ldgram.c"
   3769     break;
   3770 
   3771   case 235: /* exp: exp EQ exp  */
   3772 #line 939 "ldgram.y"
   3773                         { (yyval.etree) = exp_binop (EQ , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3774 #line 3775 "ldgram.c"
   3775     break;
   3776 
   3777   case 236: /* exp: exp NE exp  */
   3778 #line 941 "ldgram.y"
   3779                         { (yyval.etree) = exp_binop (NE , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3780 #line 3781 "ldgram.c"
   3781     break;
   3782 
   3783   case 237: /* exp: exp LE exp  */
   3784 #line 943 "ldgram.y"
   3785                         { (yyval.etree) = exp_binop (LE , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3786 #line 3787 "ldgram.c"
   3787     break;
   3788 
   3789   case 238: /* exp: exp GE exp  */
   3790 #line 945 "ldgram.y"
   3791                         { (yyval.etree) = exp_binop (GE , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3792 #line 3793 "ldgram.c"
   3793     break;
   3794 
   3795   case 239: /* exp: exp '<' exp  */
   3796 #line 947 "ldgram.y"
   3797                         { (yyval.etree) = exp_binop ('<' , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3798 #line 3799 "ldgram.c"
   3799     break;
   3800 
   3801   case 240: /* exp: exp '>' exp  */
   3802 #line 949 "ldgram.y"
   3803                         { (yyval.etree) = exp_binop ('>' , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3804 #line 3805 "ldgram.c"
   3805     break;
   3806 
   3807   case 241: /* exp: exp '&' exp  */
   3808 #line 951 "ldgram.y"
   3809                         { (yyval.etree) = exp_binop ('&' , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3810 #line 3811 "ldgram.c"
   3811     break;
   3812 
   3813   case 242: /* exp: exp '^' exp  */
   3814 #line 953 "ldgram.y"
   3815                         { (yyval.etree) = exp_binop ('^' , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3816 #line 3817 "ldgram.c"
   3817     break;
   3818 
   3819   case 243: /* exp: exp '|' exp  */
   3820 #line 955 "ldgram.y"
   3821                         { (yyval.etree) = exp_binop ('|' , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3822 #line 3823 "ldgram.c"
   3823     break;
   3824 
   3825   case 244: /* exp: exp '?' exp ':' exp  */
   3826 #line 957 "ldgram.y"
   3827                         { (yyval.etree) = exp_trinop ('?' , (yyvsp[-4].etree), (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3828 #line 3829 "ldgram.c"
   3829     break;
   3830 
   3831   case 245: /* exp: exp ANDAND exp  */
   3832 #line 959 "ldgram.y"
   3833                         { (yyval.etree) = exp_binop (ANDAND , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3834 #line 3835 "ldgram.c"
   3835     break;
   3836 
   3837   case 246: /* exp: exp OROR exp  */
   3838 #line 961 "ldgram.y"
   3839                         { (yyval.etree) = exp_binop (OROR , (yyvsp[-2].etree), (yyvsp[0].etree)); }
   3840 #line 3841 "ldgram.c"
   3841     break;
   3842 
   3843   case 247: /* exp: DEFINED '(' NAME ')'  */
   3844 #line 963 "ldgram.y"
   3845                         { (yyval.etree) = exp_nameop (DEFINED, (yyvsp[-1].name)); }
   3846 #line 3847 "ldgram.c"
   3847     break;
   3848 
   3849   case 248: /* exp: INT  */
   3850 #line 965 "ldgram.y"
   3851                         { (yyval.etree) = exp_bigintop ((yyvsp[0].bigint).integer, (yyvsp[0].bigint).str); }
   3852 #line 3853 "ldgram.c"
   3853     break;
   3854 
   3855   case 249: /* exp: SIZEOF_HEADERS  */
   3856 #line 967 "ldgram.y"
   3857                         { (yyval.etree) = exp_nameop (SIZEOF_HEADERS,0); }
   3858 #line 3859 "ldgram.c"
   3859     break;
   3860 
   3861   case 250: /* exp: ALIGNOF paren_script_name  */
   3862 #line 970 "ldgram.y"
   3863                         { (yyval.etree) = exp_nameop (ALIGNOF, (yyvsp[0].name)); }
   3864 #line 3865 "ldgram.c"
   3865     break;
   3866 
   3867   case 251: /* exp: SIZEOF paren_script_name  */
   3868 #line 972 "ldgram.y"
   3869                         { (yyval.etree) = exp_nameop (SIZEOF, (yyvsp[0].name)); }
   3870 #line 3871 "ldgram.c"
   3871     break;
   3872 
   3873   case 252: /* exp: ADDR paren_script_name  */
   3874 #line 974 "ldgram.y"
   3875                         { (yyval.etree) = exp_nameop (ADDR, (yyvsp[0].name)); }
   3876 #line 3877 "ldgram.c"
   3877     break;
   3878 
   3879   case 253: /* exp: LOADADDR paren_script_name  */
   3880 #line 976 "ldgram.y"
   3881                         { (yyval.etree) = exp_nameop (LOADADDR, (yyvsp[0].name)); }
   3882 #line 3883 "ldgram.c"
   3883     break;
   3884 
   3885   case 254: /* exp: CONSTANT '(' NAME ')'  */
   3886 #line 978 "ldgram.y"
   3887                         { (yyval.etree) = exp_nameop (CONSTANT,(yyvsp[-1].name)); }
   3888 #line 3889 "ldgram.c"
   3889     break;
   3890 
   3891   case 255: /* exp: ABSOLUTE '(' exp ')'  */
   3892 #line 980 "ldgram.y"
   3893                         { (yyval.etree) = exp_unop (ABSOLUTE, (yyvsp[-1].etree)); }
   3894 #line 3895 "ldgram.c"
   3895     break;
   3896 
   3897   case 256: /* exp: ALIGN_K '(' exp ')'  */
   3898 #line 982 "ldgram.y"
   3899                         { (yyval.etree) = exp_unop (ALIGN_K,(yyvsp[-1].etree)); }
   3900 #line 3901 "ldgram.c"
   3901     break;
   3902 
   3903   case 257: /* exp: ALIGN_K '(' exp ',' exp ')'  */
   3904 #line 984 "ldgram.y"
   3905                         { (yyval.etree) = exp_binop (ALIGN_K,(yyvsp[-3].etree),(yyvsp[-1].etree)); }
   3906 #line 3907 "ldgram.c"
   3907     break;
   3908 
   3909   case 258: /* exp: DATA_SEGMENT_ALIGN '(' exp ',' exp ')'  */
   3910 #line 986 "ldgram.y"
   3911                         { (yyval.etree) = exp_binop (DATA_SEGMENT_ALIGN, (yyvsp[-3].etree), (yyvsp[-1].etree)); }
   3912 #line 3913 "ldgram.c"
   3913     break;
   3914 
   3915   case 259: /* exp: DATA_SEGMENT_RELRO_END '(' exp ',' exp ')'  */
   3916 #line 988 "ldgram.y"
   3917                         { (yyval.etree) = exp_binop (DATA_SEGMENT_RELRO_END, (yyvsp[-1].etree), (yyvsp[-3].etree)); }
   3918 #line 3919 "ldgram.c"
   3919     break;
   3920 
   3921   case 260: /* exp: DATA_SEGMENT_END '(' exp ')'  */
   3922 #line 990 "ldgram.y"
   3923                         { (yyval.etree) = exp_unop (DATA_SEGMENT_END, (yyvsp[-1].etree)); }
   3924 #line 3925 "ldgram.c"
   3925     break;
   3926 
   3927   case 261: /* $@20: %empty  */
   3928 #line 991 "ldgram.y"
   3929                               { ldlex_script (); }
   3930 #line 3931 "ldgram.c"
   3931     break;
   3932 
   3933   case 262: /* $@21: %empty  */
   3934 #line 992 "ldgram.y"
   3935                         { ldlex_popstate (); }
   3936 #line 3937 "ldgram.c"
   3937     break;
   3938 
   3939   case 263: /* exp: SEGMENT_START $@20 '(' NAME $@21 ',' exp ')'  */
   3940 #line 993 "ldgram.y"
   3941                         { /* The operands to the expression node are
   3942 			     placed in the opposite order from the way
   3943 			     in which they appear in the script as
   3944 			     that allows us to reuse more code in
   3945 			     fold_binary.  */
   3946 			  (yyval.etree) = exp_binop (SEGMENT_START,
   3947 					  (yyvsp[-1].etree),
   3948 					  exp_nameop (NAME, (yyvsp[-4].name))); }
   3949 #line 3950 "ldgram.c"
   3950     break;
   3951 
   3952   case 264: /* exp: BLOCK '(' exp ')'  */
   3953 #line 1002 "ldgram.y"
   3954                         { (yyval.etree) = exp_unop (ALIGN_K,(yyvsp[-1].etree)); }
   3955 #line 3956 "ldgram.c"
   3956     break;
   3957 
   3958   case 265: /* exp: NAME  */
   3959 #line 1004 "ldgram.y"
   3960                         { (yyval.etree) = exp_nameop (NAME,(yyvsp[0].name)); }
   3961 #line 3962 "ldgram.c"
   3962     break;
   3963 
   3964   case 266: /* exp: MAX_K '(' exp ',' exp ')'  */
   3965 #line 1006 "ldgram.y"
   3966                         { (yyval.etree) = exp_binop (MAX_K, (yyvsp[-3].etree), (yyvsp[-1].etree) ); }
   3967 #line 3968 "ldgram.c"
   3968     break;
   3969 
   3970   case 267: /* exp: MIN_K '(' exp ',' exp ')'  */
   3971 #line 1008 "ldgram.y"
   3972                         { (yyval.etree) = exp_binop (MIN_K, (yyvsp[-3].etree), (yyvsp[-1].etree) ); }
   3973 #line 3974 "ldgram.c"
   3974     break;
   3975 
   3976   case 268: /* exp: ASSERT_K '(' exp ',' NAME ')'  */
   3977 #line 1010 "ldgram.y"
   3978                         { (yyval.etree) = exp_assert ((yyvsp[-3].etree), (yyvsp[-1].name)); }
   3979 #line 3980 "ldgram.c"
   3980     break;
   3981 
   3982   case 269: /* exp: ORIGIN paren_script_name  */
   3983 #line 1012 "ldgram.y"
   3984                         { (yyval.etree) = exp_nameop (ORIGIN, (yyvsp[0].name)); }
   3985 #line 3986 "ldgram.c"
   3986     break;
   3987 
   3988   case 270: /* exp: LENGTH paren_script_name  */
   3989 #line 1014 "ldgram.y"
   3990                         { (yyval.etree) = exp_nameop (LENGTH, (yyvsp[0].name)); }
   3991 #line 3992 "ldgram.c"
   3992     break;
   3993 
   3994   case 271: /* exp: LOG2CEIL '(' exp ')'  */
   3995 #line 1016 "ldgram.y"
   3996                         { (yyval.etree) = exp_unop (LOG2CEIL, (yyvsp[-1].etree)); }
   3997 #line 3998 "ldgram.c"
   3998     break;
   3999 
   4000   case 272: /* memspec_at_opt: AT '>' NAME  */
   4001 #line 1021 "ldgram.y"
   4002                             { (yyval.name) = (yyvsp[0].name); }
   4003 #line 4004 "ldgram.c"
   4004     break;
   4005 
   4006   case 273: /* memspec_at_opt: %empty  */
   4007 #line 1022 "ldgram.y"
   4008                 { (yyval.name) = 0; }
   4009 #line 4010 "ldgram.c"
   4010     break;
   4011 
   4012   case 274: /* opt_at: AT '(' exp ')'  */
   4013 #line 1026 "ldgram.y"
   4014                                { (yyval.etree) = (yyvsp[-1].etree); }
   4015 #line 4016 "ldgram.c"
   4016     break;
   4017 
   4018   case 275: /* opt_at: %empty  */
   4019 #line 1027 "ldgram.y"
   4020                 { (yyval.etree) = 0; }
   4021 #line 4022 "ldgram.c"
   4022     break;
   4023 
   4024   case 276: /* opt_align: ALIGN_K '(' exp ')'  */
   4025 #line 1031 "ldgram.y"
   4026                                     { (yyval.etree) = (yyvsp[-1].etree); }
   4027 #line 4028 "ldgram.c"
   4028     break;
   4029 
   4030   case 277: /* opt_align: %empty  */
   4031 #line 1032 "ldgram.y"
   4032                 { (yyval.etree) = 0; }
   4033 #line 4034 "ldgram.c"
   4034     break;
   4035 
   4036   case 278: /* opt_align_with_input: ALIGN_WITH_INPUT  */
   4037 #line 1036 "ldgram.y"
   4038                                  { (yyval.token) = ALIGN_WITH_INPUT; }
   4039 #line 4040 "ldgram.c"
   4040     break;
   4041 
   4042   case 279: /* opt_align_with_input: %empty  */
   4043 #line 1037 "ldgram.y"
   4044                 { (yyval.token) = 0; }
   4045 #line 4046 "ldgram.c"
   4046     break;
   4047 
   4048   case 280: /* opt_subalign: SUBALIGN '(' exp ')'  */
   4049 #line 1041 "ldgram.y"
   4050                                      { (yyval.etree) = (yyvsp[-1].etree); }
   4051 #line 4052 "ldgram.c"
   4052     break;
   4053 
   4054   case 281: /* opt_subalign: %empty  */
   4055 #line 1042 "ldgram.y"
   4056                 { (yyval.etree) = 0; }
   4057 #line 4058 "ldgram.c"
   4058     break;
   4059 
   4060   case 282: /* sect_constraint: ONLY_IF_RO  */
   4061 #line 1046 "ldgram.y"
   4062                            { (yyval.token) = ONLY_IF_RO; }
   4063 #line 4064 "ldgram.c"
   4064     break;
   4065 
   4066   case 283: /* sect_constraint: ONLY_IF_RW  */
   4067 #line 1047 "ldgram.y"
   4068                            { (yyval.token) = ONLY_IF_RW; }
   4069 #line 4070 "ldgram.c"
   4070     break;
   4071 
   4072   case 284: /* sect_constraint: SPECIAL  */
   4073 #line 1048 "ldgram.y"
   4074                         { (yyval.token) = SPECIAL; }
   4075 #line 4076 "ldgram.c"
   4076     break;
   4077 
   4078   case 285: /* sect_constraint: %empty  */
   4079 #line 1049 "ldgram.y"
   4080                 { (yyval.token) = 0; }
   4081 #line 4082 "ldgram.c"
   4082     break;
   4083 
   4084   case 286: /* $@22: %empty  */
   4085 #line 1053 "ldgram.y"
   4086                         { ldlex_expression(); }
   4087 #line 4088 "ldgram.c"
   4088     break;
   4089 
   4090   case 287: /* $@23: %empty  */
   4091 #line 1060 "ldgram.y"
   4092                         {
   4093 			  ldlex_popstate ();
   4094 			  ldlex_wild ();
   4095 			  lang_enter_output_section_statement ((yyvsp[-7].name), (yyvsp[-5].etree), sectype,
   4096 					sectype_value, (yyvsp[-3].etree), (yyvsp[-1].etree), (yyvsp[-4].etree), (yyvsp[0].token), (yyvsp[-2].token));
   4097 			}
   4098 #line 4099 "ldgram.c"
   4099     break;
   4100 
   4101   case 288: /* $@24: %empty  */
   4102 #line 1069 "ldgram.y"
   4103                         { ldlex_popstate (); }
   4104 #line 4105 "ldgram.c"
   4105     break;
   4106 
   4107   case 289: /* $@25: %empty  */
   4108 #line 1071 "ldgram.y"
   4109                         {
   4110 			  /* fill_opt may have switched the lexer into
   4111 			     expression state, and back again, but in
   4112 			     order to find the end of the fill
   4113 			     expression the parser must look ahead one
   4114 			     token.  If it is a NAME, throw it away as
   4115 			     it will have been lexed in the wrong
   4116 			     state.  */
   4117 			  if (yychar == NAME)
   4118 			    {
   4119 			      yyclearin;
   4120 			      ldlex_backup ();
   4121 			    }
   4122 			  lang_leave_output_section_statement ((yyvsp[0].fill), (yyvsp[-3].name),
   4123 							       (yyvsp[-1].section_phdr), (yyvsp[-2].name));
   4124 			}
   4125 #line 4126 "ldgram.c"
   4126     break;
   4127 
   4128   case 291: /* $@26: %empty  */
   4129 #line 1089 "ldgram.y"
   4130                         { ldlex_expression (); }
   4131 #line 4132 "ldgram.c"
   4132     break;
   4133 
   4134   case 292: /* $@27: %empty  */
   4135 #line 1091 "ldgram.y"
   4136                         { ldlex_popstate (); }
   4137 #line 4138 "ldgram.c"
   4138     break;
   4139 
   4140   case 293: /* $@28: %empty  */
   4141 #line 1093 "ldgram.y"
   4142                         {
   4143 			  lang_enter_overlay ((yyvsp[-5].etree), (yyvsp[-2].etree));
   4144 			}
   4145 #line 4146 "ldgram.c"
   4146     break;
   4147 
   4148   case 294: /* $@29: %empty  */
   4149 #line 1099 "ldgram.y"
   4150                         {
   4151 			  if (yychar == NAME)
   4152 			    {
   4153 			      yyclearin;
   4154 			      ldlex_backup ();
   4155 			    }
   4156 			  lang_leave_overlay ((yyvsp[-10].etree), (int) (yyvsp[-11].integer),
   4157 					      (yyvsp[0].fill), (yyvsp[-3].name), (yyvsp[-1].section_phdr), (yyvsp[-2].name));
   4158 			}
   4159 #line 4160 "ldgram.c"
   4160     break;
   4161 
   4162   case 296: /* $@30: %empty  */
   4163 #line 1114 "ldgram.y"
   4164                         { ldlex_expression (); }
   4165 #line 4166 "ldgram.c"
   4166     break;
   4167 
   4168   case 297: /* $@31: %empty  */
   4169 #line 1116 "ldgram.y"
   4170                         {
   4171 			  ldlex_popstate ();
   4172 			  lang_add_assignment (exp_assign (".", (yyvsp[0].etree), false));
   4173 			}
   4174 #line 4175 "ldgram.c"
   4175     break;
   4176 
   4177   case 299: /* $@32: %empty  */
   4178 #line 1122 "ldgram.y"
   4179                         {
   4180 			  ldfile_open_command_file ((yyvsp[0].name));
   4181 			}
   4182 #line 4183 "ldgram.c"
   4183     break;
   4184 
   4185   case 301: /* type: NOLOAD  */
   4186 #line 1129 "ldgram.y"
   4187                    { sectype = noload_section; }
   4188 #line 4189 "ldgram.c"
   4189     break;
   4190 
   4191   case 302: /* type: DSECT  */
   4192 #line 1130 "ldgram.y"
   4193                    { sectype = noalloc_section; }
   4194 #line 4195 "ldgram.c"
   4195     break;
   4196 
   4197   case 303: /* type: COPY  */
   4198 #line 1131 "ldgram.y"
   4199                    { sectype = noalloc_section; }
   4200 #line 4201 "ldgram.c"
   4201     break;
   4202 
   4203   case 304: /* type: INFO  */
   4204 #line 1132 "ldgram.y"
   4205                    { sectype = noalloc_section; }
   4206 #line 4207 "ldgram.c"
   4207     break;
   4208 
   4209   case 305: /* type: OVERLAY  */
   4210 #line 1133 "ldgram.y"
   4211                    { sectype = noalloc_section; }
   4212 #line 4213 "ldgram.c"
   4213     break;
   4214 
   4215   case 306: /* type: READONLY '(' TYPE '=' exp ')'  */
   4216 #line 1134 "ldgram.y"
   4217                                          { sectype = typed_readonly_section; sectype_value = (yyvsp[-1].etree); }
   4218 #line 4219 "ldgram.c"
   4219     break;
   4220 
   4221   case 307: /* type: READONLY  */
   4222 #line 1135 "ldgram.y"
   4223                     { sectype = readonly_section; }
   4224 #line 4225 "ldgram.c"
   4225     break;
   4226 
   4227   case 308: /* type: TYPE '=' exp  */
   4228 #line 1136 "ldgram.y"
   4229                         { sectype = type_section; sectype_value = (yyvsp[0].etree); }
   4230 #line 4231 "ldgram.c"
   4231     break;
   4232 
   4233   case 310: /* atype: %empty  */
   4234 #line 1141 "ldgram.y"
   4235                             { sectype = normal_section; }
   4236 #line 4237 "ldgram.c"
   4237     break;
   4238 
   4239   case 311: /* atype: '(' ')'  */
   4240 #line 1142 "ldgram.y"
   4241                         { sectype = normal_section; }
   4242 #line 4243 "ldgram.c"
   4243     break;
   4244 
   4245   case 312: /* opt_exp_with_type: exp atype ':'  */
   4246 #line 1146 "ldgram.y"
   4247                                         { (yyval.etree) = (yyvsp[-2].etree); }
   4248 #line 4249 "ldgram.c"
   4249     break;
   4250 
   4251   case 313: /* opt_exp_with_type: atype ':'  */
   4252 #line 1147 "ldgram.y"
   4253                                         { (yyval.etree) = (etree_type *)NULL;  }
   4254 #line 4255 "ldgram.c"
   4255     break;
   4256 
   4257   case 314: /* opt_exp_with_type: BIND '(' exp ')' atype ':'  */
   4258 #line 1152 "ldgram.y"
   4259                                            { (yyval.etree) = (yyvsp[-3].etree); }
   4260 #line 4261 "ldgram.c"
   4261     break;
   4262 
   4263   case 315: /* opt_exp_with_type: BIND '(' exp ')' BLOCK '(' exp ')' atype ':'  */
   4264 #line 1154 "ldgram.y"
   4265                 { (yyval.etree) = (yyvsp[-7].etree); }
   4266 #line 4267 "ldgram.c"
   4267     break;
   4268 
   4269   case 316: /* opt_exp_without_type: exp ':'  */
   4270 #line 1158 "ldgram.y"
   4271                                 { (yyval.etree) = (yyvsp[-1].etree); }
   4272 #line 4273 "ldgram.c"
   4273     break;
   4274 
   4275   case 317: /* opt_exp_without_type: ':'  */
   4276 #line 1159 "ldgram.y"
   4277                                 { (yyval.etree) = (etree_type *) NULL;  }
   4278 #line 4279 "ldgram.c"
   4279     break;
   4280 
   4281   case 318: /* opt_nocrossrefs: %empty  */
   4282 #line 1164 "ldgram.y"
   4283                         { (yyval.integer) = 0; }
   4284 #line 4285 "ldgram.c"
   4285     break;
   4286 
   4287   case 319: /* opt_nocrossrefs: NOCROSSREFS  */
   4288 #line 1166 "ldgram.y"
   4289                         { (yyval.integer) = 1; }
   4290 #line 4291 "ldgram.c"
   4291     break;
   4292 
   4293   case 320: /* memspec_opt: '>' NAME  */
   4294 #line 1171 "ldgram.y"
   4295                 { (yyval.name) = (yyvsp[0].name); }
   4296 #line 4297 "ldgram.c"
   4297     break;
   4298 
   4299   case 321: /* memspec_opt: %empty  */
   4300 #line 1172 "ldgram.y"
   4301                 { (yyval.name) = DEFAULT_MEMORY_REGION; }
   4302 #line 4303 "ldgram.c"
   4303     break;
   4304 
   4305   case 322: /* phdr_opt: %empty  */
   4306 #line 1177 "ldgram.y"
   4307                 {
   4308 		  (yyval.section_phdr) = NULL;
   4309 		}
   4310 #line 4311 "ldgram.c"
   4311     break;
   4312 
   4313   case 323: /* phdr_opt: phdr_opt ':' NAME  */
   4314 #line 1181 "ldgram.y"
   4315                 {
   4316 		  struct lang_output_section_phdr_list *n;
   4317 
   4318 		  n = ((struct lang_output_section_phdr_list *)
   4319 		       xmalloc (sizeof *n));
   4320 		  n->name = (yyvsp[0].name);
   4321 		  n->used = false;
   4322 		  n->next = (yyvsp[-2].section_phdr);
   4323 		  (yyval.section_phdr) = n;
   4324 		}
   4325 #line 4326 "ldgram.c"
   4326     break;
   4327 
   4328   case 325: /* $@33: %empty  */
   4329 #line 1197 "ldgram.y"
   4330                         {
   4331 			  ldlex_wild ();
   4332 			  lang_enter_overlay_section ((yyvsp[0].name));
   4333 			}
   4334 #line 4335 "ldgram.c"
   4335     break;
   4336 
   4337   case 326: /* $@34: %empty  */
   4338 #line 1204 "ldgram.y"
   4339                         { ldlex_popstate (); }
   4340 #line 4341 "ldgram.c"
   4341     break;
   4342 
   4343   case 327: /* $@35: %empty  */
   4344 #line 1206 "ldgram.y"
   4345                         {
   4346 			  if (yychar == NAME)
   4347 			    {
   4348 			      yyclearin;
   4349 			      ldlex_backup ();
   4350 			    }
   4351 			  lang_leave_overlay_section ((yyvsp[0].fill), (yyvsp[-1].section_phdr));
   4352 			}
   4353 #line 4354 "ldgram.c"
   4354     break;
   4355 
   4356   case 332: /* $@36: %empty  */
   4357 #line 1227 "ldgram.y"
   4358                      { ldlex_expression (); }
   4359 #line 4360 "ldgram.c"
   4360     break;
   4361 
   4362   case 333: /* $@37: %empty  */
   4363 #line 1228 "ldgram.y"
   4364                                             { ldlex_popstate (); }
   4365 #line 4366 "ldgram.c"
   4366     break;
   4367 
   4368   case 334: /* phdr: NAME $@36 phdr_type phdr_qualifiers $@37 ';'  */
   4369 #line 1230 "ldgram.y"
   4370                 {
   4371 		  lang_new_phdr ((yyvsp[-5].name), (yyvsp[-3].etree), (yyvsp[-2].phdr).filehdr, (yyvsp[-2].phdr).phdrs, (yyvsp[-2].phdr).at,
   4372 				 (yyvsp[-2].phdr).flags);
   4373 		}
   4374 #line 4375 "ldgram.c"
   4375     break;
   4376 
   4377   case 335: /* phdr_type: exp  */
   4378 #line 1238 "ldgram.y"
   4379                 {
   4380 		  (yyval.etree) = (yyvsp[0].etree);
   4381 
   4382 		  if ((yyvsp[0].etree)->type.node_class == etree_name
   4383 		      && (yyvsp[0].etree)->type.node_code == NAME)
   4384 		    {
   4385 		      const char *s;
   4386 		      unsigned int i;
   4387 		      static const char * const phdr_types[] =
   4388 			{
   4389 			  "PT_NULL", "PT_LOAD", "PT_DYNAMIC",
   4390 			  "PT_INTERP", "PT_NOTE", "PT_SHLIB",
   4391 			  "PT_PHDR", "PT_TLS"
   4392 			};
   4393 
   4394 		      s = (yyvsp[0].etree)->name.name;
   4395 		      for (i = 0;
   4396 			   i < sizeof phdr_types / sizeof phdr_types[0];
   4397 			   i++)
   4398 			if (strcmp (s, phdr_types[i]) == 0)
   4399 			  {
   4400 			    (yyval.etree) = exp_intop (i);
   4401 			    break;
   4402 			  }
   4403 		      if (i == sizeof phdr_types / sizeof phdr_types[0])
   4404 			{
   4405 			  if (strcmp (s, "PT_GNU_EH_FRAME") == 0)
   4406 			    (yyval.etree) = exp_intop (0x6474e550);
   4407 			  else if (strcmp (s, "PT_GNU_STACK") == 0)
   4408 			    (yyval.etree) = exp_intop (0x6474e551);
   4409 			  else if (strcmp (s, "PT_GNU_RELRO") == 0)
   4410 			    (yyval.etree) = exp_intop (0x6474e552);
   4411 			  else if (strcmp (s, "PT_GNU_PROPERTY") == 0)
   4412 			    (yyval.etree) = exp_intop (0x6474e553);
   4413 			  else
   4414 			    {
   4415 			      einfo (_("\
   4416 %X%P:%pS: unknown phdr type `%s' (try integer literal)\n"),
   4417 				     NULL, s);
   4418 			      (yyval.etree) = exp_intop (0);
   4419 			    }
   4420 			}
   4421 		    }
   4422 		}
   4423 #line 4424 "ldgram.c"
   4424     break;
   4425 
   4426   case 336: /* phdr_qualifiers: %empty  */
   4427 #line 1286 "ldgram.y"
   4428                 {
   4429 		  memset (&(yyval.phdr), 0, sizeof (struct phdr_info));
   4430 		}
   4431 #line 4432 "ldgram.c"
   4432     break;
   4433 
   4434   case 337: /* phdr_qualifiers: NAME phdr_val phdr_qualifiers  */
   4435 #line 1290 "ldgram.y"
   4436                 {
   4437 		  (yyval.phdr) = (yyvsp[0].phdr);
   4438 		  if (strcmp ((yyvsp[-2].name), "FILEHDR") == 0 && (yyvsp[-1].etree) == NULL)
   4439 		    (yyval.phdr).filehdr = true;
   4440 		  else if (strcmp ((yyvsp[-2].name), "PHDRS") == 0 && (yyvsp[-1].etree) == NULL)
   4441 		    (yyval.phdr).phdrs = true;
   4442 		  else if (strcmp ((yyvsp[-2].name), "FLAGS") == 0 && (yyvsp[-1].etree) != NULL)
   4443 		    (yyval.phdr).flags = (yyvsp[-1].etree);
   4444 		  else
   4445 		    einfo (_("%X%P:%pS: PHDRS syntax error at `%s'\n"),
   4446 			   NULL, (yyvsp[-2].name));
   4447 		}
   4448 #line 4449 "ldgram.c"
   4449     break;
   4450 
   4451   case 338: /* phdr_qualifiers: AT '(' exp ')' phdr_qualifiers  */
   4452 #line 1303 "ldgram.y"
   4453                 {
   4454 		  (yyval.phdr) = (yyvsp[0].phdr);
   4455 		  (yyval.phdr).at = (yyvsp[-2].etree);
   4456 		}
   4457 #line 4458 "ldgram.c"
   4458     break;
   4459 
   4460   case 339: /* phdr_val: %empty  */
   4461 #line 1311 "ldgram.y"
   4462                 {
   4463 		  (yyval.etree) = NULL;
   4464 		}
   4465 #line 4466 "ldgram.c"
   4466     break;
   4467 
   4468   case 340: /* phdr_val: '(' exp ')'  */
   4469 #line 1315 "ldgram.y"
   4470                 {
   4471 		  (yyval.etree) = (yyvsp[-1].etree);
   4472 		}
   4473 #line 4474 "ldgram.c"
   4474     break;
   4475 
   4476   case 341: /* $@38: %empty  */
   4477 #line 1321 "ldgram.y"
   4478                 {
   4479 		  ldlex_version_file ();
   4480 		  PUSH_ERROR (_("dynamic list"));
   4481 		}
   4482 #line 4483 "ldgram.c"
   4483     break;
   4484 
   4485   case 342: /* dynamic_list_file: $@38 dynamic_list_nodes  */
   4486 #line 1326 "ldgram.y"
   4487                 {
   4488 		  ldlex_popstate ();
   4489 		  POP_ERROR ();
   4490 		}
   4491 #line 4492 "ldgram.c"
   4492     break;
   4493 
   4494   case 346: /* dynamic_list_tag: vers_defns ';'  */
   4495 #line 1343 "ldgram.y"
   4496                 {
   4497 		  lang_append_dynamic_list (current_dynamic_list_p, (yyvsp[-1].versyms));
   4498 		}
   4499 #line 4500 "ldgram.c"
   4500     break;
   4501 
   4502   case 347: /* $@39: %empty  */
   4503 #line 1351 "ldgram.y"
   4504                 {
   4505 		  ldlex_version_file ();
   4506 		  PUSH_ERROR (_("VERSION script"));
   4507 		}
   4508 #line 4509 "ldgram.c"
   4509     break;
   4510 
   4511   case 348: /* version_script_file: $@39 vers_nodes  */
   4512 #line 1356 "ldgram.y"
   4513                 {
   4514 		  ldlex_popstate ();
   4515 		  POP_ERROR ();
   4516 		}
   4517 #line 4518 "ldgram.c"
   4518     break;
   4519 
   4520   case 349: /* $@40: %empty  */
   4521 #line 1365 "ldgram.y"
   4522                 {
   4523 		  ldlex_version_script ();
   4524 		}
   4525 #line 4526 "ldgram.c"
   4526     break;
   4527 
   4528   case 350: /* version: $@40 VERSIONK '{' vers_nodes '}'  */
   4529 #line 1369 "ldgram.y"
   4530                 {
   4531 		  ldlex_popstate ();
   4532 		}
   4533 #line 4534 "ldgram.c"
   4534     break;
   4535 
   4536   case 353: /* vers_node: '{' vers_tag '}' ';'  */
   4537 #line 1381 "ldgram.y"
   4538                 {
   4539 		  lang_register_vers_node (NULL, (yyvsp[-2].versnode), NULL);
   4540 		}
   4541 #line 4542 "ldgram.c"
   4542     break;
   4543 
   4544   case 354: /* vers_node: VERS_TAG '{' vers_tag '}' ';'  */
   4545 #line 1385 "ldgram.y"
   4546                 {
   4547 		  lang_register_vers_node ((yyvsp[-4].name), (yyvsp[-2].versnode), NULL);
   4548 		}
   4549 #line 4550 "ldgram.c"
   4550     break;
   4551 
   4552   case 355: /* vers_node: VERS_TAG '{' vers_tag '}' verdep ';'  */
   4553 #line 1389 "ldgram.y"
   4554                 {
   4555 		  lang_register_vers_node ((yyvsp[-5].name), (yyvsp[-3].versnode), (yyvsp[-1].deflist));
   4556 		}
   4557 #line 4558 "ldgram.c"
   4558     break;
   4559 
   4560   case 356: /* verdep: VERS_TAG  */
   4561 #line 1396 "ldgram.y"
   4562                 {
   4563 		  (yyval.deflist) = lang_add_vers_depend (NULL, (yyvsp[0].name));
   4564 		}
   4565 #line 4566 "ldgram.c"
   4566     break;
   4567 
   4568   case 357: /* verdep: verdep VERS_TAG  */
   4569 #line 1400 "ldgram.y"
   4570                 {
   4571 		  (yyval.deflist) = lang_add_vers_depend ((yyvsp[-1].deflist), (yyvsp[0].name));
   4572 		}
   4573 #line 4574 "ldgram.c"
   4574     break;
   4575 
   4576   case 358: /* vers_tag: %empty  */
   4577 #line 1407 "ldgram.y"
   4578                 {
   4579 		  (yyval.versnode) = lang_new_vers_node (NULL, NULL);
   4580 		}
   4581 #line 4582 "ldgram.c"
   4582     break;
   4583 
   4584   case 359: /* vers_tag: vers_defns ';'  */
   4585 #line 1411 "ldgram.y"
   4586                 {
   4587 		  (yyval.versnode) = lang_new_vers_node ((yyvsp[-1].versyms), NULL);
   4588 		}
   4589 #line 4590 "ldgram.c"
   4590     break;
   4591 
   4592   case 360: /* vers_tag: GLOBAL ':' vers_defns ';'  */
   4593 #line 1415 "ldgram.y"
   4594                 {
   4595 		  (yyval.versnode) = lang_new_vers_node ((yyvsp[-1].versyms), NULL);
   4596 		}
   4597 #line 4598 "ldgram.c"
   4598     break;
   4599 
   4600   case 361: /* vers_tag: LOCAL ':' vers_defns ';'  */
   4601 #line 1419 "ldgram.y"
   4602                 {
   4603 		  (yyval.versnode) = lang_new_vers_node (NULL, (yyvsp[-1].versyms));
   4604 		}
   4605 #line 4606 "ldgram.c"
   4606     break;
   4607 
   4608   case 362: /* vers_tag: GLOBAL ':' vers_defns ';' LOCAL ':' vers_defns ';'  */
   4609 #line 1423 "ldgram.y"
   4610                 {
   4611 		  (yyval.versnode) = lang_new_vers_node ((yyvsp[-5].versyms), (yyvsp[-1].versyms));
   4612 		}
   4613 #line 4614 "ldgram.c"
   4614     break;
   4615 
   4616   case 363: /* vers_defns: VERS_IDENTIFIER  */
   4617 #line 1430 "ldgram.y"
   4618                 {
   4619 		  (yyval.versyms) = lang_new_vers_pattern (NULL, (yyvsp[0].name), ldgram_vers_current_lang, false);
   4620 		}
   4621 #line 4622 "ldgram.c"
   4622     break;
   4623 
   4624   case 364: /* vers_defns: NAME  */
   4625 #line 1434 "ldgram.y"
   4626                 {
   4627 		  (yyval.versyms) = lang_new_vers_pattern (NULL, (yyvsp[0].name), ldgram_vers_current_lang, true);
   4628 		}
   4629 #line 4630 "ldgram.c"
   4630     break;
   4631 
   4632   case 365: /* vers_defns: vers_defns ';' VERS_IDENTIFIER  */
   4633 #line 1438 "ldgram.y"
   4634                 {
   4635 		  (yyval.versyms) = lang_new_vers_pattern ((yyvsp[-2].versyms), (yyvsp[0].name), ldgram_vers_current_lang, false);
   4636 		}
   4637 #line 4638 "ldgram.c"
   4638     break;
   4639 
   4640   case 366: /* vers_defns: vers_defns ';' NAME  */
   4641 #line 1442 "ldgram.y"
   4642                 {
   4643 		  (yyval.versyms) = lang_new_vers_pattern ((yyvsp[-2].versyms), (yyvsp[0].name), ldgram_vers_current_lang, true);
   4644 		}
   4645 #line 4646 "ldgram.c"
   4646     break;
   4647 
   4648   case 367: /* @41: %empty  */
   4649 #line 1446 "ldgram.y"
   4650                         {
   4651 			  (yyval.name) = ldgram_vers_current_lang;
   4652 			  ldgram_vers_current_lang = (yyvsp[-1].name);
   4653 			}
   4654 #line 4655 "ldgram.c"
   4655     break;
   4656 
   4657   case 368: /* vers_defns: vers_defns ';' EXTERN NAME '{' @41 vers_defns opt_semicolon '}'  */
   4658 #line 1451 "ldgram.y"
   4659                         {
   4660 			  struct bfd_elf_version_expr *pat;
   4661 			  for (pat = (yyvsp[-2].versyms); pat->next != NULL; pat = pat->next);
   4662 			  pat->next = (yyvsp[-8].versyms);
   4663 			  (yyval.versyms) = (yyvsp[-2].versyms);
   4664 			  ldgram_vers_current_lang = (yyvsp[-3].name);
   4665 			}
   4666 #line 4667 "ldgram.c"
   4667     break;
   4668 
   4669   case 369: /* @42: %empty  */
   4670 #line 1459 "ldgram.y"
   4671                         {
   4672 			  (yyval.name) = ldgram_vers_current_lang;
   4673 			  ldgram_vers_current_lang = (yyvsp[-1].name);
   4674 			}
   4675 #line 4676 "ldgram.c"
   4676     break;
   4677 
   4678   case 370: /* vers_defns: EXTERN NAME '{' @42 vers_defns opt_semicolon '}'  */
   4679 #line 1464 "ldgram.y"
   4680                         {
   4681 			  (yyval.versyms) = (yyvsp[-2].versyms);
   4682 			  ldgram_vers_current_lang = (yyvsp[-3].name);
   4683 			}
   4684 #line 4685 "ldgram.c"
   4685     break;
   4686 
   4687   case 371: /* vers_defns: GLOBAL  */
   4688 #line 1469 "ldgram.y"
   4689                 {
   4690 		  (yyval.versyms) = lang_new_vers_pattern (NULL, "global", ldgram_vers_current_lang, false);
   4691 		}
   4692 #line 4693 "ldgram.c"
   4693     break;
   4694 
   4695   case 372: /* vers_defns: vers_defns ';' GLOBAL  */
   4696 #line 1473 "ldgram.y"
   4697                 {
   4698 		  (yyval.versyms) = lang_new_vers_pattern ((yyvsp[-2].versyms), "global", ldgram_vers_current_lang, false);
   4699 		}
   4700 #line 4701 "ldgram.c"
   4701     break;
   4702 
   4703   case 373: /* vers_defns: LOCAL  */
   4704 #line 1477 "ldgram.y"
   4705                 {
   4706 		  (yyval.versyms) = lang_new_vers_pattern (NULL, "local", ldgram_vers_current_lang, false);
   4707 		}
   4708 #line 4709 "ldgram.c"
   4709     break;
   4710 
   4711   case 374: /* vers_defns: vers_defns ';' LOCAL  */
   4712 #line 1481 "ldgram.y"
   4713                 {
   4714 		  (yyval.versyms) = lang_new_vers_pattern ((yyvsp[-2].versyms), "local", ldgram_vers_current_lang, false);
   4715 		}
   4716 #line 4717 "ldgram.c"
   4717     break;
   4718 
   4719   case 375: /* vers_defns: EXTERN  */
   4720 #line 1485 "ldgram.y"
   4721                 {
   4722 		  (yyval.versyms) = lang_new_vers_pattern (NULL, "extern", ldgram_vers_current_lang, false);
   4723 		}
   4724 #line 4725 "ldgram.c"
   4725     break;
   4726 
   4727   case 376: /* vers_defns: vers_defns ';' EXTERN  */
   4728 #line 1489 "ldgram.y"
   4729                 {
   4730 		  (yyval.versyms) = lang_new_vers_pattern ((yyvsp[-2].versyms), "extern", ldgram_vers_current_lang, false);
   4731 		}
   4732 #line 4733 "ldgram.c"
   4733     break;
   4734 
   4735 
   4736 #line 4737 "ldgram.c"
   4737 
   4738       default: break;
   4739     }
   4740   /* User semantic actions sometimes alter yychar, and that requires
   4741      that yytoken be updated with the new translation.  We take the
   4742      approach of translating immediately before every use of yytoken.
   4743      One alternative is translating here after every semantic action,
   4744      but that translation would be missed if the semantic action invokes
   4745      YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
   4746      if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
   4747      incorrect destructor might then be invoked immediately.  In the
   4748      case of YYERROR or YYBACKUP, subsequent parser actions might lead
   4749      to an incorrect destructor call or verbose syntax error message
   4750      before the lookahead is translated.  */
   4751   YY_SYMBOL_PRINT ("-> $$ =", YY_CAST (yysymbol_kind_t, yyr1[yyn]), &yyval, &yyloc);
   4752 
   4753   YYPOPSTACK (yylen);
   4754   yylen = 0;
   4755 
   4756   *++yyvsp = yyval;
   4757 
   4758   /* Now 'shift' the result of the reduction.  Determine what state
   4759      that goes to, based on the state we popped back to and the rule
   4760      number reduced by.  */
   4761   {
   4762     const int yylhs = yyr1[yyn] - YYNTOKENS;
   4763     const int yyi = yypgoto[yylhs] + *yyssp;
   4764     yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
   4765                ? yytable[yyi]
   4766                : yydefgoto[yylhs]);
   4767   }
   4768 
   4769   goto yynewstate;
   4770 
   4771 
   4772 /*--------------------------------------.
   4773 | yyerrlab -- here on detecting error.  |
   4774 `--------------------------------------*/
   4775 yyerrlab:
   4776   /* Make sure we have latest lookahead translation.  See comments at
   4777      user semantic actions for why this is necessary.  */
   4778   yytoken = yychar == YYEMPTY ? YYSYMBOL_YYEMPTY : YYTRANSLATE (yychar);
   4779   /* If not already recovering from an error, report this error.  */
   4780   if (!yyerrstatus)
   4781     {
   4782       ++yynerrs;
   4783       yyerror (YY_("syntax error"));
   4784     }
   4785 
   4786   if (yyerrstatus == 3)
   4787     {
   4788       /* If just tried and failed to reuse lookahead token after an
   4789          error, discard it.  */
   4790 
   4791       if (yychar <= YYEOF)
   4792         {
   4793           /* Return failure if at end of input.  */
   4794           if (yychar == YYEOF)
   4795             YYABORT;
   4796         }
   4797       else
   4798         {
   4799           yydestruct ("Error: discarding",
   4800                       yytoken, &yylval);
   4801           yychar = YYEMPTY;
   4802         }
   4803     }
   4804 
   4805   /* Else will try to reuse lookahead token after shifting the error
   4806      token.  */
   4807   goto yyerrlab1;
   4808 
   4809 
   4810 /*---------------------------------------------------.
   4811 | yyerrorlab -- error raised explicitly by YYERROR.  |
   4812 `---------------------------------------------------*/
   4813 yyerrorlab:
   4814   /* Pacify compilers when the user code never invokes YYERROR and the
   4815      label yyerrorlab therefore never appears in user code.  */
   4816   if (0)
   4817     YYERROR;
   4818   ++yynerrs;
   4819 
   4820   /* Do not reclaim the symbols of the rule whose action triggered
   4821      this YYERROR.  */
   4822   YYPOPSTACK (yylen);
   4823   yylen = 0;
   4824   YY_STACK_PRINT (yyss, yyssp);
   4825   yystate = *yyssp;
   4826   goto yyerrlab1;
   4827 
   4828 
   4829 /*-------------------------------------------------------------.
   4830 | yyerrlab1 -- common code for both syntax error and YYERROR.  |
   4831 `-------------------------------------------------------------*/
   4832 yyerrlab1:
   4833   yyerrstatus = 3;      /* Each real token shifted decrements this.  */
   4834 
   4835   /* Pop stack until we find a state that shifts the error token.  */
   4836   for (;;)
   4837     {
   4838       yyn = yypact[yystate];
   4839       if (!yypact_value_is_default (yyn))
   4840         {
   4841           yyn += YYSYMBOL_YYerror;
   4842           if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYSYMBOL_YYerror)
   4843             {
   4844               yyn = yytable[yyn];
   4845               if (0 < yyn)
   4846                 break;
   4847             }
   4848         }
   4849 
   4850       /* Pop the current state because it cannot handle the error token.  */
   4851       if (yyssp == yyss)
   4852         YYABORT;
   4853 
   4854 
   4855       yydestruct ("Error: popping",
   4856                   YY_ACCESSING_SYMBOL (yystate), yyvsp);
   4857       YYPOPSTACK (1);
   4858       yystate = *yyssp;
   4859       YY_STACK_PRINT (yyss, yyssp);
   4860     }
   4861 
   4862   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
   4863   *++yyvsp = yylval;
   4864   YY_IGNORE_MAYBE_UNINITIALIZED_END
   4865 
   4866 
   4867   /* Shift the error token.  */
   4868   YY_SYMBOL_PRINT ("Shifting", YY_ACCESSING_SYMBOL (yyn), yyvsp, yylsp);
   4869 
   4870   yystate = yyn;
   4871   goto yynewstate;
   4872 
   4873 
   4874 /*-------------------------------------.
   4875 | yyacceptlab -- YYACCEPT comes here.  |
   4876 `-------------------------------------*/
   4877 yyacceptlab:
   4878   yyresult = 0;
   4879   goto yyreturnlab;
   4880 
   4881 
   4882 /*-----------------------------------.
   4883 | yyabortlab -- YYABORT comes here.  |
   4884 `-----------------------------------*/
   4885 yyabortlab:
   4886   yyresult = 1;
   4887   goto yyreturnlab;
   4888 
   4889 
   4890 /*-----------------------------------------------------------.
   4891 | yyexhaustedlab -- YYNOMEM (memory exhaustion) comes here.  |
   4892 `-----------------------------------------------------------*/
   4893 yyexhaustedlab:
   4894   yyerror (YY_("memory exhausted"));
   4895   yyresult = 2;
   4896   goto yyreturnlab;
   4897 
   4898 
   4899 /*----------------------------------------------------------.
   4900 | yyreturnlab -- parsing is finished, clean up and return.  |
   4901 `----------------------------------------------------------*/
   4902 yyreturnlab:
   4903   if (yychar != YYEMPTY)
   4904     {
   4905       /* Make sure we have latest lookahead translation.  See comments at
   4906          user semantic actions for why this is necessary.  */
   4907       yytoken = YYTRANSLATE (yychar);
   4908       yydestruct ("Cleanup: discarding lookahead",
   4909                   yytoken, &yylval);
   4910     }
   4911   /* Do not reclaim the symbols of the rule whose action triggered
   4912      this YYABORT or YYACCEPT.  */
   4913   YYPOPSTACK (yylen);
   4914   YY_STACK_PRINT (yyss, yyssp);
   4915   while (yyssp != yyss)
   4916     {
   4917       yydestruct ("Cleanup: popping",
   4918                   YY_ACCESSING_SYMBOL (+*yyssp), yyvsp);
   4919       YYPOPSTACK (1);
   4920     }
   4921 #ifndef yyoverflow
   4922   if (yyss != yyssa)
   4923     YYSTACK_FREE (yyss);
   4924 #endif
   4925 
   4926   return yyresult;
   4927 }
   4928 
   4929 #line 1499 "ldgram.y"
   4930 
   4931 void
   4932 yyerror(arg)
   4933      const char *arg;
   4934 {
   4935   if (ldfile_assumed_script)
   4936     einfo (_("%P:%s: file format not recognized; treating as linker script\n"),
   4937 	   ldlex_filename ());
   4938   if (error_index > 0 && error_index < ERROR_NAME_MAX)
   4939     einfo ("%F%P:%pS: %s in %s\n", NULL, arg, error_names[error_index - 1]);
   4940   else
   4941     einfo ("%F%P:%pS: %s\n", NULL, arg);
   4942 }
   4943