1 /* A Bison parser, made by GNU Bison 2.3. */
3 /* Skeleton implementation for Bison's Yacc-like parsers in C
5 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
6 Free Software Foundation, Inc.
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2, or (at your option)
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 Boston, MA 02110-1301, USA. */
23 /* As a special exception, you may create a larger work that contains
24 part or all of the Bison parser skeleton and distribute that work
25 under terms of your choice, so long as that work isn't itself a
26 parser generator using the skeleton or a modified version thereof
27 as a parser skeleton. Alternatively, if you modify or redistribute
28 the parser skeleton itself, you may (at your option) remove this
29 special exception, which will cause the skeleton and the resulting
30 Bison output files to be licensed under the GNU General Public
31 License without this special exception.
33 This special exception was added by the Free Software Foundation in
34 version 2.2 of Bison. */
36 /* C LALR(1) parser skeleton written by Richard Stallman, by
37 simplifying the original so-called "semantic" parser. */
39 /* All symbols defined below should begin with yy or YY, to avoid
40 infringing on user name space. This should be done even for local
41 variables, as they might otherwise be expanded by user macros.
42 There are some unavoidable exceptions within include files to
43 define necessary library symbols; they are noted "INFRINGES ON
44 USER NAME SPACE" below. */
46 /* Identify Bison output. */
50 #define YYBISON_VERSION "2.3"
53 #define YYSKELETON_NAME "yacc.c"
58 /* Using locations. */
59 #define YYLSP_NEEDED 0
66 /* Put the tokens into the symbol table, so that GDB and other debuggers
103 DATA_SEGMENT_ALIGN = 292,
104 DATA_SEGMENT_RELRO_END = 293,
105 DATA_SEGMENT_END = 294,
107 SORT_BY_ALIGNMENT = 296,
108 SORT_BY_INIT_PRIORITY = 297,
109 SIZEOF_HEADERS = 298,
111 FORCE_COMMON_ALLOCATION = 300,
113 INHIBIT_COMMON_ALLOCATION = 302,
145 CREATE_OBJECT_SYMBOLS = 334,
154 PROVIDE_HIDDEN = 343,
174 INPUT_MRI_SCRIPT = 363,
180 VERS_IDENTIFIER = 369,
184 INPUT_VERSION_SCRIPT = 373,
189 INPUT_SECTION_FLAGS = 378,
192 INPUT_DYNAMIC_LIST = 381
230 #define DATA_SEGMENT_ALIGN 292
231 #define DATA_SEGMENT_RELRO_END 293
232 #define DATA_SEGMENT_END 294
233 #define SORT_BY_NAME 295
234 #define SORT_BY_ALIGNMENT 296
235 #define SORT_BY_INIT_PRIORITY 297
236 #define SIZEOF_HEADERS 298
237 #define OUTPUT_FORMAT 299
238 #define FORCE_COMMON_ALLOCATION 300
239 #define OUTPUT_ARCH 301
240 #define INHIBIT_COMMON_ALLOCATION 302
241 #define SEGMENT_START 303
244 #define REGION_ALIAS 306
245 #define LD_FEATURE 307
253 #define SEARCH_DIR 315
268 #define NOCROSSREFS 330
272 #define CREATE_OBJECT_SYMBOLS 334
276 #define CONSTRUCTORS 338
281 #define PROVIDE_HIDDEN 343
282 #define AS_NEEDED 344
295 #define DEFSYMEND 357
300 #define INPUT_SCRIPT 362
301 #define INPUT_MRI_SCRIPT 363
302 #define INPUT_DEFSYM 364
307 #define VERS_IDENTIFIER 369
311 #define INPUT_VERSION_SCRIPT 373
313 #define ONLY_IF_RO 375
314 #define ONLY_IF_RW 376
316 #define INPUT_SECTION_FLAGS 378
317 #define EXCLUDE_FILE 379
319 #define INPUT_DYNAMIC_LIST 381
324 /* Copy the first part of user declarations. */
331 #define DONTDECLARE_MALLOC
352 static enum section_type sectype;
353 static lang_memory_region_type *region;
355 bfd_boolean ldgram_had_keep = FALSE;
356 char *ldgram_vers_current_lang = NULL;
358 #define ERROR_NAME_MAX 20
359 static char *error_names[ERROR_NAME_MAX];
360 static int error_index;
361 #define PUSH_ERROR(x) if (error_index < ERROR_NAME_MAX) error_names[error_index] = x; error_index++;
362 #define POP_ERROR() error_index--;
365 /* Enabling traces. */
370 /* Enabling verbose error messages. */
371 #ifdef YYERROR_VERBOSE
372 # undef YYERROR_VERBOSE
373 # define YYERROR_VERBOSE 1
375 # define YYERROR_VERBOSE 0
378 /* Enabling the token table. */
379 #ifndef YYTOKEN_TABLE
380 # define YYTOKEN_TABLE 0
383 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
384 typedef union YYSTYPE
396 struct wildcard_spec wildcard;
397 struct wildcard_list *wildcard_list;
398 struct name_list *name_list;
399 struct flag_info_list *flag_info_list;
400 struct flag_info *flag_info;
402 union etree_union *etree;
407 union etree_union *at;
408 union etree_union *flags;
410 struct lang_nocrossref *nocrossref;
411 struct lang_output_section_phdr_list *section_phdr;
412 struct bfd_elf_version_deps *deflist;
413 struct bfd_elf_version_expr *versyms;
414 struct bfd_elf_version_tree *versnode;
416 /* Line 193 of yacc.c. */
419 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
420 # define YYSTYPE_IS_DECLARED 1
421 # define YYSTYPE_IS_TRIVIAL 1
426 /* Copy the second part of user declarations. */
429 /* Line 216 of yacc.c. */
437 typedef YYTYPE_UINT8 yytype_uint8;
439 typedef unsigned char yytype_uint8;
443 typedef YYTYPE_INT8 yytype_int8;
444 #elif (defined __STDC__ || defined __C99__FUNC__ \
445 || defined __cplusplus || defined _MSC_VER)
446 typedef signed char yytype_int8;
448 typedef short int yytype_int8;
452 typedef YYTYPE_UINT16 yytype_uint16;
454 typedef unsigned short int yytype_uint16;
458 typedef YYTYPE_INT16 yytype_int16;
460 typedef short int yytype_int16;
464 # ifdef __SIZE_TYPE__
465 # define YYSIZE_T __SIZE_TYPE__
466 # elif defined size_t
467 # define YYSIZE_T size_t
468 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
469 || defined __cplusplus || defined _MSC_VER)
470 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
471 # define YYSIZE_T size_t
473 # define YYSIZE_T unsigned int
477 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
480 # if defined YYENABLE_NLS && YYENABLE_NLS
482 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
483 # define YY_(msgid) dgettext ("bison-runtime", msgid)
487 # define YY_(msgid) msgid
491 /* Suppress unused-variable warnings by "using" E. */
492 #if ! defined lint || defined __GNUC__
493 # define YYUSE(e) ((void) (e))
495 # define YYUSE(e) /* empty */
498 /* Identity function, used to suppress warnings about constant conditions. */
502 #if (defined __STDC__ || defined __C99__FUNC__ \
503 || defined __cplusplus || defined _MSC_VER)
516 #if ! defined yyoverflow || YYERROR_VERBOSE
518 /* The parser invokes alloca or malloc; define the necessary symbols. */
520 # ifdef YYSTACK_USE_ALLOCA
521 # if YYSTACK_USE_ALLOCA
523 # define YYSTACK_ALLOC __builtin_alloca
524 # elif defined __BUILTIN_VA_ARG_INCR
525 # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
527 # define YYSTACK_ALLOC __alloca
528 # elif defined _MSC_VER
529 # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
530 # define alloca _alloca
532 # define YYSTACK_ALLOC alloca
533 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
534 || defined __cplusplus || defined _MSC_VER)
535 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
544 # ifdef YYSTACK_ALLOC
545 /* Pacify GCC's `empty if-body' warning. */
546 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
547 # ifndef YYSTACK_ALLOC_MAXIMUM
548 /* The OS might guarantee only one guard page at the bottom of the stack,
549 and a page size can be as small as 4096 bytes. So we cannot safely
550 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
551 to allow for a few compiler-allocated temporary stack slots. */
552 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
555 # define YYSTACK_ALLOC YYMALLOC
556 # define YYSTACK_FREE YYFREE
557 # ifndef YYSTACK_ALLOC_MAXIMUM
558 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
560 # if (defined __cplusplus && ! defined _STDLIB_H \
561 && ! ((defined YYMALLOC || defined malloc) \
562 && (defined YYFREE || defined free)))
563 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
569 # define YYMALLOC malloc
570 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
571 || defined __cplusplus || defined _MSC_VER)
572 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
577 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
578 || defined __cplusplus || defined _MSC_VER)
579 void free (void *); /* INFRINGES ON USER NAME SPACE */
583 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
586 #if (! defined yyoverflow \
587 && (! defined __cplusplus \
588 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
590 /* A type that is properly aligned for any stack member. */
597 /* The size of the maximum gap between one aligned stack and the next. */
598 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
600 /* The size of an array large to enough to hold all stacks, each with
602 # define YYSTACK_BYTES(N) \
603 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
604 + YYSTACK_GAP_MAXIMUM)
606 /* Copy COUNT objects from FROM to TO. The source and destination do
609 # if defined __GNUC__ && 1 < __GNUC__
610 # define YYCOPY(To, From, Count) \
611 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
613 # define YYCOPY(To, From, Count) \
617 for (yyi = 0; yyi < (Count); yyi++) \
618 (To)[yyi] = (From)[yyi]; \
624 /* Relocate STACK from its old location to the new one. The
625 local variables YYSIZE and YYSTACKSIZE give the old and new number of
626 elements in the stack, and YYPTR gives the new location of the
627 stack. Advance YYPTR to a properly aligned location for the next
629 # define YYSTACK_RELOCATE(Stack) \
632 YYSIZE_T yynewbytes; \
633 YYCOPY (&yyptr->Stack, Stack, yysize); \
634 Stack = &yyptr->Stack; \
635 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
636 yyptr += yynewbytes / sizeof (*yyptr); \
642 /* YYFINAL -- State number of the termination state. */
644 /* YYLAST -- Last index in YYTABLE. */
647 /* YYNTOKENS -- Number of terminals. */
648 #define YYNTOKENS 150
649 /* YYNNTS -- Number of nonterminals. */
651 /* YYNRULES -- Number of rules. */
653 /* YYNRULES -- Number of states. */
654 #define YYNSTATES 787
656 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
658 #define YYMAXUTOK 381
660 #define YYTRANSLATE(YYX) \
661 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
663 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
664 static const yytype_uint8 yytranslate[] =
666 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
667 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
668 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
669 2, 2, 2, 148, 2, 2, 2, 34, 21, 2,
670 37, 145, 32, 30, 143, 31, 2, 33, 2, 2,
671 2, 2, 2, 2, 2, 2, 2, 2, 16, 144,
672 24, 6, 25, 15, 2, 2, 2, 2, 2, 2,
673 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
674 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
675 2, 146, 2, 147, 20, 2, 2, 2, 2, 2,
676 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
677 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
678 2, 2, 2, 57, 19, 58, 149, 2, 2, 2,
679 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
680 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
681 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
682 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
683 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
684 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
685 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
686 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
687 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
688 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
689 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
690 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
691 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
692 5, 7, 8, 9, 10, 11, 12, 13, 14, 17,
693 18, 22, 23, 26, 27, 28, 29, 35, 36, 38,
694 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
695 49, 50, 51, 52, 53, 54, 55, 56, 59, 60,
696 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
697 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
698 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
699 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
700 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
701 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
702 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
703 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
708 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
710 static const yytype_uint16 yyprhs[] =
712 0, 0, 3, 6, 9, 12, 15, 18, 20, 21,
713 26, 27, 30, 34, 35, 38, 43, 45, 47, 50,
714 52, 57, 62, 66, 69, 74, 78, 83, 88, 93,
715 98, 103, 106, 109, 112, 117, 122, 125, 128, 131,
716 134, 135, 141, 144, 145, 149, 152, 153, 155, 159,
717 161, 165, 166, 168, 172, 173, 176, 178, 181, 185,
718 186, 189, 192, 193, 195, 197, 199, 201, 203, 205,
719 207, 209, 211, 213, 218, 223, 228, 233, 242, 247,
720 249, 251, 256, 257, 263, 268, 269, 275, 280, 285,
721 289, 293, 300, 305, 307, 311, 314, 316, 320, 323,
722 324, 330, 331, 339, 340, 347, 352, 355, 358, 359,
723 364, 367, 368, 376, 378, 380, 382, 384, 390, 395,
724 400, 408, 416, 424, 432, 441, 446, 448, 452, 457,
725 460, 462, 466, 468, 470, 473, 477, 482, 487, 493,
726 495, 496, 502, 505, 507, 509, 511, 516, 518, 523,
727 528, 529, 538, 539, 545, 548, 550, 551, 553, 555,
728 557, 559, 561, 563, 565, 568, 569, 571, 573, 575,
729 577, 579, 581, 583, 585, 587, 589, 593, 597, 604,
730 611, 613, 614, 619, 621, 622, 626, 628, 629, 637,
731 638, 644, 648, 652, 653, 657, 659, 662, 664, 667,
732 672, 677, 681, 685, 687, 692, 696, 697, 699, 701,
733 702, 705, 709, 710, 713, 716, 720, 725, 728, 731,
734 734, 738, 742, 746, 750, 754, 758, 762, 766, 770,
735 774, 778, 782, 786, 790, 794, 798, 804, 808, 812,
736 817, 819, 821, 826, 831, 836, 841, 846, 851, 856,
737 863, 870, 877, 882, 889, 894, 896, 903, 910, 917,
738 922, 927, 931, 932, 937, 938, 943, 944, 949, 950,
739 952, 954, 956, 957, 958, 959, 960, 961, 962, 982,
740 983, 984, 985, 986, 987, 1006, 1007, 1008, 1016, 1017,
741 1023, 1025, 1027, 1029, 1031, 1033, 1037, 1038, 1041, 1045,
742 1048, 1055, 1066, 1069, 1071, 1072, 1074, 1077, 1078, 1079,
743 1083, 1084, 1085, 1086, 1087, 1099, 1104, 1105, 1108, 1109,
744 1110, 1117, 1119, 1120, 1124, 1130, 1131, 1135, 1136, 1139,
745 1141, 1144, 1149, 1152, 1153, 1156, 1157, 1163, 1165, 1168,
746 1173, 1179, 1186, 1188, 1191, 1192, 1195, 1200, 1205, 1214,
747 1216, 1218, 1222, 1226, 1227, 1237, 1238, 1246, 1248, 1252,
748 1254, 1258, 1260, 1264, 1265
751 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
752 static const yytype_int16 yyrhs[] =
754 151, 0, -1, 123, 167, -1, 124, 155, -1, 134,
755 266, -1, 142, 261, -1, 125, 153, -1, 4, -1,
756 -1, 154, 4, 6, 222, -1, -1, 156, 157, -1,
757 157, 158, 111, -1, -1, 106, 222, -1, 106, 222,
758 143, 222, -1, 4, -1, 107, -1, 113, 160, -1,
759 112, -1, 117, 4, 6, 222, -1, 117, 4, 143,
760 222, -1, 117, 4, 222, -1, 116, 4, -1, 108,
761 4, 143, 222, -1, 108, 4, 222, -1, 108, 4,
762 6, 222, -1, 38, 4, 6, 222, -1, 38, 4,
763 143, 222, -1, 100, 4, 6, 222, -1, 100, 4,
764 143, 222, -1, 109, 162, -1, 110, 161, -1, 114,
765 4, -1, 120, 4, 143, 4, -1, 120, 4, 143,
766 3, -1, 119, 222, -1, 121, 3, -1, 126, 163,
767 -1, 127, 164, -1, -1, 65, 152, 159, 157, 36,
768 -1, 128, 4, -1, -1, 160, 143, 4, -1, 160,
769 4, -1, -1, 4, -1, 161, 143, 4, -1, 4,
770 -1, 162, 143, 4, -1, -1, 4, -1, 163, 143,
771 4, -1, -1, 165, 166, -1, 4, -1, 166, 4,
772 -1, 166, 143, 4, -1, -1, 168, 169, -1, 169,
773 170, -1, -1, 202, -1, 177, -1, 253, -1, 213,
774 -1, 214, -1, 216, -1, 218, -1, 179, -1, 268,
775 -1, 144, -1, 75, 37, 4, 145, -1, 76, 37,
776 152, 145, -1, 98, 37, 152, 145, -1, 60, 37,
777 4, 145, -1, 60, 37, 4, 143, 4, 143, 4,
778 145, -1, 62, 37, 4, 145, -1, 61, -1, 63,
779 -1, 96, 37, 173, 145, -1, -1, 97, 171, 37,
780 173, 145, -1, 77, 37, 152, 145, -1, -1, 65,
781 152, 172, 169, 36, -1, 91, 37, 219, 145, -1,
782 127, 37, 164, 145, -1, 48, 49, 4, -1, 48,
783 50, 4, -1, 67, 37, 4, 143, 4, 145, -1,
784 68, 37, 4, 145, -1, 4, -1, 173, 143, 4,
785 -1, 173, 4, -1, 5, -1, 173, 143, 5, -1,
786 173, 5, -1, -1, 105, 37, 174, 173, 145, -1,
787 -1, 173, 143, 105, 37, 175, 173, 145, -1, -1,
788 173, 105, 37, 176, 173, 145, -1, 46, 57, 178,
789 58, -1, 178, 228, -1, 178, 179, -1, -1, 78,
790 37, 4, 145, -1, 200, 199, -1, -1, 115, 180,
791 37, 222, 143, 4, 145, -1, 4, -1, 32, -1,
792 15, -1, 181, -1, 140, 37, 185, 145, 181, -1,
793 54, 37, 181, 145, -1, 55, 37, 181, 145, -1,
794 54, 37, 55, 37, 181, 145, 145, -1, 54, 37,
795 54, 37, 181, 145, 145, -1, 55, 37, 54, 37,
796 181, 145, 145, -1, 55, 37, 55, 37, 181, 145,
797 145, -1, 54, 37, 140, 37, 185, 145, 181, 145,
798 -1, 56, 37, 181, 145, -1, 4, -1, 183, 21,
799 4, -1, 139, 37, 183, 145, -1, 185, 181, -1,
800 181, -1, 186, 201, 182, -1, 182, -1, 4, -1,
801 184, 4, -1, 146, 186, 147, -1, 184, 146, 186,
802 147, -1, 182, 37, 186, 145, -1, 184, 182, 37,
803 186, 145, -1, 187, -1, -1, 135, 37, 189, 187,
804 145, -1, 200, 199, -1, 95, -1, 144, -1, 99,
805 -1, 54, 37, 99, 145, -1, 188, -1, 195, 37,
806 220, 145, -1, 93, 37, 196, 145, -1, -1, 115,
807 191, 37, 222, 143, 4, 145, 199, -1, -1, 65,
808 152, 192, 194, 36, -1, 193, 190, -1, 190, -1,
809 -1, 193, -1, 41, -1, 42, -1, 43, -1, 44,
810 -1, 45, -1, 220, -1, 6, 196, -1, -1, 14,
811 -1, 13, -1, 12, -1, 11, -1, 10, -1, 9,
812 -1, 8, -1, 7, -1, 144, -1, 143, -1, 4,
813 6, 220, -1, 4, 198, 220, -1, 103, 37, 4,
814 6, 220, 145, -1, 104, 37, 4, 6, 220, 145,
815 -1, 143, -1, -1, 66, 57, 203, 58, -1, 204,
816 -1, -1, 204, 201, 205, -1, 205, -1, -1, 4,
817 206, 210, 16, 208, 201, 209, -1, -1, 65, 152,
818 207, 203, 36, -1, 92, 6, 220, -1, 94, 6,
819 220, -1, -1, 37, 211, 145, -1, 212, -1, 211,
820 212, -1, 4, -1, 148, 4, -1, 86, 37, 152,
821 145, -1, 87, 37, 215, 145, -1, 87, 37, 145,
822 -1, 215, 201, 152, -1, 152, -1, 88, 37, 217,
823 145, -1, 217, 201, 152, -1, -1, 89, -1, 90,
824 -1, -1, 4, 219, -1, 4, 143, 219, -1, -1,
825 221, 222, -1, 31, 222, -1, 37, 222, 145, -1,
826 79, 37, 222, 145, -1, 148, 222, -1, 30, 222,
827 -1, 149, 222, -1, 222, 32, 222, -1, 222, 33,
828 222, -1, 222, 34, 222, -1, 222, 30, 222, -1,
829 222, 31, 222, -1, 222, 29, 222, -1, 222, 28,
830 222, -1, 222, 23, 222, -1, 222, 22, 222, -1,
831 222, 27, 222, -1, 222, 26, 222, -1, 222, 24,
832 222, -1, 222, 25, 222, -1, 222, 21, 222, -1,
833 222, 20, 222, -1, 222, 19, 222, -1, 222, 15,
834 222, 16, 222, -1, 222, 18, 222, -1, 222, 17,
835 222, -1, 74, 37, 4, 145, -1, 3, -1, 59,
836 -1, 81, 37, 4, 145, -1, 80, 37, 4, 145,
837 -1, 82, 37, 4, 145, -1, 83, 37, 4, 145,
838 -1, 141, 37, 4, 145, -1, 109, 37, 222, 145,
839 -1, 38, 37, 222, 145, -1, 38, 37, 222, 143,
840 222, 145, -1, 51, 37, 222, 143, 222, 145, -1,
841 52, 37, 222, 143, 222, 145, -1, 53, 37, 222,
842 145, -1, 64, 37, 4, 143, 222, 145, -1, 39,
843 37, 222, 145, -1, 4, -1, 84, 37, 222, 143,
844 222, 145, -1, 85, 37, 222, 143, 222, 145, -1,
845 115, 37, 222, 143, 4, 145, -1, 92, 37, 4,
846 145, -1, 94, 37, 4, 145, -1, 101, 25, 4,
847 -1, -1, 101, 37, 222, 145, -1, -1, 38, 37,
848 222, 145, -1, -1, 102, 37, 222, 145, -1, -1,
849 136, -1, 137, -1, 138, -1, -1, -1, -1, -1,
850 -1, -1, 4, 229, 244, 224, 225, 226, 230, 227,
851 57, 231, 194, 58, 232, 247, 223, 248, 197, 233,
852 201, -1, -1, -1, -1, -1, -1, 73, 234, 245,
853 246, 224, 226, 235, 57, 236, 249, 58, 237, 247,
854 223, 248, 197, 238, 201, -1, -1, -1, 97, 239,
855 244, 240, 57, 178, 58, -1, -1, 65, 152, 241,
856 178, 36, -1, 69, -1, 70, -1, 71, -1, 72,
857 -1, 73, -1, 37, 242, 145, -1, -1, 37, 145,
858 -1, 222, 243, 16, -1, 243, 16, -1, 40, 37,
859 222, 145, 243, 16, -1, 40, 37, 222, 145, 39,
860 37, 222, 145, 243, 16, -1, 222, 16, -1, 16,
861 -1, -1, 91, -1, 25, 4, -1, -1, -1, 248,
862 16, 4, -1, -1, -1, -1, -1, 249, 4, 250,
863 57, 194, 58, 251, 248, 197, 252, 201, -1, 47,
864 57, 254, 58, -1, -1, 254, 255, -1, -1, -1,
865 4, 256, 258, 259, 257, 144, -1, 222, -1, -1,
866 4, 260, 259, -1, 101, 37, 222, 145, 259, -1,
867 -1, 37, 222, 145, -1, -1, 262, 263, -1, 264,
868 -1, 263, 264, -1, 57, 265, 58, 144, -1, 274,
869 144, -1, -1, 267, 270, -1, -1, 269, 133, 57,
870 270, 58, -1, 271, -1, 270, 271, -1, 57, 273,
871 58, 144, -1, 129, 57, 273, 58, 144, -1, 129,
872 57, 273, 58, 272, 144, -1, 129, -1, 272, 129,
873 -1, -1, 274, 144, -1, 131, 16, 274, 144, -1,
874 132, 16, 274, 144, -1, 131, 16, 274, 144, 132,
875 16, 274, 144, -1, 130, -1, 4, -1, 274, 144,
876 130, -1, 274, 144, 4, -1, -1, 274, 144, 127,
877 4, 57, 275, 274, 277, 58, -1, -1, 127, 4,
878 57, 276, 274, 277, 58, -1, 131, -1, 274, 144,
879 131, -1, 132, -1, 274, 144, 132, -1, 127, -1,
880 274, 144, 127, -1, -1, 144, -1
883 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
884 static const yytype_uint16 yyrline[] =
886 0, 168, 168, 169, 170, 171, 172, 176, 180, 180,
887 190, 190, 203, 204, 208, 209, 210, 213, 216, 217,
888 218, 220, 222, 224, 226, 228, 230, 232, 234, 236,
889 238, 240, 241, 242, 244, 246, 248, 250, 252, 253,
890 255, 254, 258, 260, 264, 265, 266, 270, 272, 276,
891 278, 283, 284, 285, 290, 290, 295, 297, 299, 304,
892 304, 310, 311, 316, 317, 318, 319, 320, 321, 322,
893 323, 324, 325, 326, 328, 330, 332, 335, 337, 339,
894 341, 343, 345, 344, 348, 351, 350, 354, 358, 359,
895 361, 363, 365, 370, 373, 376, 379, 382, 385, 389,
896 388, 393, 392, 397, 396, 403, 407, 408, 409, 413,
897 415, 416, 416, 424, 428, 432, 439, 446, 453, 460,
898 467, 474, 481, 488, 495, 502, 511, 529, 550, 563,
899 572, 583, 592, 603, 612, 621, 625, 634, 638, 646,
900 648, 647, 654, 655, 659, 660, 665, 670, 671, 676,
901 680, 680, 684, 683, 690, 691, 694, 696, 700, 702,
902 704, 706, 708, 713, 720, 722, 726, 728, 730, 732,
903 734, 736, 738, 740, 745, 745, 750, 754, 762, 766,
904 774, 774, 778, 781, 781, 784, 785, 790, 789, 795,
905 794, 801, 809, 817, 818, 822, 823, 827, 829, 834,
906 839, 840, 845, 847, 853, 855, 857, 861, 863, 869,
907 872, 881, 892, 892, 898, 900, 902, 904, 906, 908,
908 911, 913, 915, 917, 919, 921, 923, 925, 927, 929,
909 931, 933, 935, 937, 939, 941, 943, 945, 947, 949,
910 951, 953, 956, 958, 960, 962, 964, 966, 968, 970,
911 972, 974, 976, 978, 987, 989, 991, 993, 995, 997,
912 999, 1005, 1006, 1010, 1011, 1015, 1016, 1020, 1021, 1025,
913 1026, 1027, 1028, 1031, 1035, 1038, 1044, 1046, 1031, 1053,
914 1055, 1057, 1062, 1064, 1052, 1074, 1076, 1074, 1082, 1081,
915 1088, 1089, 1090, 1091, 1092, 1096, 1097, 1098, 1102, 1103,
916 1108, 1109, 1114, 1115, 1120, 1121, 1126, 1128, 1133, 1136,
917 1149, 1153, 1158, 1160, 1151, 1168, 1171, 1173, 1177, 1178,
918 1177, 1187, 1232, 1235, 1247, 1256, 1259, 1266, 1266, 1278,
919 1279, 1283, 1287, 1296, 1296, 1310, 1310, 1320, 1321, 1325,
920 1329, 1333, 1340, 1344, 1352, 1355, 1359, 1363, 1367, 1374,
921 1378, 1382, 1386, 1391, 1390, 1404, 1403, 1413, 1417, 1421,
922 1425, 1429, 1433, 1439, 1441
926 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
927 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
928 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
929 static const char *const yytname[] =
931 "$end", "error", "$undefined", "INT", "NAME", "LNAME", "'='", "OREQ",
932 "ANDEQ", "RSHIFTEQ", "LSHIFTEQ", "DIVEQ", "MULTEQ", "MINUSEQ", "PLUSEQ",
933 "'?'", "':'", "OROR", "ANDAND", "'|'", "'^'", "'&'", "NE", "EQ", "'<'",
934 "'>'", "GE", "LE", "RSHIFT", "LSHIFT", "'+'", "'-'", "'*'", "'/'", "'%'",
935 "UNARY", "END", "'('", "ALIGN_K", "BLOCK", "BIND", "QUAD", "SQUAD",
936 "LONG", "SHORT", "BYTE", "SECTIONS", "PHDRS", "INSERT_K", "AFTER",
937 "BEFORE", "DATA_SEGMENT_ALIGN", "DATA_SEGMENT_RELRO_END",
938 "DATA_SEGMENT_END", "SORT_BY_NAME", "SORT_BY_ALIGNMENT",
939 "SORT_BY_INIT_PRIORITY", "'{'", "'}'", "SIZEOF_HEADERS", "OUTPUT_FORMAT",
940 "FORCE_COMMON_ALLOCATION", "OUTPUT_ARCH", "INHIBIT_COMMON_ALLOCATION",
941 "SEGMENT_START", "INCLUDE", "MEMORY", "REGION_ALIAS", "LD_FEATURE",
942 "NOLOAD", "DSECT", "COPY", "INFO", "OVERLAY", "DEFINED", "TARGET_K",
943 "SEARCH_DIR", "MAP", "ENTRY", "NEXT", "SIZEOF", "ALIGNOF", "ADDR",
944 "LOADADDR", "MAX_K", "MIN_K", "STARTUP", "HLL", "SYSLIB", "FLOAT",
945 "NOFLOAT", "NOCROSSREFS", "ORIGIN", "FILL", "LENGTH",
946 "CREATE_OBJECT_SYMBOLS", "INPUT", "GROUP", "OUTPUT", "CONSTRUCTORS",
947 "ALIGNMOD", "AT", "SUBALIGN", "PROVIDE", "PROVIDE_HIDDEN", "AS_NEEDED",
948 "CHIP", "LIST", "SECT", "ABSOLUTE", "LOAD", "NEWLINE", "ENDWORD",
949 "ORDER", "NAMEWORD", "ASSERT_K", "FORMAT", "PUBLIC", "DEFSYMEND", "BASE",
950 "ALIAS", "TRUNCATE", "REL", "INPUT_SCRIPT", "INPUT_MRI_SCRIPT",
951 "INPUT_DEFSYM", "CASE", "EXTERN", "START", "VERS_TAG", "VERS_IDENTIFIER",
952 "GLOBAL", "LOCAL", "VERSIONK", "INPUT_VERSION_SCRIPT", "KEEP",
953 "ONLY_IF_RO", "ONLY_IF_RW", "SPECIAL", "INPUT_SECTION_FLAGS",
954 "EXCLUDE_FILE", "CONSTANT", "INPUT_DYNAMIC_LIST", "','", "';'", "')'",
955 "'['", "']'", "'!'", "'~'", "$accept", "file", "filename", "defsym_expr",
956 "@1", "mri_script_file", "@2", "mri_script_lines", "mri_script_command",
957 "@3", "ordernamelist", "mri_load_name_list", "mri_abs_name_list",
958 "casesymlist", "extern_name_list", "@4", "extern_name_list_body",
959 "script_file", "@5", "ifile_list", "ifile_p1", "@6", "@7", "input_list",
960 "@8", "@9", "@10", "sections", "sec_or_group_p1", "statement_anywhere",
961 "@11", "wildcard_name", "wildcard_spec", "sect_flag_list", "sect_flags",
962 "exclude_name_list", "file_NAME_list", "input_section_spec_no_keep",
963 "input_section_spec", "@12", "statement", "@13", "@14", "statement_list",
964 "statement_list_opt", "length", "fill_exp", "fill_opt", "assign_op",
965 "end", "assignment", "opt_comma", "memory", "memory_spec_list_opt",
966 "memory_spec_list", "memory_spec", "@15", "@16", "origin_spec",
967 "length_spec", "attributes_opt", "attributes_list", "attributes_string",
968 "startup", "high_level_library", "high_level_library_NAME_list",
969 "low_level_library", "low_level_library_NAME_list",
970 "floating_point_support", "nocrossref_list", "mustbe_exp", "@17", "exp",
971 "memspec_at_opt", "opt_at", "opt_align", "opt_subalign",
972 "sect_constraint", "section", "@18", "@19", "@20", "@21", "@22", "@23",
973 "@24", "@25", "@26", "@27", "@28", "@29", "@30", "type", "atype",
974 "opt_exp_with_type", "opt_exp_without_type", "opt_nocrossrefs",
975 "memspec_opt", "phdr_opt", "overlay_section", "@31", "@32", "@33",
976 "phdrs", "phdr_list", "phdr", "@34", "@35", "phdr_type",
977 "phdr_qualifiers", "phdr_val", "dynamic_list_file", "@36",
978 "dynamic_list_nodes", "dynamic_list_node", "dynamic_list_tag",
979 "version_script_file", "@37", "version", "@38", "vers_nodes",
980 "vers_node", "verdep", "vers_tag", "vers_defns", "@39", "@40",
986 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
988 static const yytype_uint16 yytoknum[] =
990 0, 256, 257, 258, 259, 260, 61, 261, 262, 263,
991 264, 265, 266, 267, 268, 63, 58, 269, 270, 124,
992 94, 38, 271, 272, 60, 62, 273, 274, 275, 276,
993 43, 45, 42, 47, 37, 277, 278, 40, 279, 280,
994 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
995 291, 292, 293, 294, 295, 296, 297, 123, 125, 298,
996 299, 300, 301, 302, 303, 304, 305, 306, 307, 308,
997 309, 310, 311, 312, 313, 314, 315, 316, 317, 318,
998 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
999 329, 330, 331, 332, 333, 334, 335, 336, 337, 338,
1000 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
1001 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
1002 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
1003 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
1004 379, 380, 381, 44, 59, 41, 91, 93, 33, 126
1008 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
1009 static const yytype_uint16 yyr1[] =
1011 0, 150, 151, 151, 151, 151, 151, 152, 154, 153,
1012 156, 155, 157, 157, 158, 158, 158, 158, 158, 158,
1013 158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
1014 158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
1015 159, 158, 158, 158, 160, 160, 160, 161, 161, 162,
1016 162, 163, 163, 163, 165, 164, 166, 166, 166, 168,
1017 167, 169, 169, 170, 170, 170, 170, 170, 170, 170,
1018 170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
1019 170, 170, 171, 170, 170, 172, 170, 170, 170, 170,
1020 170, 170, 170, 173, 173, 173, 173, 173, 173, 174,
1021 173, 175, 173, 176, 173, 177, 178, 178, 178, 179,
1022 179, 180, 179, 181, 181, 181, 182, 182, 182, 182,
1023 182, 182, 182, 182, 182, 182, 183, 183, 184, 185,
1024 185, 186, 186, 187, 187, 187, 187, 187, 187, 188,
1025 189, 188, 190, 190, 190, 190, 190, 190, 190, 190,
1026 191, 190, 192, 190, 193, 193, 194, 194, 195, 195,
1027 195, 195, 195, 196, 197, 197, 198, 198, 198, 198,
1028 198, 198, 198, 198, 199, 199, 200, 200, 200, 200,
1029 201, 201, 202, 203, 203, 204, 204, 206, 205, 207,
1030 205, 208, 209, 210, 210, 211, 211, 212, 212, 213,
1031 214, 214, 215, 215, 216, 217, 217, 218, 218, 219,
1032 219, 219, 221, 220, 222, 222, 222, 222, 222, 222,
1033 222, 222, 222, 222, 222, 222, 222, 222, 222, 222,
1034 222, 222, 222, 222, 222, 222, 222, 222, 222, 222,
1035 222, 222, 222, 222, 222, 222, 222, 222, 222, 222,
1036 222, 222, 222, 222, 222, 222, 222, 222, 222, 222,
1037 222, 223, 223, 224, 224, 225, 225, 226, 226, 227,
1038 227, 227, 227, 229, 230, 231, 232, 233, 228, 234,
1039 235, 236, 237, 238, 228, 239, 240, 228, 241, 228,
1040 242, 242, 242, 242, 242, 243, 243, 243, 244, 244,
1041 244, 244, 245, 245, 246, 246, 247, 247, 248, 248,
1042 249, 250, 251, 252, 249, 253, 254, 254, 256, 257,
1043 255, 258, 259, 259, 259, 260, 260, 262, 261, 263,
1044 263, 264, 265, 267, 266, 269, 268, 270, 270, 271,
1045 271, 271, 272, 272, 273, 273, 273, 273, 273, 274,
1046 274, 274, 274, 275, 274, 276, 274, 274, 274, 274,
1047 274, 274, 274, 277, 277
1050 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
1051 static const yytype_uint8 yyr2[] =
1053 0, 2, 2, 2, 2, 2, 2, 1, 0, 4,
1054 0, 2, 3, 0, 2, 4, 1, 1, 2, 1,
1055 4, 4, 3, 2, 4, 3, 4, 4, 4, 4,
1056 4, 2, 2, 2, 4, 4, 2, 2, 2, 2,
1057 0, 5, 2, 0, 3, 2, 0, 1, 3, 1,
1058 3, 0, 1, 3, 0, 2, 1, 2, 3, 0,
1059 2, 2, 0, 1, 1, 1, 1, 1, 1, 1,
1060 1, 1, 1, 4, 4, 4, 4, 8, 4, 1,
1061 1, 4, 0, 5, 4, 0, 5, 4, 4, 3,
1062 3, 6, 4, 1, 3, 2, 1, 3, 2, 0,
1063 5, 0, 7, 0, 6, 4, 2, 2, 0, 4,
1064 2, 0, 7, 1, 1, 1, 1, 5, 4, 4,
1065 7, 7, 7, 7, 8, 4, 1, 3, 4, 2,
1066 1, 3, 1, 1, 2, 3, 4, 4, 5, 1,
1067 0, 5, 2, 1, 1, 1, 4, 1, 4, 4,
1068 0, 8, 0, 5, 2, 1, 0, 1, 1, 1,
1069 1, 1, 1, 1, 2, 0, 1, 1, 1, 1,
1070 1, 1, 1, 1, 1, 1, 3, 3, 6, 6,
1071 1, 0, 4, 1, 0, 3, 1, 0, 7, 0,
1072 5, 3, 3, 0, 3, 1, 2, 1, 2, 4,
1073 4, 3, 3, 1, 4, 3, 0, 1, 1, 0,
1074 2, 3, 0, 2, 2, 3, 4, 2, 2, 2,
1075 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1076 3, 3, 3, 3, 3, 3, 5, 3, 3, 4,
1077 1, 1, 4, 4, 4, 4, 4, 4, 4, 6,
1078 6, 6, 4, 6, 4, 1, 6, 6, 6, 4,
1079 4, 3, 0, 4, 0, 4, 0, 4, 0, 1,
1080 1, 1, 0, 0, 0, 0, 0, 0, 19, 0,
1081 0, 0, 0, 0, 18, 0, 0, 7, 0, 5,
1082 1, 1, 1, 1, 1, 3, 0, 2, 3, 2,
1083 6, 10, 2, 1, 0, 1, 2, 0, 0, 3,
1084 0, 0, 0, 0, 11, 4, 0, 2, 0, 0,
1085 6, 1, 0, 3, 5, 0, 3, 0, 2, 1,
1086 2, 4, 2, 0, 2, 0, 5, 1, 2, 4,
1087 5, 6, 1, 2, 0, 2, 4, 4, 8, 1,
1088 1, 3, 3, 0, 9, 0, 7, 1, 3, 1,
1092 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
1093 STATE-NUM when YYTABLE doesn't specify something else to do. Zero
1094 means the default is an error. */
1095 static const yytype_uint16 yydefact[] =
1097 0, 59, 10, 8, 333, 327, 0, 2, 62, 3,
1098 13, 6, 0, 4, 0, 5, 0, 1, 60, 11,
1099 0, 344, 0, 334, 337, 0, 328, 329, 0, 0,
1100 0, 0, 0, 79, 0, 80, 0, 0, 0, 0,
1101 0, 0, 0, 0, 0, 0, 0, 207, 208, 0,
1102 0, 82, 0, 0, 0, 111, 0, 72, 61, 64,
1103 70, 0, 63, 66, 67, 68, 69, 65, 71, 0,
1104 16, 0, 0, 0, 0, 17, 0, 0, 0, 19,
1105 46, 0, 0, 0, 0, 0, 0, 51, 54, 0,
1106 0, 0, 350, 361, 349, 357, 359, 0, 0, 344,
1107 338, 357, 359, 0, 0, 330, 212, 173, 172, 171,
1108 170, 169, 168, 167, 166, 212, 108, 316, 0, 0,
1109 0, 0, 7, 85, 184, 0, 0, 0, 0, 0,
1110 0, 0, 0, 206, 209, 0, 0, 0, 0, 0,
1111 0, 54, 175, 174, 110, 0, 0, 40, 0, 240,
1112 255, 0, 0, 0, 0, 0, 0, 0, 0, 241,
1113 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1114 0, 0, 0, 0, 0, 0, 14, 0, 49, 31,
1115 47, 32, 18, 33, 23, 0, 36, 0, 37, 52,
1116 38, 39, 0, 42, 12, 9, 0, 0, 0, 0,
1117 345, 0, 0, 332, 176, 0, 177, 0, 0, 89,
1118 90, 0, 0, 62, 187, 0, 0, 181, 186, 0,
1119 0, 0, 0, 0, 0, 0, 201, 203, 181, 181,
1120 209, 0, 93, 96, 0, 0, 0, 0, 0, 0,
1121 0, 0, 0, 0, 0, 13, 0, 0, 218, 214,
1122 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1123 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1124 217, 219, 0, 0, 0, 0, 0, 0, 0, 0,
1125 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1126 0, 0, 0, 0, 25, 0, 0, 45, 0, 0,
1127 0, 22, 0, 0, 56, 55, 355, 0, 0, 339,
1128 352, 362, 351, 358, 360, 0, 331, 213, 273, 105,
1129 0, 279, 285, 107, 106, 318, 315, 317, 0, 76,
1130 78, 335, 193, 189, 182, 180, 0, 0, 92, 73,
1131 74, 84, 109, 199, 200, 0, 204, 0, 209, 210,
1132 87, 99, 95, 98, 0, 0, 81, 0, 75, 212,
1133 212, 0, 88, 0, 27, 28, 43, 29, 30, 215,
1134 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1135 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1136 238, 237, 235, 234, 233, 228, 227, 231, 232, 230,
1137 229, 226, 225, 223, 224, 220, 221, 222, 15, 26,
1138 24, 50, 48, 44, 20, 21, 35, 34, 53, 57,
1139 0, 0, 346, 347, 0, 342, 340, 0, 296, 288,
1140 0, 296, 0, 0, 86, 0, 0, 184, 185, 0,
1141 202, 205, 211, 0, 103, 94, 97, 0, 83, 0,
1142 0, 0, 336, 41, 0, 248, 254, 0, 0, 252,
1143 0, 239, 216, 243, 242, 244, 245, 0, 0, 259,
1144 260, 247, 0, 246, 0, 58, 363, 360, 353, 343,
1145 341, 0, 0, 296, 0, 264, 108, 303, 0, 304,
1146 286, 321, 322, 0, 197, 0, 0, 195, 0, 0,
1147 91, 0, 0, 101, 178, 179, 0, 0, 0, 0,
1148 0, 0, 0, 0, 236, 364, 0, 0, 0, 290,
1149 291, 292, 293, 294, 297, 0, 0, 0, 0, 299,
1150 0, 266, 0, 302, 305, 264, 0, 325, 0, 319,
1151 0, 198, 194, 196, 0, 181, 190, 100, 0, 0,
1152 112, 249, 250, 251, 253, 256, 257, 258, 356, 0,
1153 363, 295, 0, 298, 0, 0, 268, 289, 268, 108,
1154 0, 322, 0, 0, 77, 212, 0, 104, 0, 348,
1155 0, 296, 0, 0, 0, 274, 280, 0, 0, 323,
1156 0, 320, 191, 0, 188, 102, 354, 0, 0, 263,
1157 0, 0, 272, 0, 287, 326, 322, 212, 0, 300,
1158 265, 0, 269, 270, 271, 0, 281, 324, 192, 0,
1159 267, 275, 310, 296, 156, 0, 0, 133, 115, 114,
1160 158, 159, 160, 161, 162, 0, 0, 0, 0, 0,
1161 143, 145, 150, 0, 0, 0, 144, 0, 116, 0,
1162 0, 139, 147, 155, 157, 0, 0, 0, 311, 282,
1163 301, 0, 0, 0, 152, 212, 0, 140, 0, 0,
1164 113, 0, 132, 181, 0, 134, 0, 0, 154, 276,
1165 212, 142, 0, 307, 0, 0, 0, 0, 0, 0,
1166 0, 0, 0, 156, 0, 163, 0, 0, 126, 0,
1167 130, 0, 0, 135, 0, 181, 181, 0, 307, 0,
1168 156, 0, 262, 0, 0, 146, 0, 118, 0, 0,
1169 119, 125, 0, 149, 0, 113, 0, 0, 128, 0,
1170 129, 131, 137, 136, 181, 262, 148, 0, 306, 0,
1171 308, 0, 0, 0, 0, 0, 153, 0, 141, 127,
1172 117, 138, 308, 312, 0, 165, 0, 0, 0, 0,
1173 0, 0, 165, 308, 261, 212, 0, 283, 121, 120,
1174 0, 122, 123, 0, 277, 165, 164, 309, 181, 124,
1175 151, 181, 313, 284, 278, 181, 314
1178 /* YYDEFGOTO[NTERM-NUM]. */
1179 static const yytype_int16 yydefgoto[] =
1181 -1, 6, 123, 11, 12, 9, 10, 19, 90, 245,
1182 182, 181, 179, 190, 191, 192, 305, 7, 8, 18,
1183 58, 136, 213, 235, 443, 549, 502, 59, 207, 323,
1184 140, 648, 649, 699, 650, 701, 673, 651, 652, 697,
1185 653, 666, 693, 654, 655, 656, 694, 767, 115, 144,
1186 61, 704, 62, 216, 217, 218, 332, 437, 545, 594,
1187 436, 496, 497, 63, 64, 228, 65, 229, 66, 231,
1188 695, 205, 250, 740, 531, 566, 585, 615, 324, 428,
1189 602, 624, 708, 781, 430, 603, 622, 683, 778, 431,
1190 536, 486, 525, 484, 485, 489, 535, 712, 755, 625,
1191 682, 763, 785, 67, 208, 327, 432, 573, 492, 539,
1192 571, 15, 16, 26, 27, 103, 13, 14, 68, 69,
1193 23, 24, 427, 97, 98, 518, 421, 516
1196 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1198 #define YYPACT_NINF -714
1199 static const yytype_int16 yypact[] =
1201 247, -714, -714, -714, -714, -714, 79, -714, -714, -714,
1202 -714, -714, 81, -714, -24, -714, 35, -714, 907, 1618,
1203 112, 103, 67, -24, -714, 109, 35, -714, 1006, 70,
1204 75, 188, 105, -714, 148, -714, 150, 171, 155, 195,
1205 205, 213, 217, 221, 224, 235, 239, -714, -714, 245,
1206 250, -714, 256, 265, 271, -714, 278, -714, -714, -714,
1207 -714, 189, -714, -714, -714, -714, -714, -714, -714, 162,
1208 -714, 313, 150, 318, 754, -714, 321, 326, 330, -714,
1209 -714, 333, 336, 345, 754, 347, 350, 359, -714, 360,
1210 254, 754, -714, 365, -714, 369, 371, 332, 232, 103,
1211 -714, -714, -714, 334, 244, -714, -714, -714, -714, -714,
1212 -714, -714, -714, -714, -714, -714, -714, -714, 387, 391,
1213 393, 394, -714, -714, 43, 397, 398, 399, 150, 150,
1214 402, 150, 4, -714, 403, 41, 372, 150, 404, 410,
1215 378, -714, -714, -714, -714, 373, 32, -714, 45, -714,
1216 -714, 754, 754, 754, 379, 392, 395, 400, 405, -714,
1217 414, 423, 424, 425, 426, 428, 430, 432, 433, 435,
1218 436, 437, 438, 439, 754, 754, 1432, 508, -714, 285,
1219 -714, 291, 17, -714, -714, 595, 1795, 292, -714, -714,
1220 293, -714, 446, -714, -714, 1795, 382, 109, 109, 296,
1221 117, 383, 335, 117, -714, 754, -714, 258, 46, -714,
1222 -714, -28, 319, -714, -714, 150, 419, -2, -714, 337,
1223 339, 342, 343, 348, 349, 352, -714, -714, 100, 108,
1224 25, 354, -714, -714, 444, 14, 41, 357, 476, 489,
1225 754, 363, -24, 754, 754, -714, 754, 754, -714, -714,
1226 1045, 754, 754, 754, 754, 754, 497, 500, 754, 509,
1227 514, 516, 517, 754, 754, 521, 522, 754, 754, 525,
1228 -714, -714, 754, 754, 754, 754, 754, 754, 754, 754,
1229 754, 754, 754, 754, 754, 754, 754, 754, 754, 754,
1230 754, 754, 754, 754, 1795, 528, 529, -714, 531, 754,
1231 754, 1795, 356, 532, -714, 39, -714, 396, 406, -714,
1232 -714, 533, -714, -714, -714, -64, -714, 1795, 1006, -714,
1233 150, -714, -714, -714, -714, -714, -714, -714, 537, -714,
1234 -714, 223, 506, -714, -714, -714, 43, 540, -714, -714,
1235 -714, -714, -714, -714, -714, 150, -714, 150, 403, -714,
1236 -714, -714, -714, -714, 511, 48, -714, 18, -714, -714,
1237 -714, 1452, -714, 36, 1795, 1795, 1641, 1795, 1795, -714,
1238 916, 1065, 1472, 1492, 1085, 408, 407, 1105, 409, 418,
1239 421, 429, 1512, 1532, 434, 440, 1125, 1559, 441, 1755,
1240 1639, 1811, 1826, 1840, 1853, 999, 999, 390, 390, 390,
1241 390, 314, 314, 163, 163, -714, -714, -714, 1795, 1795,
1242 1795, -714, -714, -714, 1795, 1795, -714, -714, -714, -714,
1243 545, 109, 133, 117, 496, -714, -714, -48, 633, -714,
1244 716, 633, 754, 412, -714, 2, 552, 43, -714, 449,
1245 -714, -714, -714, 41, -714, -714, -714, 534, -714, 450,
1246 458, 569, -714, -714, 754, -714, -714, 754, 754, -714,
1247 754, -714, -714, -714, -714, -714, -714, 754, 754, -714,
1248 -714, -714, 571, -714, 754, -714, 460, 561, -714, -714,
1249 -714, 374, 541, 1667, 564, 480, -714, -714, 1775, 492,
1250 -714, 1795, 28, 580, -714, 601, 3, -714, 515, 570,
1251 -714, 31, 41, -714, -714, -714, 465, 1145, 1174, 1194,
1252 1214, 1234, 1254, 467, 1795, 117, 557, 109, 109, -714,
1253 -714, -714, -714, -714, -714, 471, 754, 234, 602, -714,
1254 582, 583, 413, -714, -714, 480, 563, 590, 591, -714,
1255 484, -714, -714, -714, 624, 488, -714, -714, 78, 41,
1256 -714, -714, -714, -714, -714, -714, -714, -714, -714, 491,
1257 460, -714, 1274, -714, 754, 603, 539, -714, 539, -714,
1258 754, 28, 754, 495, -714, -714, 548, -714, 86, 117,
1259 585, 236, 1303, 754, 607, -714, -714, 427, 1323, -714,
1260 1343, -714, -714, 639, -714, -714, -714, 613, 636, -714,
1261 1363, 754, 130, 598, -714, -714, 28, -714, 754, -714,
1262 -714, 1383, -714, -714, -714, 604, -714, -714, -714, 1403,
1263 -714, -714, -714, 621, 817, 51, 644, 877, -714, -714,
1264 -714, -714, -714, -714, -714, 625, 628, 629, 150, 630,
1265 -714, -714, -714, 631, 645, 646, -714, 84, -714, 651,
1266 12, -714, -714, -714, 817, 623, 653, 189, -714, -714,
1267 -714, 242, 320, 82, -714, -714, 654, -714, 689, 82,
1268 -714, 657, -714, -45, 84, 658, 84, 659, -714, -714,
1269 -714, -714, 641, 674, 663, 664, 558, 665, 560, 669,
1270 671, 566, 576, 817, 577, -714, 754, 16, -714, -12,
1271 -714, 22, 80, -714, 84, 135, -17, 84, 674, 578,
1272 817, 705, 627, 82, 82, -714, 82, -714, 82, 82,
1273 -714, -714, 688, -714, 1579, 581, 584, 726, -714, 82,
1274 -714, -714, -714, -714, 149, 627, -714, 673, -714, 708,
1275 -714, 589, 592, 26, 594, 596, -714, 731, -714, -714,
1276 -714, -714, -714, -714, 736, 104, 600, 605, 82, 606,
1277 611, 614, 104, -714, -714, -714, 745, -714, -714, -714,
1278 615, -714, -714, 189, -714, 104, -714, -714, 488, -714,
1279 -714, 488, -714, -714, -714, 488, -714
1282 /* YYPGOTO[NTERM-NUM]. */
1283 static const yytype_int16 yypgoto[] =
1285 -714, -714, -68, -714, -714, -714, -714, 507, -714, -714,
1286 -714, -714, -714, -714, 620, -714, -714, -714, -714, 549,
1287 -714, -714, -714, -221, -714, -714, -714, -714, -444, -13,
1288 -714, -105, -308, -714, -714, 47, -601, 68, -714, -714,
1289 110, -714, -714, -714, -653, -714, 1, -713, -714, -629,
1290 -565, -216, -714, 340, -714, 442, -714, -714, -714, -714,
1291 -714, -714, 274, -714, -714, -714, -714, -714, -714, -205,
1292 -104, -714, -74, 37, 238, -714, 203, -714, -714, -714,
1293 -714, -714, -714, -714, -714, -714, -714, -714, -714, -714,
1294 -714, -714, -714, -459, 355, -714, -714, 71, -676, -714,
1295 -714, -714, -714, -714, -714, -714, -714, -714, -714, -532,
1296 -714, -714, -714, -714, 750, -714, -714, -714, -714, -714,
1297 546, -20, -714, 684, -11, -714, -714, 227
1300 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
1301 positive, shift that token. If negative, reduce the rule which
1302 number is the opposite. If zero, do what YYDEFACT says.
1303 If YYTABLE_NINF, syntax error. */
1304 #define YYTABLE_NINF -336
1305 static const yytype_int16 yytable[] =
1307 176, 336, 204, 100, 147, 60, 494, 494, 122, 727,
1308 186, 206, 345, 347, 104, 357, 675, 195, 352, 353,
1309 725, 297, 352, 353, 528, 349, 670, 628, 681, 230,
1310 670, 628, 537, 21, -183, 352, 353, 628, 243, 589,
1311 722, 628, 532, 419, 629, 232, 233, 214, 629, 774,
1312 325, 246, 445, 446, 629, 658, -183, 737, 629, 657,
1313 222, 223, 782, 225, 227, 425, 671, 636, 637, 237,
1314 671, 636, 637, 705, 617, 706, 762, 248, 249, 17,
1315 426, 479, 352, 353, 670, 20, 670, 775, 670, 657,
1316 352, 353, 25, 21, 452, 628, 480, 628, 335, 628,
1317 270, 271, 703, 294, 326, 22, 734, 92, 215, 659,
1318 765, 301, 629, 92, 629, 328, 629, 329, 91, 354,
1319 766, 310, 598, 354, 99, 587, 335, 116, 657, 538,
1320 733, 317, 117, 728, 684, 685, 354, 310, 671, 636,
1321 637, 335, 120, 442, 780, 657, 234, 333, 542, 226,
1322 495, 495, 645, 447, 122, 644, 645, 355, 676, 356,
1323 298, 355, 647, 448, 626, 22, 361, 729, 348, 364,
1324 365, 758, 367, 368, 355, 244, 547, 370, 371, 372,
1325 373, 374, 420, 354, 377, 121, 307, 308, 247, 382,
1326 383, 354, 125, 386, 387, 288, 289, 290, 389, 390,
1327 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
1328 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
1329 687, 355, 501, 577, 645, 414, 415, 28, 124, 355,
1330 93, 595, 126, 94, 95, 96, 93, 118, 119, 94,
1331 101, 102, 127, 335, 311, 344, 670, 312, 313, 314,
1332 128, 335, 429, 346, 129, 449, 450, 628, 130, 434,
1333 311, 131, 318, 312, 313, 477, 612, 613, 614, 29,
1334 30, 31, 132, 527, 629, 597, 133, 440, 335, 441,
1335 732, 548, 134, 32, 33, 34, 35, 135, 36, 37,
1336 38, 39, 335, 137, 751, 145, 684, 685, 40, 41,
1337 42, 43, 138, 519, 520, 521, 522, 523, 139, 44,
1338 45, 46, 47, 48, 49, 141, 319, 146, 60, 50,
1339 51, 52, 148, 320, 670, 177, 53, 54, 578, 576,
1340 178, 321, 142, 143, 180, 628, 43, 183, 55, 672,
1341 184, 686, 677, 100, 286, 287, 288, 289, 290, 185,
1342 56, 187, 629, 188, 483, 322, 488, 483, 491, 416,
1343 417, 53, 54, 189, 193, 194, 672, 57, 672, 196,
1344 1, 2, 3, 55, 689, 690, 200, 149, 150, 524,
1345 507, 4, 687, 508, 509, 197, 510, 198, 203, 5,
1346 199, 209, 202, 511, 512, 210, 731, 211, 212, 672,
1347 514, 219, 220, 221, 151, 152, 224, 230, 238, 236,
1348 476, 153, 154, 155, 239, 240, 251, 318, 284, 285,
1349 286, 287, 288, 289, 290, 156, 157, 158, 295, 252,
1350 242, 318, 253, 159, 296, 302, 303, 254, 160, 306,
1351 309, 315, 255, 519, 520, 521, 522, 523, 161, 567,
1352 304, 256, 562, 162, 163, 164, 165, 166, 167, 168,
1353 257, 258, 259, 260, 330, 261, 169, 262, 170, 263,
1354 264, 592, 265, 266, 267, 268, 269, 334, 320, 316,
1355 337, 351, 359, 171, 338, 604, 321, 339, 340, 172,
1356 582, 43, 320, 341, 342, 360, 588, 343, 590, 350,
1357 321, 375, 358, 618, 376, 43, 559, 560, 362, 600,
1358 322, 149, 150, 378, 292, 173, 53, 54, 379, 524,
1359 380, 381, 174, 175, 322, 384, 385, 611, 55, 388,
1360 53, 54, 411, 412, 619, 413, 418, 424, 151, 152,
1361 422, 433, 55, 435, 439, 153, 154, 155, 444, 475,
1362 423, 460, 461, 478, 463, 493, 688, 691, 692, 156,
1363 157, 158, 783, 464, 700, 784, 465, 159, 498, 786,
1364 664, 503, 160, 506, 466, 513, 709, 517, 526, 469,
1365 529, 530, 161, 534, 540, 470, 473, 162, 163, 164,
1366 165, 166, 167, 168, 500, 504, 730, 688, 149, 150,
1367 169, 299, 170, 505, 515, 541, 546, 544, 741, 742,
1368 550, 700, 557, 744, 745, 558, 561, 171, 563, 564,
1369 569, 565, 724, 172, 750, 151, 152, 570, 572, 574,
1370 575, 335, 153, 154, 155, 579, 149, 150, 730, 591,
1371 583, 584, 593, 596, 601, 607, 156, 157, 158, 173,
1372 608, 293, 609, 770, 159, 616, 174, 175, 527, 160,
1373 660, 621, 661, 151, 152, 662, 663, 665, 667, 161,
1374 481, 154, 155, 482, 162, 163, 164, 165, 166, 167,
1375 168, 679, 668, 669, 156, 157, 158, 169, 674, 170,
1376 680, 696, 159, 698, 702, -113, 707, 160, 710, 711,
1377 713, 714, 716, 715, 171, 717, 718, 161, 719, 738,
1378 172, 720, 162, 163, 164, 165, 166, 167, 168, 149,
1379 150, 721, 723, 736, 746, 169, -133, 170, 739, 748,
1380 749, 753, 487, 754, 756, 761, 173, 757, 300, 759,
1381 764, 760, 171, 174, 175, 768, 151, 152, 172, 777,
1382 769, 771, 366, 153, 154, 155, 772, 149, 150, 773,
1383 779, 241, 331, 743, 678, 726, 776, 156, 157, 158,
1384 543, 586, 752, 568, 173, 159, 105, 499, 438, 735,
1385 160, 174, 175, 201, 151, 152, 490, 580, 363, 0,
1386 161, 153, 154, 155, 0, 162, 163, 164, 165, 166,
1387 167, 168, 0, 0, 0, 156, 157, 158, 169, 0,
1388 170, 0, 0, 159, 0, 0, 0, 0, 160, 0,
1389 0, 627, 0, 0, 0, 171, 0, 0, 161, 0,
1390 0, 172, 628, 162, 163, 164, 165, 166, 167, 168,
1391 0, 0, 0, 0, 0, 0, 169, 0, 170, 629,
1392 0, 0, 0, 0, 0, 0, 0, 173, 630, 631,
1393 632, 633, 634, 171, 174, 175, 0, 0, 0, 172,
1394 0, 635, 636, 637, 0, 0, 0, 0, 0, 0,
1395 0, 0, 638, 106, 107, 108, 109, 110, 111, 112,
1396 113, 114, 0, 0, 0, 173, 0, 0, 0, 0,
1397 0, 0, 174, 175, 0, 0, 0, 0, 0, 0,
1398 639, 28, 640, 0, -113, 0, 641, 0, 0, 0,
1399 53, 54, 0, 0, 0, 0, 0, 0, 0, 0,
1400 0, 272, 642, 273, 274, 275, 276, 277, 278, 279,
1401 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
1402 290, 0, 643, 29, 30, 31, 644, 645, 0, 0,
1403 0, 646, 0, 647, 0, 0, 0, 32, 33, 34,
1404 35, 0, 36, 37, 38, 39, 0, 0, 0, 0,
1405 0, 0, 40, 41, 42, 43, 0, 0, 0, 0,
1406 0, 0, 0, 44, 45, 46, 47, 48, 49, 0,
1407 0, 0, 0, 50, 51, 52, 0, 0, 0, 0,
1408 53, 54, 106, 107, 108, 109, 110, 111, 112, 113,
1409 114, 0, 55, 280, 281, 282, 283, 284, 285, 286,
1410 287, 288, 289, 290, 56, 0, 0, 0, 0, 0,
1411 -335, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1412 0, 57, 0, 0, 0, 0, 0, 0, 0, 454,
1413 272, 455, 273, 274, 275, 276, 277, 278, 279, 280,
1414 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
1415 272, 0, 273, 274, 275, 276, 277, 278, 279, 280,
1416 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
1417 272, 0, 273, 274, 275, 276, 277, 278, 279, 280,
1418 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
1419 272, 0, 273, 274, 275, 276, 277, 278, 279, 280,
1420 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
1421 272, 0, 273, 274, 275, 276, 277, 278, 279, 280,
1422 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
1423 272, 0, 273, 274, 275, 276, 277, 278, 279, 280,
1424 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
1425 0, 0, 0, 0, 0, 0, 0, 0, 0, 272,
1426 369, 273, 274, 275, 276, 277, 278, 279, 280, 281,
1427 282, 283, 284, 285, 286, 287, 288, 289, 290, 272,
1428 456, 273, 274, 275, 276, 277, 278, 279, 280, 281,
1429 282, 283, 284, 285, 286, 287, 288, 289, 290, 272,
1430 459, 273, 274, 275, 276, 277, 278, 279, 280, 281,
1431 282, 283, 284, 285, 286, 287, 288, 289, 290, 272,
1432 462, 273, 274, 275, 276, 277, 278, 279, 280, 281,
1433 282, 283, 284, 285, 286, 287, 288, 289, 290, 272,
1434 471, 273, 274, 275, 276, 277, 278, 279, 280, 281,
1435 282, 283, 284, 285, 286, 287, 288, 289, 290, 272,
1436 551, 273, 274, 275, 276, 277, 278, 279, 280, 281,
1437 282, 283, 284, 285, 286, 287, 288, 289, 290, 0,
1438 0, 0, 0, 0, 0, 0, 0, 0, 272, 552,
1439 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1440 283, 284, 285, 286, 287, 288, 289, 290, 272, 553,
1441 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1442 283, 284, 285, 286, 287, 288, 289, 290, 272, 554,
1443 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1444 283, 284, 285, 286, 287, 288, 289, 290, 272, 555,
1445 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1446 283, 284, 285, 286, 287, 288, 289, 290, 272, 556,
1447 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1448 283, 284, 285, 286, 287, 288, 289, 290, 272, 581,
1449 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1450 283, 284, 285, 286, 287, 288, 289, 290, 0, 0,
1451 0, 0, 0, 0, 0, 0, 0, 272, 599, 273,
1452 274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
1453 284, 285, 286, 287, 288, 289, 290, 272, 605, 273,
1454 274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
1455 284, 285, 286, 287, 288, 289, 290, 272, 606, 273,
1456 274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
1457 284, 285, 286, 287, 288, 289, 290, 272, 610, 273,
1458 274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
1459 284, 285, 286, 287, 288, 289, 290, 272, 620, 273,
1460 274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
1461 284, 285, 286, 287, 288, 289, 290, 272, 623, 273,
1462 274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
1463 284, 285, 286, 287, 288, 289, 290, 0, 0, 0,
1464 0, 0, 0, 0, 272, 291, 273, 274, 275, 276,
1465 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
1466 287, 288, 289, 290, 272, 451, 273, 274, 275, 276,
1467 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
1468 287, 288, 289, 290, 0, 457, 0, 0, 0, 0,
1469 0, 0, 70, 0, 0, 0, 0, 0, 0, 0,
1470 0, 0, 0, 0, 0, 458, 0, 0, 0, 0,
1471 0, 0, 0, 0, 0, 70, 0, 0, 0, 0,
1472 0, 0, 0, 0, 0, 467, 71, 274, 275, 276,
1473 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
1474 287, 288, 289, 290, 0, 468, 0, 453, 0, 71,
1475 0, 0, 272, 72, 273, 274, 275, 276, 277, 278,
1476 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
1477 289, 290, 472, 0, 527, 0, 72, 0, 0, 0,
1478 0, 0, 0, 0, 0, 0, 0, 0, 73, 0,
1479 0, 0, 747, 0, 74, 75, 76, 77, 78, -43,
1480 79, 80, 81, 0, 82, 83, 0, 84, 85, 86,
1481 0, 73, 0, 0, 87, 88, 89, 74, 75, 76,
1482 77, 78, 0, 79, 80, 81, 0, 82, 83, 0,
1483 84, 85, 86, 0, 0, 0, 0, 87, 88, 89,
1484 272, 474, 273, 274, 275, 276, 277, 278, 279, 280,
1485 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
1486 272, 533, 273, 274, 275, 276, 277, 278, 279, 280,
1487 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
1488 272, 0, 273, 274, 275, 276, 277, 278, 279, 280,
1489 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
1490 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1491 285, 286, 287, 288, 289, 290, 276, 277, 278, 279,
1492 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
1493 290, 277, 278, 279, 280, 281, 282, 283, 284, 285,
1494 286, 287, 288, 289, 290, 278, 279, 280, 281, 282,
1495 283, 284, 285, 286, 287, 288, 289, 290
1498 static const yytype_int16 yycheck[] =
1500 74, 217, 106, 23, 72, 18, 4, 4, 4, 21,
1501 84, 115, 228, 229, 25, 236, 4, 91, 4, 5,
1502 4, 4, 4, 5, 483, 230, 4, 15, 657, 4,
1503 4, 15, 4, 57, 36, 4, 5, 15, 6, 571,
1504 693, 15, 486, 4, 32, 4, 5, 4, 32, 762,
1505 4, 6, 4, 5, 32, 4, 58, 710, 32, 624,
1506 128, 129, 775, 131, 132, 129, 54, 55, 56, 137,
1507 54, 55, 56, 674, 606, 676, 752, 151, 152, 0,
1508 144, 129, 4, 5, 4, 4, 4, 763, 4, 654,
1509 4, 5, 57, 57, 58, 15, 144, 15, 143, 15,
1510 174, 175, 147, 177, 58, 129, 707, 4, 65, 58,
1511 6, 185, 32, 4, 32, 143, 32, 145, 6, 105,
1512 16, 4, 581, 105, 57, 569, 143, 57, 693, 101,
1513 147, 205, 57, 145, 54, 55, 105, 4, 54, 55,
1514 56, 143, 37, 348, 773, 710, 105, 215, 145, 145,
1515 148, 148, 140, 105, 4, 139, 140, 143, 146, 145,
1516 143, 143, 146, 145, 623, 129, 240, 145, 143, 243,
1517 244, 145, 246, 247, 143, 143, 145, 251, 252, 253,
1518 254, 255, 143, 105, 258, 37, 197, 198, 143, 263,
1519 264, 105, 37, 267, 268, 32, 33, 34, 272, 273,
1520 274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
1521 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
1522 140, 143, 443, 145, 140, 299, 300, 4, 57, 143,
1523 127, 145, 37, 130, 131, 132, 127, 49, 50, 130,
1524 131, 132, 37, 143, 127, 145, 4, 130, 131, 132,
1525 37, 143, 320, 145, 37, 359, 360, 15, 37, 36,
1526 127, 37, 4, 130, 131, 132, 136, 137, 138, 46,
1527 47, 48, 37, 37, 32, 39, 37, 345, 143, 347,
1528 145, 502, 37, 60, 61, 62, 63, 37, 65, 66,
1529 67, 68, 143, 37, 145, 133, 54, 55, 75, 76,
1530 77, 78, 37, 69, 70, 71, 72, 73, 37, 86,
1531 87, 88, 89, 90, 91, 37, 58, 4, 331, 96,
1532 97, 98, 4, 65, 4, 4, 103, 104, 549, 545,
1533 4, 73, 143, 144, 4, 15, 78, 4, 115, 647,
1534 4, 99, 650, 363, 30, 31, 32, 33, 34, 4,
1535 127, 4, 32, 3, 428, 97, 430, 431, 432, 3,
1536 4, 103, 104, 4, 4, 111, 674, 144, 676, 4,
1537 123, 124, 125, 115, 54, 55, 144, 3, 4, 145,
1538 454, 134, 140, 457, 458, 16, 460, 16, 144, 142,
1539 58, 4, 58, 467, 468, 4, 704, 4, 4, 707,
1540 474, 4, 4, 4, 30, 31, 4, 4, 4, 37,
1541 421, 37, 38, 39, 4, 37, 37, 4, 28, 29,
1542 30, 31, 32, 33, 34, 51, 52, 53, 143, 37,
1543 57, 4, 37, 59, 143, 143, 143, 37, 64, 57,
1544 144, 58, 37, 69, 70, 71, 72, 73, 74, 36,
1545 4, 37, 526, 79, 80, 81, 82, 83, 84, 85,
1546 37, 37, 37, 37, 145, 37, 92, 37, 94, 37,
1547 37, 575, 37, 37, 37, 37, 37, 58, 65, 144,
1548 143, 37, 6, 109, 145, 58, 73, 145, 145, 115,
1549 564, 78, 65, 145, 145, 6, 570, 145, 572, 145,
1550 73, 4, 145, 607, 4, 78, 517, 518, 145, 583,
1551 97, 3, 4, 4, 6, 141, 103, 104, 4, 145,
1552 4, 4, 148, 149, 97, 4, 4, 601, 115, 4,
1553 103, 104, 4, 4, 608, 4, 4, 4, 30, 31,
1554 144, 4, 115, 37, 4, 37, 38, 39, 37, 4,
1555 144, 143, 145, 57, 145, 143, 661, 662, 663, 51,
1556 52, 53, 778, 145, 669, 781, 145, 59, 16, 785,
1557 638, 37, 64, 4, 145, 4, 680, 16, 37, 145,
1558 16, 101, 74, 91, 4, 145, 145, 79, 80, 81,
1559 82, 83, 84, 85, 145, 145, 701, 702, 3, 4,
1560 92, 6, 94, 145, 144, 4, 36, 92, 713, 714,
1561 145, 716, 145, 718, 719, 58, 145, 109, 16, 37,
1562 57, 38, 696, 115, 729, 30, 31, 37, 37, 145,
1563 6, 143, 37, 38, 39, 144, 3, 4, 743, 144,
1564 37, 102, 94, 58, 37, 6, 51, 52, 53, 141,
1565 37, 143, 16, 758, 59, 57, 148, 149, 37, 64,
1566 16, 57, 37, 30, 31, 37, 37, 37, 37, 74,
1567 37, 38, 39, 40, 79, 80, 81, 82, 83, 84,
1568 85, 58, 37, 37, 51, 52, 53, 92, 37, 94,
1569 37, 37, 59, 4, 37, 37, 37, 64, 57, 25,
1570 37, 37, 37, 145, 109, 145, 37, 74, 37, 4,
1571 115, 145, 79, 80, 81, 82, 83, 84, 85, 3,
1572 4, 145, 145, 145, 36, 92, 145, 94, 101, 145,
1573 4, 58, 16, 25, 145, 4, 141, 145, 143, 145,
1574 4, 145, 109, 148, 149, 145, 30, 31, 115, 4,
1575 145, 145, 245, 37, 38, 39, 145, 3, 4, 145,
1576 145, 141, 213, 716, 654, 697, 765, 51, 52, 53,
1577 496, 568, 735, 535, 141, 59, 26, 437, 336, 708,
1578 64, 148, 149, 99, 30, 31, 431, 560, 242, -1,
1579 74, 37, 38, 39, -1, 79, 80, 81, 82, 83,
1580 84, 85, -1, -1, -1, 51, 52, 53, 92, -1,
1581 94, -1, -1, 59, -1, -1, -1, -1, 64, -1,
1582 -1, 4, -1, -1, -1, 109, -1, -1, 74, -1,
1583 -1, 115, 15, 79, 80, 81, 82, 83, 84, 85,
1584 -1, -1, -1, -1, -1, -1, 92, -1, 94, 32,
1585 -1, -1, -1, -1, -1, -1, -1, 141, 41, 42,
1586 43, 44, 45, 109, 148, 149, -1, -1, -1, 115,
1587 -1, 54, 55, 56, -1, -1, -1, -1, -1, -1,
1588 -1, -1, 65, 6, 7, 8, 9, 10, 11, 12,
1589 13, 14, -1, -1, -1, 141, -1, -1, -1, -1,
1590 -1, -1, 148, 149, -1, -1, -1, -1, -1, -1,
1591 93, 4, 95, -1, 37, -1, 99, -1, -1, -1,
1592 103, 104, -1, -1, -1, -1, -1, -1, -1, -1,
1593 -1, 15, 115, 17, 18, 19, 20, 21, 22, 23,
1594 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1595 34, -1, 135, 46, 47, 48, 139, 140, -1, -1,
1596 -1, 144, -1, 146, -1, -1, -1, 60, 61, 62,
1597 63, -1, 65, 66, 67, 68, -1, -1, -1, -1,
1598 -1, -1, 75, 76, 77, 78, -1, -1, -1, -1,
1599 -1, -1, -1, 86, 87, 88, 89, 90, 91, -1,
1600 -1, -1, -1, 96, 97, 98, -1, -1, -1, -1,
1601 103, 104, 6, 7, 8, 9, 10, 11, 12, 13,
1602 14, -1, 115, 24, 25, 26, 27, 28, 29, 30,
1603 31, 32, 33, 34, 127, -1, -1, -1, -1, -1,
1604 133, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1605 -1, 144, -1, -1, -1, -1, -1, -1, -1, 143,
1606 15, 145, 17, 18, 19, 20, 21, 22, 23, 24,
1607 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1608 15, -1, 17, 18, 19, 20, 21, 22, 23, 24,
1609 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1610 15, -1, 17, 18, 19, 20, 21, 22, 23, 24,
1611 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1612 15, -1, 17, 18, 19, 20, 21, 22, 23, 24,
1613 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1614 15, -1, 17, 18, 19, 20, 21, 22, 23, 24,
1615 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1616 15, -1, 17, 18, 19, 20, 21, 22, 23, 24,
1617 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1618 -1, -1, -1, -1, -1, -1, -1, -1, -1, 15,
1619 145, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1620 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1621 145, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1622 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1623 145, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1624 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1625 145, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1626 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1627 145, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1628 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1629 145, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1630 26, 27, 28, 29, 30, 31, 32, 33, 34, -1,
1631 -1, -1, -1, -1, -1, -1, -1, -1, 15, 145,
1632 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1633 27, 28, 29, 30, 31, 32, 33, 34, 15, 145,
1634 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1635 27, 28, 29, 30, 31, 32, 33, 34, 15, 145,
1636 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1637 27, 28, 29, 30, 31, 32, 33, 34, 15, 145,
1638 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1639 27, 28, 29, 30, 31, 32, 33, 34, 15, 145,
1640 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1641 27, 28, 29, 30, 31, 32, 33, 34, 15, 145,
1642 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1643 27, 28, 29, 30, 31, 32, 33, 34, -1, -1,
1644 -1, -1, -1, -1, -1, -1, -1, 15, 145, 17,
1645 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1646 28, 29, 30, 31, 32, 33, 34, 15, 145, 17,
1647 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1648 28, 29, 30, 31, 32, 33, 34, 15, 145, 17,
1649 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1650 28, 29, 30, 31, 32, 33, 34, 15, 145, 17,
1651 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1652 28, 29, 30, 31, 32, 33, 34, 15, 145, 17,
1653 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1654 28, 29, 30, 31, 32, 33, 34, 15, 145, 17,
1655 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1656 28, 29, 30, 31, 32, 33, 34, -1, -1, -1,
1657 -1, -1, -1, -1, 15, 143, 17, 18, 19, 20,
1658 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
1659 31, 32, 33, 34, 15, 143, 17, 18, 19, 20,
1660 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
1661 31, 32, 33, 34, -1, 143, -1, -1, -1, -1,
1662 -1, -1, 4, -1, -1, -1, -1, -1, -1, -1,
1663 -1, -1, -1, -1, -1, 143, -1, -1, -1, -1,
1664 -1, -1, -1, -1, -1, 4, -1, -1, -1, -1,
1665 -1, -1, -1, -1, -1, 143, 38, 18, 19, 20,
1666 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
1667 31, 32, 33, 34, -1, 143, -1, 36, -1, 38,
1668 -1, -1, 15, 65, 17, 18, 19, 20, 21, 22,
1669 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
1670 33, 34, 143, -1, 37, -1, 65, -1, -1, -1,
1671 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
1672 -1, -1, 143, -1, 106, 107, 108, 109, 110, 111,
1673 112, 113, 114, -1, 116, 117, -1, 119, 120, 121,
1674 -1, 100, -1, -1, 126, 127, 128, 106, 107, 108,
1675 109, 110, -1, 112, 113, 114, -1, 116, 117, -1,
1676 119, 120, 121, -1, -1, -1, -1, 126, 127, 128,
1677 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1678 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1679 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1680 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1681 15, -1, 17, 18, 19, 20, 21, 22, 23, 24,
1682 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1683 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
1684 29, 30, 31, 32, 33, 34, 20, 21, 22, 23,
1685 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1686 34, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1687 30, 31, 32, 33, 34, 22, 23, 24, 25, 26,
1688 27, 28, 29, 30, 31, 32, 33, 34
1691 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1692 symbol of state STATE-NUM. */
1693 static const yytype_uint16 yystos[] =
1695 0, 123, 124, 125, 134, 142, 151, 167, 168, 155,
1696 156, 153, 154, 266, 267, 261, 262, 0, 169, 157,
1697 4, 57, 129, 270, 271, 57, 263, 264, 4, 46,
1698 47, 48, 60, 61, 62, 63, 65, 66, 67, 68,
1699 75, 76, 77, 78, 86, 87, 88, 89, 90, 91,
1700 96, 97, 98, 103, 104, 115, 127, 144, 170, 177,
1701 179, 200, 202, 213, 214, 216, 218, 253, 268, 269,
1702 4, 38, 65, 100, 106, 107, 108, 109, 110, 112,
1703 113, 114, 116, 117, 119, 120, 121, 126, 127, 128,
1704 158, 6, 4, 127, 130, 131, 132, 273, 274, 57,
1705 271, 131, 132, 265, 274, 264, 6, 7, 8, 9,
1706 10, 11, 12, 13, 14, 198, 57, 57, 49, 50,
1707 37, 37, 4, 152, 57, 37, 37, 37, 37, 37,
1708 37, 37, 37, 37, 37, 37, 171, 37, 37, 37,
1709 180, 37, 143, 144, 199, 133, 4, 152, 4, 3,
1710 4, 30, 31, 37, 38, 39, 51, 52, 53, 59,
1711 64, 74, 79, 80, 81, 82, 83, 84, 85, 92,
1712 94, 109, 115, 141, 148, 149, 222, 4, 4, 162,
1713 4, 161, 160, 4, 4, 4, 222, 4, 3, 4,
1714 163, 164, 165, 4, 111, 222, 4, 16, 16, 58,
1715 144, 273, 58, 144, 220, 221, 220, 178, 254, 4,
1716 4, 4, 4, 172, 4, 65, 203, 204, 205, 4,
1717 4, 4, 152, 152, 4, 152, 145, 152, 215, 217,
1718 4, 219, 4, 5, 105, 173, 37, 152, 4, 4,
1719 37, 164, 57, 6, 143, 159, 6, 143, 222, 222,
1720 222, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1721 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1722 222, 222, 15, 17, 18, 19, 20, 21, 22, 23,
1723 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1724 34, 143, 6, 143, 222, 143, 143, 4, 143, 6,
1725 143, 222, 143, 143, 4, 166, 57, 274, 274, 144,
1726 4, 127, 130, 131, 132, 58, 144, 222, 4, 58,
1727 65, 73, 97, 179, 228, 4, 58, 255, 143, 145,
1728 145, 169, 206, 152, 58, 143, 201, 143, 145, 145,
1729 145, 145, 145, 145, 145, 201, 145, 201, 143, 219,
1730 145, 37, 4, 5, 105, 143, 145, 173, 145, 6,
1731 6, 222, 145, 270, 222, 222, 157, 222, 222, 145,
1732 222, 222, 222, 222, 222, 4, 4, 222, 4, 4,
1733 4, 4, 222, 222, 4, 4, 222, 222, 4, 222,
1734 222, 222, 222, 222, 222, 222, 222, 222, 222, 222,
1735 222, 222, 222, 222, 222, 222, 222, 222, 222, 222,
1736 222, 4, 4, 4, 222, 222, 3, 4, 4, 4,
1737 143, 276, 144, 144, 4, 129, 144, 272, 229, 152,
1738 234, 239, 256, 4, 36, 37, 210, 207, 205, 4,
1739 152, 152, 219, 174, 37, 4, 5, 105, 145, 220,
1740 220, 143, 58, 36, 143, 145, 145, 143, 143, 145,
1741 143, 145, 145, 145, 145, 145, 145, 143, 143, 145,
1742 145, 145, 143, 145, 16, 4, 274, 132, 57, 129,
1743 144, 37, 40, 222, 243, 244, 241, 16, 222, 245,
1744 244, 222, 258, 143, 4, 148, 211, 212, 16, 203,
1745 145, 173, 176, 37, 145, 145, 4, 222, 222, 222,
1746 222, 222, 222, 4, 222, 144, 277, 16, 275, 69,
1747 70, 71, 72, 73, 145, 242, 37, 37, 243, 16,
1748 101, 224, 178, 16, 91, 246, 240, 4, 101, 259,
1749 4, 4, 145, 212, 92, 208, 36, 145, 173, 175,
1750 145, 145, 145, 145, 145, 145, 145, 145, 58, 274,
1751 274, 145, 222, 16, 37, 38, 225, 36, 224, 57,
1752 37, 260, 37, 257, 145, 6, 201, 145, 173, 144,
1753 277, 145, 222, 37, 102, 226, 226, 178, 222, 259,
1754 222, 144, 220, 94, 209, 145, 58, 39, 243, 145,
1755 222, 37, 230, 235, 58, 145, 145, 6, 37, 16,
1756 145, 222, 136, 137, 138, 227, 57, 259, 220, 222,
1757 145, 57, 236, 145, 231, 249, 243, 4, 15, 32,
1758 41, 42, 43, 44, 45, 54, 55, 56, 65, 93,
1759 95, 99, 115, 135, 139, 140, 144, 146, 181, 182,
1760 184, 187, 188, 190, 193, 194, 195, 200, 4, 58,
1761 16, 37, 37, 37, 152, 37, 191, 37, 37, 37,
1762 4, 54, 182, 186, 37, 4, 146, 182, 190, 58,
1763 37, 199, 250, 237, 54, 55, 99, 140, 181, 54,
1764 55, 181, 181, 192, 196, 220, 37, 189, 4, 183,
1765 181, 185, 37, 147, 201, 186, 186, 37, 232, 220,
1766 57, 25, 247, 37, 37, 145, 37, 145, 37, 37,
1767 145, 145, 194, 145, 222, 4, 187, 21, 145, 145,
1768 181, 182, 145, 147, 186, 247, 145, 194, 4, 101,
1769 223, 181, 181, 185, 181, 181, 36, 143, 145, 4,
1770 181, 145, 223, 58, 25, 248, 145, 145, 145, 145,
1771 145, 4, 248, 251, 4, 6, 16, 197, 145, 145,
1772 181, 145, 145, 145, 197, 248, 196, 4, 238, 145,
1773 199, 233, 197, 201, 201, 252, 201
1776 #define yyerrok (yyerrstatus = 0)
1777 #define yyclearin (yychar = YYEMPTY)
1778 #define YYEMPTY (-2)
1781 #define YYACCEPT goto yyacceptlab
1782 #define YYABORT goto yyabortlab
1783 #define YYERROR goto yyerrorlab
1786 /* Like YYERROR except do call yyerror. This remains here temporarily
1787 to ease the transition to the new meaning of YYERROR, for GCC.
1788 Once GCC version 2 has supplanted version 1, this can go. */
1790 #define YYFAIL goto yyerrlab
1792 #define YYRECOVERING() (!!yyerrstatus)
1794 #define YYBACKUP(Token, Value) \
1796 if (yychar == YYEMPTY && yylen == 1) \
1800 yytoken = YYTRANSLATE (yychar); \
1806 yyerror (YY_("syntax error: cannot back up")); \
1813 #define YYERRCODE 256
1816 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
1817 If N is 0, then set CURRENT to the empty location which ends
1818 the previous symbol: RHS[0] (always defined). */
1820 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
1821 #ifndef YYLLOC_DEFAULT
1822 # define YYLLOC_DEFAULT(Current, Rhs, N) \
1826 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
1827 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
1828 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
1829 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
1833 (Current).first_line = (Current).last_line = \
1834 YYRHSLOC (Rhs, 0).last_line; \
1835 (Current).first_column = (Current).last_column = \
1836 YYRHSLOC (Rhs, 0).last_column; \
1842 /* YY_LOCATION_PRINT -- Print the location on the stream.
1843 This macro was not mandated originally: define only if we know
1844 we won't break user code: when these are the locations we know. */
1846 #ifndef YY_LOCATION_PRINT
1847 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
1848 # define YY_LOCATION_PRINT(File, Loc) \
1849 fprintf (File, "%d.%d-%d.%d", \
1850 (Loc).first_line, (Loc).first_column, \
1851 (Loc).last_line, (Loc).last_column)
1853 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1858 /* YYLEX -- calling `yylex' with the right arguments. */
1861 # define YYLEX yylex (YYLEX_PARAM)
1863 # define YYLEX yylex ()
1866 /* Enable debugging if requested. */
1870 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
1871 # define YYFPRINTF fprintf
1874 # define YYDPRINTF(Args) \
1880 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
1884 YYFPRINTF (stderr, "%s ", Title); \
1885 yy_symbol_print (stderr, \
1887 YYFPRINTF (stderr, "\n"); \
1892 /*--------------------------------.
1893 | Print this symbol on YYOUTPUT. |
1894 `--------------------------------*/
1897 #if (defined __STDC__ || defined __C99__FUNC__ \
1898 || defined __cplusplus || defined _MSC_VER)
1900 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
1903 yy_symbol_value_print (yyoutput, yytype, yyvaluep)
1906 YYSTYPE const * const yyvaluep;
1912 if (yytype < YYNTOKENS)
1913 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
1925 /*--------------------------------.
1926 | Print this symbol on YYOUTPUT. |
1927 `--------------------------------*/
1929 #if (defined __STDC__ || defined __C99__FUNC__ \
1930 || defined __cplusplus || defined _MSC_VER)
1932 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
1935 yy_symbol_print (yyoutput, yytype, yyvaluep)
1938 YYSTYPE const * const yyvaluep;
1941 if (yytype < YYNTOKENS)
1942 YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
1944 YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
1946 yy_symbol_value_print (yyoutput, yytype, yyvaluep);
1947 YYFPRINTF (yyoutput, ")");
1950 /*------------------------------------------------------------------.
1951 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
1953 `------------------------------------------------------------------*/
1955 #if (defined __STDC__ || defined __C99__FUNC__ \
1956 || defined __cplusplus || defined _MSC_VER)
1958 yy_stack_print (yytype_int16 *bottom, yytype_int16 *top)
1961 yy_stack_print (bottom, top)
1962 yytype_int16 *bottom;
1966 YYFPRINTF (stderr, "Stack now");
1967 for (; bottom <= top; ++bottom)
1968 YYFPRINTF (stderr, " %d", *bottom);
1969 YYFPRINTF (stderr, "\n");
1972 # define YY_STACK_PRINT(Bottom, Top) \
1975 yy_stack_print ((Bottom), (Top)); \
1979 /*------------------------------------------------.
1980 | Report that the YYRULE is going to be reduced. |
1981 `------------------------------------------------*/
1983 #if (defined __STDC__ || defined __C99__FUNC__ \
1984 || defined __cplusplus || defined _MSC_VER)
1986 yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
1989 yy_reduce_print (yyvsp, yyrule)
1994 int yynrhs = yyr2[yyrule];
1996 unsigned long int yylno = yyrline[yyrule];
1997 YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
1999 /* The symbols being reduced. */
2000 for (yyi = 0; yyi < yynrhs; yyi++)
2002 fprintf (stderr, " $%d = ", yyi + 1);
2003 yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
2004 &(yyvsp[(yyi + 1) - (yynrhs)])
2006 fprintf (stderr, "\n");
2010 # define YY_REDUCE_PRINT(Rule) \
2013 yy_reduce_print (yyvsp, Rule); \
2016 /* Nonzero means print parse trace. It is left uninitialized so that
2017 multiple parsers can coexist. */
2019 #else /* !YYDEBUG */
2020 # define YYDPRINTF(Args)
2021 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
2022 # define YY_STACK_PRINT(Bottom, Top)
2023 # define YY_REDUCE_PRINT(Rule)
2024 #endif /* !YYDEBUG */
2027 /* YYINITDEPTH -- initial size of the parser's stacks. */
2029 # define YYINITDEPTH 200
2032 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
2033 if the built-in stack extension method is used).
2035 Do not make this value too large; the results are undefined if
2036 YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
2037 evaluated with infinite-precision integer arithmetic. */
2040 # define YYMAXDEPTH 10000
2048 # if defined __GLIBC__ && defined _STRING_H
2049 # define yystrlen strlen
2051 /* Return the length of YYSTR. */
2052 #if (defined __STDC__ || defined __C99__FUNC__ \
2053 || defined __cplusplus || defined _MSC_VER)
2055 yystrlen (const char *yystr)
2063 for (yylen = 0; yystr[yylen]; yylen++)
2071 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
2072 # define yystpcpy stpcpy
2074 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
2076 #if (defined __STDC__ || defined __C99__FUNC__ \
2077 || defined __cplusplus || defined _MSC_VER)
2079 yystpcpy (char *yydest, const char *yysrc)
2082 yystpcpy (yydest, yysrc)
2088 const char *yys = yysrc;
2090 while ((*yyd++ = *yys++) != '\0')
2099 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
2100 quotes and backslashes, so that it's suitable for yyerror. The
2101 heuristic is that double-quoting is unnecessary unless the string
2102 contains an apostrophe, a comma, or backslash (other than
2103 backslash-backslash). YYSTR is taken from yytname. If YYRES is
2104 null, do not copy; instead, return the length of what the result
2107 yytnamerr (char *yyres, const char *yystr)
2112 char const *yyp = yystr;
2119 goto do_not_strip_quotes;
2123 goto do_not_strip_quotes;
2136 do_not_strip_quotes: ;
2140 return yystrlen (yystr);
2142 return yystpcpy (yyres, yystr) - yyres;
2146 /* Copy into YYRESULT an error message about the unexpected token
2147 YYCHAR while in state YYSTATE. Return the number of bytes copied,
2148 including the terminating null byte. If YYRESULT is null, do not
2149 copy anything; just return the number of bytes that would be
2150 copied. As a special case, return 0 if an ordinary "syntax error"
2151 message will do. Return YYSIZE_MAXIMUM if overflow occurs during
2152 size calculation. */
2154 yysyntax_error (char *yyresult, int yystate, int yychar)
2156 int yyn = yypact[yystate];
2158 if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
2162 int yytype = YYTRANSLATE (yychar);
2163 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2164 YYSIZE_T yysize = yysize0;
2166 int yysize_overflow = 0;
2167 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2168 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2172 /* This is so xgettext sees the translatable formats that are
2173 constructed on the fly. */
2174 YY_("syntax error, unexpected %s");
2175 YY_("syntax error, unexpected %s, expecting %s");
2176 YY_("syntax error, unexpected %s, expecting %s or %s");
2177 YY_("syntax error, unexpected %s, expecting %s or %s or %s");
2178 YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
2182 static char const yyunexpected[] = "syntax error, unexpected %s";
2183 static char const yyexpecting[] = ", expecting %s";
2184 static char const yyor[] = " or %s";
2185 char yyformat[sizeof yyunexpected
2186 + sizeof yyexpecting - 1
2187 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2188 * (sizeof yyor - 1))];
2189 char const *yyprefix = yyexpecting;
2191 /* Start YYX at -YYN if negative to avoid negative indexes in
2193 int yyxbegin = yyn < 0 ? -yyn : 0;
2195 /* Stay within bounds of both yycheck and yytname. */
2196 int yychecklim = YYLAST - yyn + 1;
2197 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2200 yyarg[0] = yytname[yytype];
2201 yyfmt = yystpcpy (yyformat, yyunexpected);
2203 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2204 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
2206 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2210 yyformat[sizeof yyunexpected - 1] = '\0';
2213 yyarg[yycount++] = yytname[yyx];
2214 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2215 yysize_overflow |= (yysize1 < yysize);
2217 yyfmt = yystpcpy (yyfmt, yyprefix);
2221 yyf = YY_(yyformat);
2222 yysize1 = yysize + yystrlen (yyf);
2223 yysize_overflow |= (yysize1 < yysize);
2226 if (yysize_overflow)
2227 return YYSIZE_MAXIMUM;
2231 /* Avoid sprintf, as that infringes on the user's name space.
2232 Don't have undefined behavior even if the translation
2233 produced a string with the wrong number of "%s"s. */
2234 char *yyp = yyresult;
2236 while ((*yyp = *yyf) != '\0')
2238 if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
2240 yyp += yytnamerr (yyp, yyarg[yyi++]);
2253 #endif /* YYERROR_VERBOSE */
2256 /*-----------------------------------------------.
2257 | Release the memory associated to this symbol. |
2258 `-----------------------------------------------*/
2261 #if (defined __STDC__ || defined __C99__FUNC__ \
2262 || defined __cplusplus || defined _MSC_VER)
2264 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
2267 yydestruct (yymsg, yytype, yyvaluep)
2277 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
2288 /* Prevent warnings from -Wmissing-prototypes. */
2290 #ifdef YYPARSE_PARAM
2291 #if defined __STDC__ || defined __cplusplus
2292 int yyparse (void *YYPARSE_PARAM);
2296 #else /* ! YYPARSE_PARAM */
2297 #if defined __STDC__ || defined __cplusplus
2302 #endif /* ! YYPARSE_PARAM */
2306 /* The look-ahead symbol. */
2309 /* The semantic value of the look-ahead symbol. */
2312 /* Number of syntax errors so far. */
2321 #ifdef YYPARSE_PARAM
2322 #if (defined __STDC__ || defined __C99__FUNC__ \
2323 || defined __cplusplus || defined _MSC_VER)
2325 yyparse (void *YYPARSE_PARAM)
2328 yyparse (YYPARSE_PARAM)
2329 void *YYPARSE_PARAM;
2331 #else /* ! YYPARSE_PARAM */
2332 #if (defined __STDC__ || defined __C99__FUNC__ \
2333 || defined __cplusplus || defined _MSC_VER)
2347 /* Number of tokens to shift before error messages enabled. */
2349 /* Look-ahead token as an internal (translated) token number. */
2352 /* Buffer for error messages, and its allocated size. */
2354 char *yymsg = yymsgbuf;
2355 YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
2358 /* Three stacks and their tools:
2359 `yyss': related to states,
2360 `yyvs': related to semantic values,
2361 `yyls': related to locations.
2363 Refer to the stacks thru separate pointers, to allow yyoverflow
2364 to reallocate them elsewhere. */
2366 /* The state stack. */
2367 yytype_int16 yyssa[YYINITDEPTH];
2368 yytype_int16 *yyss = yyssa;
2369 yytype_int16 *yyssp;
2371 /* The semantic value stack. */
2372 YYSTYPE yyvsa[YYINITDEPTH];
2373 YYSTYPE *yyvs = yyvsa;
2378 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
2380 YYSIZE_T yystacksize = YYINITDEPTH;
2382 /* The variables used to return semantic value and location from the
2387 /* The number of symbols on the RHS of the reduced rule.
2388 Keep to zero when no symbol should be popped. */
2391 YYDPRINTF ((stderr, "Starting parse\n"));
2396 yychar = YYEMPTY; /* Cause a token to be read. */
2398 /* Initialize stack pointers.
2399 Waste one element of value and location stack
2400 so that they stay on the same level as the state stack.
2401 The wasted elements are never initialized. */
2408 /*------------------------------------------------------------.
2409 | yynewstate -- Push a new state, which is found in yystate. |
2410 `------------------------------------------------------------*/
2412 /* In all cases, when you get here, the value and location stacks
2413 have just been pushed. So pushing a state here evens the stacks. */
2419 if (yyss + yystacksize - 1 <= yyssp)
2421 /* Get the current used size of the three stacks, in elements. */
2422 YYSIZE_T yysize = yyssp - yyss + 1;
2426 /* Give user a chance to reallocate the stack. Use copies of
2427 these so that the &'s don't force the real ones into
2429 YYSTYPE *yyvs1 = yyvs;
2430 yytype_int16 *yyss1 = yyss;
2433 /* Each stack pointer address is followed by the size of the
2434 data in use in that stack, in bytes. This used to be a
2435 conditional around just the two extra args, but that might
2436 be undefined if yyoverflow is a macro. */
2437 yyoverflow (YY_("memory exhausted"),
2438 &yyss1, yysize * sizeof (*yyssp),
2439 &yyvs1, yysize * sizeof (*yyvsp),
2446 #else /* no yyoverflow */
2447 # ifndef YYSTACK_RELOCATE
2448 goto yyexhaustedlab;
2450 /* Extend the stack our own way. */
2451 if (YYMAXDEPTH <= yystacksize)
2452 goto yyexhaustedlab;
2454 if (YYMAXDEPTH < yystacksize)
2455 yystacksize = YYMAXDEPTH;
2458 yytype_int16 *yyss1 = yyss;
2459 union yyalloc *yyptr =
2460 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
2462 goto yyexhaustedlab;
2463 YYSTACK_RELOCATE (yyss);
2464 YYSTACK_RELOCATE (yyvs);
2466 # undef YYSTACK_RELOCATE
2468 YYSTACK_FREE (yyss1);
2471 #endif /* no yyoverflow */
2473 yyssp = yyss + yysize - 1;
2474 yyvsp = yyvs + yysize - 1;
2477 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
2478 (unsigned long int) yystacksize));
2480 if (yyss + yystacksize - 1 <= yyssp)
2484 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
2493 /* Do appropriate processing given the current state. Read a
2494 look-ahead token if we need one and don't already have one. */
2496 /* First try to decide what to do without reference to look-ahead token. */
2497 yyn = yypact[yystate];
2498 if (yyn == YYPACT_NINF)
2501 /* Not known => get a look-ahead token if don't already have one. */
2503 /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
2504 if (yychar == YYEMPTY)
2506 YYDPRINTF ((stderr, "Reading a token: "));
2510 if (yychar <= YYEOF)
2512 yychar = yytoken = YYEOF;
2513 YYDPRINTF ((stderr, "Now at end of input.\n"));
2517 yytoken = YYTRANSLATE (yychar);
2518 YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
2521 /* If the proper action on seeing token YYTOKEN is to reduce or to
2522 detect an error, take that action. */
2524 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
2529 if (yyn == 0 || yyn == YYTABLE_NINF)
2538 /* Count tokens shifted since error; after three, turn off error
2543 /* Shift the look-ahead token. */
2544 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
2546 /* Discard the shifted token unless it is eof. */
2547 if (yychar != YYEOF)
2556 /*-----------------------------------------------------------.
2557 | yydefault -- do the default action for the current state. |
2558 `-----------------------------------------------------------*/
2560 yyn = yydefact[yystate];
2566 /*-----------------------------.
2567 | yyreduce -- Do a reduction. |
2568 `-----------------------------*/
2570 /* yyn is the number of a rule to reduce with. */
2573 /* If YYLEN is nonzero, implement the default value of the action:
2576 Otherwise, the following line sets YYVAL to garbage.
2577 This behavior is undocumented and Bison
2578 users should not rely upon it. Assigning to YYVAL
2579 unconditionally makes the parser a bit smaller, and it avoids a
2580 GCC warning that YYVAL may be used uninitialized. */
2581 yyval = yyvsp[1-yylen];
2584 YY_REDUCE_PRINT (yyn);
2588 #line 180 "ldgram.y"
2593 #line 182 "ldgram.y"
2596 lang_add_assignment (exp_defsym ((yyvsp[(2) - (4)].name), (yyvsp[(4) - (4)].etree)));
2601 #line 190 "ldgram.y"
2603 ldlex_mri_script ();
2604 PUSH_ERROR (_("MRI style script"));
2609 #line 195 "ldgram.y"
2618 #line 210 "ldgram.y"
2620 einfo(_("%P%F: unrecognised keyword in MRI style script '%s'\n"),(yyvsp[(1) - (1)].name));
2625 #line 213 "ldgram.y"
2627 config.map_filename = "-";
2632 #line 219 "ldgram.y"
2633 { mri_public((yyvsp[(2) - (4)].name), (yyvsp[(4) - (4)].etree)); }
2637 #line 221 "ldgram.y"
2638 { mri_public((yyvsp[(2) - (4)].name), (yyvsp[(4) - (4)].etree)); }
2642 #line 223 "ldgram.y"
2643 { mri_public((yyvsp[(2) - (3)].name), (yyvsp[(3) - (3)].etree)); }
2647 #line 225 "ldgram.y"
2648 { mri_format((yyvsp[(2) - (2)].name)); }
2652 #line 227 "ldgram.y"
2653 { mri_output_section((yyvsp[(2) - (4)].name), (yyvsp[(4) - (4)].etree));}
2657 #line 229 "ldgram.y"
2658 { mri_output_section((yyvsp[(2) - (3)].name), (yyvsp[(3) - (3)].etree));}
2662 #line 231 "ldgram.y"
2663 { mri_output_section((yyvsp[(2) - (4)].name), (yyvsp[(4) - (4)].etree));}
2667 #line 233 "ldgram.y"
2668 { mri_align((yyvsp[(2) - (4)].name),(yyvsp[(4) - (4)].etree)); }
2672 #line 235 "ldgram.y"
2673 { mri_align((yyvsp[(2) - (4)].name),(yyvsp[(4) - (4)].etree)); }
2677 #line 237 "ldgram.y"
2678 { mri_alignmod((yyvsp[(2) - (4)].name),(yyvsp[(4) - (4)].etree)); }
2682 #line 239 "ldgram.y"
2683 { mri_alignmod((yyvsp[(2) - (4)].name),(yyvsp[(4) - (4)].etree)); }
2687 #line 243 "ldgram.y"
2688 { mri_name((yyvsp[(2) - (2)].name)); }
2692 #line 245 "ldgram.y"
2693 { mri_alias((yyvsp[(2) - (4)].name),(yyvsp[(4) - (4)].name),0);}
2697 #line 247 "ldgram.y"
2698 { mri_alias ((yyvsp[(2) - (4)].name), 0, (int) (yyvsp[(4) - (4)].bigint).integer); }
2702 #line 249 "ldgram.y"
2703 { mri_base((yyvsp[(2) - (2)].etree)); }
2707 #line 251 "ldgram.y"
2708 { mri_truncate ((unsigned int) (yyvsp[(2) - (2)].bigint).integer); }
2712 #line 255 "ldgram.y"
2713 { ldlex_script (); ldfile_open_command_file((yyvsp[(2) - (2)].name)); }
2717 #line 257 "ldgram.y"
2718 { ldlex_popstate (); }
2722 #line 259 "ldgram.y"
2723 { lang_add_entry ((yyvsp[(2) - (2)].name), FALSE); }
2727 #line 264 "ldgram.y"
2728 { mri_order((yyvsp[(3) - (3)].name)); }
2732 #line 265 "ldgram.y"
2733 { mri_order((yyvsp[(2) - (2)].name)); }
2737 #line 271 "ldgram.y"
2738 { mri_load((yyvsp[(1) - (1)].name)); }
2742 #line 272 "ldgram.y"
2743 { mri_load((yyvsp[(3) - (3)].name)); }
2747 #line 277 "ldgram.y"
2748 { mri_only_load((yyvsp[(1) - (1)].name)); }
2752 #line 279 "ldgram.y"
2753 { mri_only_load((yyvsp[(3) - (3)].name)); }
2757 #line 283 "ldgram.y"
2758 { (yyval.name) = NULL; }
2762 #line 290 "ldgram.y"
2763 { ldlex_expression (); }
2767 #line 292 "ldgram.y"
2768 { ldlex_popstate (); }
2772 #line 296 "ldgram.y"
2773 { ldlang_add_undef ((yyvsp[(1) - (1)].name), FALSE); }
2777 #line 298 "ldgram.y"
2778 { ldlang_add_undef ((yyvsp[(2) - (2)].name), FALSE); }
2782 #line 300 "ldgram.y"
2783 { ldlang_add_undef ((yyvsp[(3) - (3)].name), FALSE); }
2787 #line 304 "ldgram.y"
2792 #line 306 "ldgram.y"
2793 { ldlex_popstate(); }
2797 #line 327 "ldgram.y"
2798 { lang_add_target((yyvsp[(3) - (4)].name)); }
2802 #line 329 "ldgram.y"
2803 { ldfile_add_library_path ((yyvsp[(3) - (4)].name), FALSE); }
2807 #line 331 "ldgram.y"
2808 { lang_add_output((yyvsp[(3) - (4)].name), 1); }
2812 #line 333 "ldgram.y"
2813 { lang_add_output_format ((yyvsp[(3) - (4)].name), (char *) NULL,
2814 (char *) NULL, 1); }
2818 #line 336 "ldgram.y"
2819 { lang_add_output_format ((yyvsp[(3) - (8)].name), (yyvsp[(5) - (8)].name), (yyvsp[(7) - (8)].name), 1); }
2823 #line 338 "ldgram.y"
2824 { ldfile_set_output_arch ((yyvsp[(3) - (4)].name), bfd_arch_unknown); }
2828 #line 340 "ldgram.y"
2829 { command_line.force_common_definition = TRUE ; }
2833 #line 342 "ldgram.y"
2834 { command_line.inhibit_common_definition = TRUE ; }
2838 #line 345 "ldgram.y"
2839 { lang_enter_group (); }
2843 #line 347 "ldgram.y"
2844 { lang_leave_group (); }
2848 #line 349 "ldgram.y"
2849 { lang_add_map((yyvsp[(3) - (4)].name)); }
2853 #line 351 "ldgram.y"
2854 { ldlex_script (); ldfile_open_command_file((yyvsp[(2) - (2)].name)); }
2858 #line 353 "ldgram.y"
2859 { ldlex_popstate (); }
2863 #line 355 "ldgram.y"
2865 lang_add_nocrossref ((yyvsp[(3) - (4)].nocrossref));
2870 #line 360 "ldgram.y"
2871 { lang_add_insert ((yyvsp[(3) - (3)].name), 0); }
2875 #line 362 "ldgram.y"
2876 { lang_add_insert ((yyvsp[(3) - (3)].name), 1); }
2880 #line 364 "ldgram.y"
2881 { lang_memory_region_alias ((yyvsp[(3) - (6)].name), (yyvsp[(5) - (6)].name)); }
2885 #line 366 "ldgram.y"
2886 { lang_ld_feature ((yyvsp[(3) - (4)].name)); }
2890 #line 371 "ldgram.y"
2891 { lang_add_input_file((yyvsp[(1) - (1)].name),lang_input_file_is_search_file_enum,
2896 #line 374 "ldgram.y"
2897 { lang_add_input_file((yyvsp[(3) - (3)].name),lang_input_file_is_search_file_enum,
2902 #line 377 "ldgram.y"
2903 { lang_add_input_file((yyvsp[(2) - (2)].name),lang_input_file_is_search_file_enum,
2908 #line 380 "ldgram.y"
2909 { lang_add_input_file((yyvsp[(1) - (1)].name),lang_input_file_is_l_enum,
2914 #line 383 "ldgram.y"
2915 { lang_add_input_file((yyvsp[(3) - (3)].name),lang_input_file_is_l_enum,
2920 #line 386 "ldgram.y"
2921 { lang_add_input_file((yyvsp[(2) - (2)].name),lang_input_file_is_l_enum,
2926 #line 389 "ldgram.y"
2927 { (yyval.integer) = add_DT_NEEDED_for_regular; add_DT_NEEDED_for_regular = TRUE; }
2931 #line 391 "ldgram.y"
2932 { add_DT_NEEDED_for_regular = (yyvsp[(3) - (5)].integer); }
2936 #line 393 "ldgram.y"
2937 { (yyval.integer) = add_DT_NEEDED_for_regular; add_DT_NEEDED_for_regular = TRUE; }
2941 #line 395 "ldgram.y"
2942 { add_DT_NEEDED_for_regular = (yyvsp[(5) - (7)].integer); }
2946 #line 397 "ldgram.y"
2947 { (yyval.integer) = add_DT_NEEDED_for_regular; add_DT_NEEDED_for_regular = TRUE; }
2951 #line 399 "ldgram.y"
2952 { add_DT_NEEDED_for_regular = (yyvsp[(4) - (6)].integer); }
2956 #line 414 "ldgram.y"
2957 { lang_add_entry ((yyvsp[(3) - (4)].name), FALSE); }
2961 #line 416 "ldgram.y"
2962 {ldlex_expression ();}
2966 #line 417 "ldgram.y"
2967 { ldlex_popstate ();
2968 lang_add_assignment (exp_assert ((yyvsp[(4) - (7)].etree), (yyvsp[(6) - (7)].name))); }
2972 #line 425 "ldgram.y"
2974 (yyval.cname) = (yyvsp[(1) - (1)].name);
2979 #line 429 "ldgram.y"
2981 (yyval.cname) = "*";
2986 #line 433 "ldgram.y"
2988 (yyval.cname) = "?";
2993 #line 440 "ldgram.y"
2995 (yyval.wildcard).name = (yyvsp[(1) - (1)].cname);
2996 (yyval.wildcard).sorted = none;
2997 (yyval.wildcard).exclude_name_list = NULL;
2998 (yyval.wildcard).section_flag_list = NULL;
3003 #line 447 "ldgram.y"
3005 (yyval.wildcard).name = (yyvsp[(5) - (5)].cname);
3006 (yyval.wildcard).sorted = none;
3007 (yyval.wildcard).exclude_name_list = (yyvsp[(3) - (5)].name_list);
3008 (yyval.wildcard).section_flag_list = NULL;
3013 #line 454 "ldgram.y"
3015 (yyval.wildcard).name = (yyvsp[(3) - (4)].cname);
3016 (yyval.wildcard).sorted = by_name;
3017 (yyval.wildcard).exclude_name_list = NULL;
3018 (yyval.wildcard).section_flag_list = NULL;
3023 #line 461 "ldgram.y"
3025 (yyval.wildcard).name = (yyvsp[(3) - (4)].cname);
3026 (yyval.wildcard).sorted = by_alignment;
3027 (yyval.wildcard).exclude_name_list = NULL;
3028 (yyval.wildcard).section_flag_list = NULL;
3033 #line 468 "ldgram.y"
3035 (yyval.wildcard).name = (yyvsp[(5) - (7)].cname);
3036 (yyval.wildcard).sorted = by_name_alignment;
3037 (yyval.wildcard).exclude_name_list = NULL;
3038 (yyval.wildcard).section_flag_list = NULL;
3043 #line 475 "ldgram.y"
3045 (yyval.wildcard).name = (yyvsp[(5) - (7)].cname);
3046 (yyval.wildcard).sorted = by_name;
3047 (yyval.wildcard).exclude_name_list = NULL;
3048 (yyval.wildcard).section_flag_list = NULL;
3053 #line 482 "ldgram.y"
3055 (yyval.wildcard).name = (yyvsp[(5) - (7)].cname);
3056 (yyval.wildcard).sorted = by_alignment_name;
3057 (yyval.wildcard).exclude_name_list = NULL;
3058 (yyval.wildcard).section_flag_list = NULL;
3063 #line 489 "ldgram.y"
3065 (yyval.wildcard).name = (yyvsp[(5) - (7)].cname);
3066 (yyval.wildcard).sorted = by_alignment;
3067 (yyval.wildcard).exclude_name_list = NULL;
3068 (yyval.wildcard).section_flag_list = NULL;
3073 #line 496 "ldgram.y"
3075 (yyval.wildcard).name = (yyvsp[(7) - (8)].cname);
3076 (yyval.wildcard).sorted = by_name;
3077 (yyval.wildcard).exclude_name_list = (yyvsp[(5) - (8)].name_list);
3078 (yyval.wildcard).section_flag_list = NULL;
3083 #line 503 "ldgram.y"
3085 (yyval.wildcard).name = (yyvsp[(3) - (4)].cname);
3086 (yyval.wildcard).sorted = by_init_priority;
3087 (yyval.wildcard).exclude_name_list = NULL;
3088 (yyval.wildcard).section_flag_list = NULL;
3093 #line 512 "ldgram.y"
3095 struct flag_info_list *n;
3096 n = ((struct flag_info_list *) xmalloc (sizeof *n));
3097 if ((yyvsp[(1) - (1)].name)[0] == '!')
3099 n->with = without_flags;
3100 n->name = &(yyvsp[(1) - (1)].name)[1];
3104 n->with = with_flags;
3105 n->name = (yyvsp[(1) - (1)].name);
3109 (yyval.flag_info_list) = n;
3114 #line 530 "ldgram.y"
3116 struct flag_info_list *n;
3117 n = ((struct flag_info_list *) xmalloc (sizeof *n));
3118 if ((yyvsp[(3) - (3)].name)[0] == '!')
3120 n->with = without_flags;
3121 n->name = &(yyvsp[(3) - (3)].name)[1];
3125 n->with = with_flags;
3126 n->name = (yyvsp[(3) - (3)].name);
3129 n->next = (yyvsp[(1) - (3)].flag_info_list);
3130 (yyval.flag_info_list) = n;
3135 #line 551 "ldgram.y"
3137 struct flag_info *n;
3138 n = ((struct flag_info *) xmalloc (sizeof *n));
3139 n->flag_list = (yyvsp[(3) - (4)].flag_info_list);
3140 n->flags_initialized = FALSE;
3141 n->not_with_flags = 0;
3142 n->only_with_flags = 0;
3143 (yyval.flag_info) = n;
3148 #line 564 "ldgram.y"
3150 struct name_list *tmp;
3151 tmp = (struct name_list *) xmalloc (sizeof *tmp);
3152 tmp->name = (yyvsp[(2) - (2)].cname);
3153 tmp->next = (yyvsp[(1) - (2)].name_list);
3154 (yyval.name_list) = tmp;
3159 #line 573 "ldgram.y"
3161 struct name_list *tmp;
3162 tmp = (struct name_list *) xmalloc (sizeof *tmp);
3163 tmp->name = (yyvsp[(1) - (1)].cname);
3165 (yyval.name_list) = tmp;
3170 #line 584 "ldgram.y"
3172 struct wildcard_list *tmp;
3173 tmp = (struct wildcard_list *) xmalloc (sizeof *tmp);
3174 tmp->next = (yyvsp[(1) - (3)].wildcard_list);
3175 tmp->spec = (yyvsp[(3) - (3)].wildcard);
3176 (yyval.wildcard_list) = tmp;
3181 #line 593 "ldgram.y"
3183 struct wildcard_list *tmp;
3184 tmp = (struct wildcard_list *) xmalloc (sizeof *tmp);
3186 tmp->spec = (yyvsp[(1) - (1)].wildcard);
3187 (yyval.wildcard_list) = tmp;
3192 #line 604 "ldgram.y"
3194 struct wildcard_spec tmp;
3195 tmp.name = (yyvsp[(1) - (1)].name);
3196 tmp.exclude_name_list = NULL;
3198 tmp.section_flag_list = NULL;
3199 lang_add_wild (&tmp, NULL, ldgram_had_keep);
3204 #line 613 "ldgram.y"
3206 struct wildcard_spec tmp;
3207 tmp.name = (yyvsp[(2) - (2)].name);
3208 tmp.exclude_name_list = NULL;
3210 tmp.section_flag_list = (yyvsp[(1) - (2)].flag_info);
3211 lang_add_wild (&tmp, NULL, ldgram_had_keep);
3216 #line 622 "ldgram.y"
3218 lang_add_wild (NULL, (yyvsp[(2) - (3)].wildcard_list), ldgram_had_keep);
3223 #line 626 "ldgram.y"
3225 struct wildcard_spec tmp;
3227 tmp.exclude_name_list = NULL;
3229 tmp.section_flag_list = (yyvsp[(1) - (4)].flag_info);
3230 lang_add_wild (NULL, (yyvsp[(3) - (4)].wildcard_list), ldgram_had_keep);
3235 #line 635 "ldgram.y"
3237 lang_add_wild (&(yyvsp[(1) - (4)].wildcard), (yyvsp[(3) - (4)].wildcard_list), ldgram_had_keep);
3242 #line 639 "ldgram.y"
3244 (yyvsp[(2) - (5)].wildcard).section_flag_list = (yyvsp[(1) - (5)].flag_info);
3245 lang_add_wild (&(yyvsp[(2) - (5)].wildcard), (yyvsp[(4) - (5)].wildcard_list), ldgram_had_keep);
3250 #line 648 "ldgram.y"
3251 { ldgram_had_keep = TRUE; }
3255 #line 650 "ldgram.y"
3256 { ldgram_had_keep = FALSE; }
3260 #line 656 "ldgram.y"
3262 lang_add_attribute(lang_object_symbols_statement_enum);
3267 #line 661 "ldgram.y"
3270 lang_add_attribute(lang_constructors_statement_enum);
3275 #line 666 "ldgram.y"
3277 constructors_sorted = TRUE;
3278 lang_add_attribute (lang_constructors_statement_enum);
3283 #line 672 "ldgram.y"
3285 lang_add_data ((int) (yyvsp[(1) - (4)].integer), (yyvsp[(3) - (4)].etree));
3290 #line 677 "ldgram.y"
3292 lang_add_fill ((yyvsp[(3) - (4)].fill));
3297 #line 680 "ldgram.y"
3298 {ldlex_expression ();}
3302 #line 681 "ldgram.y"
3303 { ldlex_popstate ();
3304 lang_add_assignment (exp_assert ((yyvsp[(4) - (8)].etree), (yyvsp[(6) - (8)].name))); }
3308 #line 684 "ldgram.y"
3309 { ldlex_script (); ldfile_open_command_file((yyvsp[(2) - (2)].name)); }
3313 #line 686 "ldgram.y"
3314 { ldlex_popstate (); }
3318 #line 701 "ldgram.y"
3319 { (yyval.integer) = (yyvsp[(1) - (1)].token); }
3323 #line 703 "ldgram.y"
3324 { (yyval.integer) = (yyvsp[(1) - (1)].token); }
3328 #line 705 "ldgram.y"
3329 { (yyval.integer) = (yyvsp[(1) - (1)].token); }
3333 #line 707 "ldgram.y"
3334 { (yyval.integer) = (yyvsp[(1) - (1)].token); }
3338 #line 709 "ldgram.y"
3339 { (yyval.integer) = (yyvsp[(1) - (1)].token); }
3343 #line 714 "ldgram.y"
3345 (yyval.fill) = exp_get_fill ((yyvsp[(1) - (1)].etree), 0, "fill value");
3350 #line 721 "ldgram.y"
3351 { (yyval.fill) = (yyvsp[(2) - (2)].fill); }
3355 #line 722 "ldgram.y"
3356 { (yyval.fill) = (fill_type *) 0; }
3360 #line 727 "ldgram.y"
3361 { (yyval.token) = '+'; }
3365 #line 729 "ldgram.y"
3366 { (yyval.token) = '-'; }
3370 #line 731 "ldgram.y"
3371 { (yyval.token) = '*'; }
3375 #line 733 "ldgram.y"
3376 { (yyval.token) = '/'; }
3380 #line 735 "ldgram.y"
3381 { (yyval.token) = LSHIFT; }
3385 #line 737 "ldgram.y"
3386 { (yyval.token) = RSHIFT; }
3390 #line 739 "ldgram.y"
3391 { (yyval.token) = '&'; }
3395 #line 741 "ldgram.y"
3396 { (yyval.token) = '|'; }
3400 #line 751 "ldgram.y"
3402 lang_add_assignment (exp_assign ((yyvsp[(1) - (3)].name), (yyvsp[(3) - (3)].etree)));
3407 #line 755 "ldgram.y"
3409 lang_add_assignment (exp_assign ((yyvsp[(1) - (3)].name),
3410 exp_binop ((yyvsp[(2) - (3)].token),
3412 (yyvsp[(1) - (3)].name)),
3413 (yyvsp[(3) - (3)].etree))));
3418 #line 763 "ldgram.y"
3420 lang_add_assignment (exp_provide ((yyvsp[(3) - (6)].name), (yyvsp[(5) - (6)].etree), FALSE));
3425 #line 767 "ldgram.y"
3427 lang_add_assignment (exp_provide ((yyvsp[(3) - (6)].name), (yyvsp[(5) - (6)].etree), TRUE));
3432 #line 790 "ldgram.y"
3433 { region = lang_memory_region_lookup ((yyvsp[(1) - (1)].name), TRUE); }
3437 #line 793 "ldgram.y"
3442 #line 795 "ldgram.y"
3443 { ldlex_script (); ldfile_open_command_file((yyvsp[(2) - (2)].name)); }
3447 #line 797 "ldgram.y"
3448 { ldlex_popstate (); }
3452 #line 802 "ldgram.y"
3454 region->origin = exp_get_vma ((yyvsp[(3) - (3)].etree), 0, "origin");
3455 region->current = region->origin;
3460 #line 810 "ldgram.y"
3462 region->length = exp_get_vma ((yyvsp[(3) - (3)].etree), -1, "length");
3467 #line 817 "ldgram.y"
3468 { /* dummy action to avoid bison 1.25 error message */ }
3472 #line 828 "ldgram.y"
3473 { lang_set_flags (region, (yyvsp[(1) - (1)].name), 0); }
3477 #line 830 "ldgram.y"
3478 { lang_set_flags (region, (yyvsp[(2) - (2)].name), 1); }
3482 #line 835 "ldgram.y"
3483 { lang_startup((yyvsp[(3) - (4)].name)); }
3487 #line 841 "ldgram.y"
3488 { ldemul_hll((char *)NULL); }
3492 #line 846 "ldgram.y"
3493 { ldemul_hll((yyvsp[(3) - (3)].name)); }
3497 #line 848 "ldgram.y"
3498 { ldemul_hll((yyvsp[(1) - (1)].name)); }
3502 #line 856 "ldgram.y"
3503 { ldemul_syslib((yyvsp[(3) - (3)].name)); }
3507 #line 862 "ldgram.y"
3508 { lang_float(TRUE); }
3512 #line 864 "ldgram.y"
3513 { lang_float(FALSE); }
3517 #line 869 "ldgram.y"
3519 (yyval.nocrossref) = NULL;
3524 #line 873 "ldgram.y"
3526 struct lang_nocrossref *n;
3528 n = (struct lang_nocrossref *) xmalloc (sizeof *n);
3529 n->name = (yyvsp[(1) - (2)].name);
3530 n->next = (yyvsp[(2) - (2)].nocrossref);
3531 (yyval.nocrossref) = n;
3536 #line 882 "ldgram.y"
3538 struct lang_nocrossref *n;
3540 n = (struct lang_nocrossref *) xmalloc (sizeof *n);
3541 n->name = (yyvsp[(1) - (3)].name);
3542 n->next = (yyvsp[(3) - (3)].nocrossref);
3543 (yyval.nocrossref) = n;
3548 #line 892 "ldgram.y"
3549 { ldlex_expression (); }
3553 #line 894 "ldgram.y"
3554 { ldlex_popstate (); (yyval.etree)=(yyvsp[(2) - (2)].etree);}
3558 #line 899 "ldgram.y"
3559 { (yyval.etree) = exp_unop ('-', (yyvsp[(2) - (2)].etree)); }
3563 #line 901 "ldgram.y"
3564 { (yyval.etree) = (yyvsp[(2) - (3)].etree); }
3568 #line 903 "ldgram.y"
3569 { (yyval.etree) = exp_unop ((int) (yyvsp[(1) - (4)].integer),(yyvsp[(3) - (4)].etree)); }
3573 #line 905 "ldgram.y"
3574 { (yyval.etree) = exp_unop ('!', (yyvsp[(2) - (2)].etree)); }
3578 #line 907 "ldgram.y"
3579 { (yyval.etree) = (yyvsp[(2) - (2)].etree); }
3583 #line 909 "ldgram.y"
3584 { (yyval.etree) = exp_unop ('~', (yyvsp[(2) - (2)].etree));}
3588 #line 912 "ldgram.y"
3589 { (yyval.etree) = exp_binop ('*', (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3593 #line 914 "ldgram.y"
3594 { (yyval.etree) = exp_binop ('/', (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3598 #line 916 "ldgram.y"
3599 { (yyval.etree) = exp_binop ('%', (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3603 #line 918 "ldgram.y"
3604 { (yyval.etree) = exp_binop ('+', (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3608 #line 920 "ldgram.y"
3609 { (yyval.etree) = exp_binop ('-' , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3613 #line 922 "ldgram.y"
3614 { (yyval.etree) = exp_binop (LSHIFT , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3618 #line 924 "ldgram.y"
3619 { (yyval.etree) = exp_binop (RSHIFT , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3623 #line 926 "ldgram.y"
3624 { (yyval.etree) = exp_binop (EQ , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3628 #line 928 "ldgram.y"
3629 { (yyval.etree) = exp_binop (NE , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3633 #line 930 "ldgram.y"
3634 { (yyval.etree) = exp_binop (LE , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3638 #line 932 "ldgram.y"
3639 { (yyval.etree) = exp_binop (GE , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3643 #line 934 "ldgram.y"
3644 { (yyval.etree) = exp_binop ('<' , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3648 #line 936 "ldgram.y"
3649 { (yyval.etree) = exp_binop ('>' , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3653 #line 938 "ldgram.y"
3654 { (yyval.etree) = exp_binop ('&' , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3658 #line 940 "ldgram.y"
3659 { (yyval.etree) = exp_binop ('^' , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3663 #line 942 "ldgram.y"
3664 { (yyval.etree) = exp_binop ('|' , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3668 #line 944 "ldgram.y"
3669 { (yyval.etree) = exp_trinop ('?' , (yyvsp[(1) - (5)].etree), (yyvsp[(3) - (5)].etree), (yyvsp[(5) - (5)].etree)); }
3673 #line 946 "ldgram.y"
3674 { (yyval.etree) = exp_binop (ANDAND , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3678 #line 948 "ldgram.y"
3679 { (yyval.etree) = exp_binop (OROR , (yyvsp[(1) - (3)].etree), (yyvsp[(3) - (3)].etree)); }
3683 #line 950 "ldgram.y"
3684 { (yyval.etree) = exp_nameop (DEFINED, (yyvsp[(3) - (4)].name)); }
3688 #line 952 "ldgram.y"
3689 { (yyval.etree) = exp_bigintop ((yyvsp[(1) - (1)].bigint).integer, (yyvsp[(1) - (1)].bigint).str); }
3693 #line 954 "ldgram.y"
3694 { (yyval.etree) = exp_nameop (SIZEOF_HEADERS,0); }
3698 #line 957 "ldgram.y"
3699 { (yyval.etree) = exp_nameop (ALIGNOF,(yyvsp[(3) - (4)].name)); }
3703 #line 959 "ldgram.y"
3704 { (yyval.etree) = exp_nameop (SIZEOF,(yyvsp[(3) - (4)].name)); }
3708 #line 961 "ldgram.y"
3709 { (yyval.etree) = exp_nameop (ADDR,(yyvsp[(3) - (4)].name)); }
3713 #line 963 "ldgram.y"
3714 { (yyval.etree) = exp_nameop (LOADADDR,(yyvsp[(3) - (4)].name)); }
3718 #line 965 "ldgram.y"
3719 { (yyval.etree) = exp_nameop (CONSTANT,(yyvsp[(3) - (4)].name)); }
3723 #line 967 "ldgram.y"
3724 { (yyval.etree) = exp_unop (ABSOLUTE, (yyvsp[(3) - (4)].etree)); }
3728 #line 969 "ldgram.y"
3729 { (yyval.etree) = exp_unop (ALIGN_K,(yyvsp[(3) - (4)].etree)); }
3733 #line 971 "ldgram.y"
3734 { (yyval.etree) = exp_binop (ALIGN_K,(yyvsp[(3) - (6)].etree),(yyvsp[(5) - (6)].etree)); }
3738 #line 973 "ldgram.y"
3739 { (yyval.etree) = exp_binop (DATA_SEGMENT_ALIGN, (yyvsp[(3) - (6)].etree), (yyvsp[(5) - (6)].etree)); }
3743 #line 975 "ldgram.y"
3744 { (yyval.etree) = exp_binop (DATA_SEGMENT_RELRO_END, (yyvsp[(5) - (6)].etree), (yyvsp[(3) - (6)].etree)); }
3748 #line 977 "ldgram.y"
3749 { (yyval.etree) = exp_unop (DATA_SEGMENT_END, (yyvsp[(3) - (4)].etree)); }
3753 #line 979 "ldgram.y"
3754 { /* The operands to the expression node are
3755 placed in the opposite order from the way
3756 in which they appear in the script as
3757 that allows us to reuse more code in
3759 (yyval.etree) = exp_binop (SEGMENT_START,
3760 (yyvsp[(5) - (6)].etree),
3761 exp_nameop (NAME, (yyvsp[(3) - (6)].name))); }
3765 #line 988 "ldgram.y"
3766 { (yyval.etree) = exp_unop (ALIGN_K,(yyvsp[(3) - (4)].etree)); }
3770 #line 990 "ldgram.y"
3771 { (yyval.etree) = exp_nameop (NAME,(yyvsp[(1) - (1)].name)); }
3775 #line 992 "ldgram.y"
3776 { (yyval.etree) = exp_binop (MAX_K, (yyvsp[(3) - (6)].etree), (yyvsp[(5) - (6)].etree) ); }
3780 #line 994 "ldgram.y"
3781 { (yyval.etree) = exp_binop (MIN_K, (yyvsp[(3) - (6)].etree), (yyvsp[(5) - (6)].etree) ); }
3785 #line 996 "ldgram.y"
3786 { (yyval.etree) = exp_assert ((yyvsp[(3) - (6)].etree), (yyvsp[(5) - (6)].name)); }
3790 #line 998 "ldgram.y"
3791 { (yyval.etree) = exp_nameop (ORIGIN, (yyvsp[(3) - (4)].name)); }
3795 #line 1000 "ldgram.y"
3796 { (yyval.etree) = exp_nameop (LENGTH, (yyvsp[(3) - (4)].name)); }
3800 #line 1005 "ldgram.y"
3801 { (yyval.name) = (yyvsp[(3) - (3)].name); }
3805 #line 1006 "ldgram.y"
3806 { (yyval.name) = 0; }
3810 #line 1010 "ldgram.y"
3811 { (yyval.etree) = (yyvsp[(3) - (4)].etree); }
3815 #line 1011 "ldgram.y"
3816 { (yyval.etree) = 0; }
3820 #line 1015 "ldgram.y"
3821 { (yyval.etree) = (yyvsp[(3) - (4)].etree); }
3825 #line 1016 "ldgram.y"
3826 { (yyval.etree) = 0; }
3830 #line 1020 "ldgram.y"
3831 { (yyval.etree) = (yyvsp[(3) - (4)].etree); }
3835 #line 1021 "ldgram.y"
3836 { (yyval.etree) = 0; }
3840 #line 1025 "ldgram.y"
3841 { (yyval.token) = ONLY_IF_RO; }
3845 #line 1026 "ldgram.y"
3846 { (yyval.token) = ONLY_IF_RW; }
3850 #line 1027 "ldgram.y"
3851 { (yyval.token) = SPECIAL; }
3855 #line 1028 "ldgram.y"
3856 { (yyval.token) = 0; }
3860 #line 1031 "ldgram.y"
3861 { ldlex_expression(); }
3865 #line 1035 "ldgram.y"
3866 { ldlex_popstate (); ldlex_script (); }
3870 #line 1038 "ldgram.y"
3872 lang_enter_output_section_statement((yyvsp[(1) - (9)].name), (yyvsp[(3) - (9)].etree),
3874 (yyvsp[(5) - (9)].etree), (yyvsp[(6) - (9)].etree), (yyvsp[(4) - (9)].etree), (yyvsp[(8) - (9)].token));
3879 #line 1044 "ldgram.y"
3880 { ldlex_popstate (); ldlex_expression (); }
3884 #line 1046 "ldgram.y"
3887 lang_leave_output_section_statement ((yyvsp[(17) - (17)].fill), (yyvsp[(14) - (17)].name), (yyvsp[(16) - (17)].section_phdr), (yyvsp[(15) - (17)].name));
3892 #line 1051 "ldgram.y"
3897 #line 1053 "ldgram.y"
3898 { ldlex_expression (); }
3902 #line 1055 "ldgram.y"
3903 { ldlex_popstate (); ldlex_script (); }
3907 #line 1057 "ldgram.y"
3909 lang_enter_overlay ((yyvsp[(3) - (8)].etree), (yyvsp[(6) - (8)].etree));
3914 #line 1062 "ldgram.y"
3915 { ldlex_popstate (); ldlex_expression (); }
3919 #line 1064 "ldgram.y"
3922 lang_leave_overlay ((yyvsp[(5) - (16)].etree), (int) (yyvsp[(4) - (16)].integer),
3923 (yyvsp[(16) - (16)].fill), (yyvsp[(13) - (16)].name), (yyvsp[(15) - (16)].section_phdr), (yyvsp[(14) - (16)].name));
3928 #line 1074 "ldgram.y"
3929 { ldlex_expression (); }
3933 #line 1076 "ldgram.y"
3936 lang_add_assignment (exp_assign (".", (yyvsp[(3) - (3)].etree)));
3941 #line 1082 "ldgram.y"
3942 { ldlex_script (); ldfile_open_command_file((yyvsp[(2) - (2)].name)); }
3946 #line 1084 "ldgram.y"
3947 { ldlex_popstate (); }
3951 #line 1088 "ldgram.y"
3952 { sectype = noload_section; }
3956 #line 1089 "ldgram.y"
3957 { sectype = noalloc_section; }
3961 #line 1090 "ldgram.y"
3962 { sectype = noalloc_section; }
3966 #line 1091 "ldgram.y"
3967 { sectype = noalloc_section; }
3971 #line 1092 "ldgram.y"
3972 { sectype = noalloc_section; }
3976 #line 1097 "ldgram.y"
3977 { sectype = normal_section; }
3981 #line 1098 "ldgram.y"
3982 { sectype = normal_section; }
3986 #line 1102 "ldgram.y"
3987 { (yyval.etree) = (yyvsp[(1) - (3)].etree); }
3991 #line 1103 "ldgram.y"
3992 { (yyval.etree) = (etree_type *)NULL; }
3996 #line 1108 "ldgram.y"
3997 { (yyval.etree) = (yyvsp[(3) - (6)].etree); }
4001 #line 1110 "ldgram.y"
4002 { (yyval.etree) = (yyvsp[(3) - (10)].etree); }
4006 #line 1114 "ldgram.y"
4007 { (yyval.etree) = (yyvsp[(1) - (2)].etree); }
4011 #line 1115 "ldgram.y"
4012 { (yyval.etree) = (etree_type *) NULL; }
4016 #line 1120 "ldgram.y"
4017 { (yyval.integer) = 0; }
4021 #line 1122 "ldgram.y"
4022 { (yyval.integer) = 1; }
4026 #line 1127 "ldgram.y"
4027 { (yyval.name) = (yyvsp[(2) - (2)].name); }
4031 #line 1128 "ldgram.y"
4032 { (yyval.name) = DEFAULT_MEMORY_REGION; }
4036 #line 1133 "ldgram.y"
4038 (yyval.section_phdr) = NULL;
4043 #line 1137 "ldgram.y"
4045 struct lang_output_section_phdr_list *n;
4047 n = ((struct lang_output_section_phdr_list *)
4048 xmalloc (sizeof *n));
4049 n->name = (yyvsp[(3) - (3)].name);
4051 n->next = (yyvsp[(1) - (3)].section_phdr);
4052 (yyval.section_phdr) = n;
4057 #line 1153 "ldgram.y"
4060 lang_enter_overlay_section ((yyvsp[(2) - (2)].name));
4065 #line 1158 "ldgram.y"
4066 { ldlex_popstate (); ldlex_expression (); }
4070 #line 1160 "ldgram.y"
4073 lang_leave_overlay_section ((yyvsp[(9) - (9)].fill), (yyvsp[(8) - (9)].section_phdr));
4078 #line 1177 "ldgram.y"
4079 { ldlex_expression (); }
4083 #line 1178 "ldgram.y"
4084 { ldlex_popstate (); }
4088 #line 1180 "ldgram.y"
4090 lang_new_phdr ((yyvsp[(1) - (6)].name), (yyvsp[(3) - (6)].etree), (yyvsp[(4) - (6)].phdr).filehdr, (yyvsp[(4) - (6)].phdr).phdrs, (yyvsp[(4) - (6)].phdr).at,
4091 (yyvsp[(4) - (6)].phdr).flags);
4096 #line 1188 "ldgram.y"
4098 (yyval.etree) = (yyvsp[(1) - (1)].etree);
4100 if ((yyvsp[(1) - (1)].etree)->type.node_class == etree_name
4101 && (yyvsp[(1) - (1)].etree)->type.node_code == NAME)
4105 static const char * const phdr_types[] =
4107 "PT_NULL", "PT_LOAD", "PT_DYNAMIC",
4108 "PT_INTERP", "PT_NOTE", "PT_SHLIB",
4112 s = (yyvsp[(1) - (1)].etree)->name.name;
4114 i < sizeof phdr_types / sizeof phdr_types[0];
4116 if (strcmp (s, phdr_types[i]) == 0)
4118 (yyval.etree) = exp_intop (i);
4121 if (i == sizeof phdr_types / sizeof phdr_types[0])
4123 if (strcmp (s, "PT_GNU_EH_FRAME") == 0)
4124 (yyval.etree) = exp_intop (0x6474e550);
4125 else if (strcmp (s, "PT_GNU_STACK") == 0)
4126 (yyval.etree) = exp_intop (0x6474e551);
4130 %X%P:%S: unknown phdr type `%s' (try integer literal)\n"),
4132 (yyval.etree) = exp_intop (0);
4140 #line 1232 "ldgram.y"
4142 memset (&(yyval.phdr), 0, sizeof (struct phdr_info));
4147 #line 1236 "ldgram.y"
4149 (yyval.phdr) = (yyvsp[(3) - (3)].phdr);
4150 if (strcmp ((yyvsp[(1) - (3)].name), "FILEHDR") == 0 && (yyvsp[(2) - (3)].etree) == NULL)
4151 (yyval.phdr).filehdr = TRUE;
4152 else if (strcmp ((yyvsp[(1) - (3)].name), "PHDRS") == 0 && (yyvsp[(2) - (3)].etree) == NULL)
4153 (yyval.phdr).phdrs = TRUE;
4154 else if (strcmp ((yyvsp[(1) - (3)].name), "FLAGS") == 0 && (yyvsp[(2) - (3)].etree) != NULL)
4155 (yyval.phdr).flags = (yyvsp[(2) - (3)].etree);
4157 einfo (_("%X%P:%S: PHDRS syntax error at `%s'\n"), (yyvsp[(1) - (3)].name));
4162 #line 1248 "ldgram.y"
4164 (yyval.phdr) = (yyvsp[(5) - (5)].phdr);
4165 (yyval.phdr).at = (yyvsp[(3) - (5)].etree);
4170 #line 1256 "ldgram.y"
4172 (yyval.etree) = NULL;
4177 #line 1260 "ldgram.y"
4179 (yyval.etree) = (yyvsp[(2) - (3)].etree);
4184 #line 1266 "ldgram.y"
4186 ldlex_version_file ();
4187 PUSH_ERROR (_("dynamic list"));
4192 #line 1271 "ldgram.y"
4200 #line 1288 "ldgram.y"
4202 lang_append_dynamic_list ((yyvsp[(1) - (2)].versyms));
4207 #line 1296 "ldgram.y"
4209 ldlex_version_file ();
4210 PUSH_ERROR (_("VERSION script"));
4215 #line 1301 "ldgram.y"
4223 #line 1310 "ldgram.y"
4225 ldlex_version_script ();
4230 #line 1314 "ldgram.y"
4237 #line 1326 "ldgram.y"
4239 lang_register_vers_node (NULL, (yyvsp[(2) - (4)].versnode), NULL);
4244 #line 1330 "ldgram.y"
4246 lang_register_vers_node ((yyvsp[(1) - (5)].name), (yyvsp[(3) - (5)].versnode), NULL);
4251 #line 1334 "ldgram.y"
4253 lang_register_vers_node ((yyvsp[(1) - (6)].name), (yyvsp[(3) - (6)].versnode), (yyvsp[(5) - (6)].deflist));
4258 #line 1341 "ldgram.y"
4260 (yyval.deflist) = lang_add_vers_depend (NULL, (yyvsp[(1) - (1)].name));
4265 #line 1345 "ldgram.y"
4267 (yyval.deflist) = lang_add_vers_depend ((yyvsp[(1) - (2)].deflist), (yyvsp[(2) - (2)].name));
4272 #line 1352 "ldgram.y"
4274 (yyval.versnode) = lang_new_vers_node (NULL, NULL);
4279 #line 1356 "ldgram.y"
4281 (yyval.versnode) = lang_new_vers_node ((yyvsp[(1) - (2)].versyms), NULL);
4286 #line 1360 "ldgram.y"
4288 (yyval.versnode) = lang_new_vers_node ((yyvsp[(3) - (4)].versyms), NULL);
4293 #line 1364 "ldgram.y"
4295 (yyval.versnode) = lang_new_vers_node (NULL, (yyvsp[(3) - (4)].versyms));
4300 #line 1368 "ldgram.y"
4302 (yyval.versnode) = lang_new_vers_node ((yyvsp[(3) - (8)].versyms), (yyvsp[(7) - (8)].versyms));
4307 #line 1375 "ldgram.y"
4309 (yyval.versyms) = lang_new_vers_pattern (NULL, (yyvsp[(1) - (1)].name), ldgram_vers_current_lang, FALSE);
4314 #line 1379 "ldgram.y"
4316 (yyval.versyms) = lang_new_vers_pattern (NULL, (yyvsp[(1) - (1)].name), ldgram_vers_current_lang, TRUE);
4321 #line 1383 "ldgram.y"
4323 (yyval.versyms) = lang_new_vers_pattern ((yyvsp[(1) - (3)].versyms), (yyvsp[(3) - (3)].name), ldgram_vers_current_lang, FALSE);
4328 #line 1387 "ldgram.y"
4330 (yyval.versyms) = lang_new_vers_pattern ((yyvsp[(1) - (3)].versyms), (yyvsp[(3) - (3)].name), ldgram_vers_current_lang, TRUE);
4335 #line 1391 "ldgram.y"
4337 (yyval.name) = ldgram_vers_current_lang;
4338 ldgram_vers_current_lang = (yyvsp[(4) - (5)].name);
4343 #line 1396 "ldgram.y"
4345 struct bfd_elf_version_expr *pat;
4346 for (pat = (yyvsp[(7) - (9)].versyms); pat->next != NULL; pat = pat->next);
4347 pat->next = (yyvsp[(1) - (9)].versyms);
4348 (yyval.versyms) = (yyvsp[(7) - (9)].versyms);
4349 ldgram_vers_current_lang = (yyvsp[(6) - (9)].name);
4354 #line 1404 "ldgram.y"
4356 (yyval.name) = ldgram_vers_current_lang;
4357 ldgram_vers_current_lang = (yyvsp[(2) - (3)].name);
4362 #line 1409 "ldgram.y"
4364 (yyval.versyms) = (yyvsp[(5) - (7)].versyms);
4365 ldgram_vers_current_lang = (yyvsp[(4) - (7)].name);
4370 #line 1414 "ldgram.y"
4372 (yyval.versyms) = lang_new_vers_pattern (NULL, "global", ldgram_vers_current_lang, FALSE);
4377 #line 1418 "ldgram.y"
4379 (yyval.versyms) = lang_new_vers_pattern ((yyvsp[(1) - (3)].versyms), "global", ldgram_vers_current_lang, FALSE);
4384 #line 1422 "ldgram.y"
4386 (yyval.versyms) = lang_new_vers_pattern (NULL, "local", ldgram_vers_current_lang, FALSE);
4391 #line 1426 "ldgram.y"
4393 (yyval.versyms) = lang_new_vers_pattern ((yyvsp[(1) - (3)].versyms), "local", ldgram_vers_current_lang, FALSE);
4398 #line 1430 "ldgram.y"
4400 (yyval.versyms) = lang_new_vers_pattern (NULL, "extern", ldgram_vers_current_lang, FALSE);
4405 #line 1434 "ldgram.y"
4407 (yyval.versyms) = lang_new_vers_pattern ((yyvsp[(1) - (3)].versyms), "extern", ldgram_vers_current_lang, FALSE);
4412 /* Line 1267 of yacc.c. */
4413 #line 4414 "ldgram.c"
4416 YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
4420 YY_STACK_PRINT (yyss, yyssp);
4425 /* Now `shift' the result of the reduction. Determine what state
4426 that goes to, based on the state we popped back to and the rule
4427 number reduced by. */
4431 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
4432 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
4433 yystate = yytable[yystate];
4435 yystate = yydefgoto[yyn - YYNTOKENS];
4440 /*------------------------------------.
4441 | yyerrlab -- here on detecting error |
4442 `------------------------------------*/
4444 /* If not already recovering from an error, report this error. */
4448 #if ! YYERROR_VERBOSE
4449 yyerror (YY_("syntax error"));
4452 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
4453 if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
4455 YYSIZE_T yyalloc = 2 * yysize;
4456 if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
4457 yyalloc = YYSTACK_ALLOC_MAXIMUM;
4458 if (yymsg != yymsgbuf)
4459 YYSTACK_FREE (yymsg);
4460 yymsg = (char *) YYSTACK_ALLOC (yyalloc);
4462 yymsg_alloc = yyalloc;
4466 yymsg_alloc = sizeof yymsgbuf;
4470 if (0 < yysize && yysize <= yymsg_alloc)
4472 (void) yysyntax_error (yymsg, yystate, yychar);
4477 yyerror (YY_("syntax error"));
4479 goto yyexhaustedlab;
4487 if (yyerrstatus == 3)
4489 /* If just tried and failed to reuse look-ahead token after an
4490 error, discard it. */
4492 if (yychar <= YYEOF)
4494 /* Return failure if at end of input. */
4495 if (yychar == YYEOF)
4500 yydestruct ("Error: discarding",
4506 /* Else will try to reuse look-ahead token after shifting the error
4511 /*---------------------------------------------------.
4512 | yyerrorlab -- error raised explicitly by YYERROR. |
4513 `---------------------------------------------------*/
4516 /* Pacify compilers like GCC when the user code never invokes
4517 YYERROR and the label yyerrorlab therefore never appears in user
4519 if (/*CONSTCOND*/ 0)
4522 /* Do not reclaim the symbols of the rule which action triggered
4526 YY_STACK_PRINT (yyss, yyssp);
4531 /*-------------------------------------------------------------.
4532 | yyerrlab1 -- common code for both syntax error and YYERROR. |
4533 `-------------------------------------------------------------*/
4535 yyerrstatus = 3; /* Each real token shifted decrements this. */
4539 yyn = yypact[yystate];
4540 if (yyn != YYPACT_NINF)
4543 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
4551 /* Pop the current state because it cannot handle the error token. */
4556 yydestruct ("Error: popping",
4557 yystos[yystate], yyvsp);
4560 YY_STACK_PRINT (yyss, yyssp);
4569 /* Shift the error token. */
4570 YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
4576 /*-------------------------------------.
4577 | yyacceptlab -- YYACCEPT comes here. |
4578 `-------------------------------------*/
4583 /*-----------------------------------.
4584 | yyabortlab -- YYABORT comes here. |
4585 `-----------------------------------*/
4591 /*-------------------------------------------------.
4592 | yyexhaustedlab -- memory exhaustion comes here. |
4593 `-------------------------------------------------*/
4595 yyerror (YY_("memory exhausted"));
4601 if (yychar != YYEOF && yychar != YYEMPTY)
4602 yydestruct ("Cleanup: discarding lookahead",
4604 /* Do not reclaim the symbols of the rule which action triggered
4605 this YYABORT or YYACCEPT. */
4607 YY_STACK_PRINT (yyss, yyssp);
4608 while (yyssp != yyss)
4610 yydestruct ("Cleanup: popping",
4611 yystos[*yyssp], yyvsp);
4616 YYSTACK_FREE (yyss);
4619 if (yymsg != yymsgbuf)
4620 YYSTACK_FREE (yymsg);
4622 /* Make sure YYID is used. */
4623 return YYID (yyresult);
4627 #line 1444 "ldgram.y"
4633 if (ldfile_assumed_script)
4634 einfo (_("%P:%s: file format not recognized; treating as linker script\n"),
4635 ldfile_input_filename);
4636 if (error_index > 0 && error_index < ERROR_NAME_MAX)
4637 einfo ("%P%F:%S: %s in %s\n", arg, error_names[error_index-1]);
4639 einfo ("%P%F:%S: %s\n", arg);