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