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