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