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 SIZEOF_HEADERS
= 297,
110 FORCE_COMMON_ALLOCATION
= 299,
112 INHIBIT_COMMON_ALLOCATION
= 301,
143 CREATE_OBJECT_SYMBOLS
= 332,
152 PROVIDE_HIDDEN
= 341,
172 INPUT_MRI_SCRIPT
= 361,
178 VERS_IDENTIFIER
= 367,
182 INPUT_VERSION_SCRIPT
= 371,
189 INPUT_DYNAMIC_LIST
= 378
227 #define DATA_SEGMENT_ALIGN 292
228 #define DATA_SEGMENT_RELRO_END 293
229 #define DATA_SEGMENT_END 294
230 #define SORT_BY_NAME 295
231 #define SORT_BY_ALIGNMENT 296
232 #define SIZEOF_HEADERS 297
233 #define OUTPUT_FORMAT 298
234 #define FORCE_COMMON_ALLOCATION 299
235 #define OUTPUT_ARCH 300
236 #define INHIBIT_COMMON_ALLOCATION 301
237 #define SEGMENT_START 302
240 #define REGION_ALIAS 305
248 #define SEARCH_DIR 313
263 #define NOCROSSREFS 328
267 #define CREATE_OBJECT_SYMBOLS 332
271 #define CONSTRUCTORS 336
276 #define PROVIDE_HIDDEN 341
277 #define AS_NEEDED 342
290 #define DEFSYMEND 355
295 #define INPUT_SCRIPT 360
296 #define INPUT_MRI_SCRIPT 361
297 #define INPUT_DEFSYM 362
302 #define VERS_IDENTIFIER 367
306 #define INPUT_VERSION_SCRIPT 371
308 #define ONLY_IF_RO 373
309 #define ONLY_IF_RW 374
311 #define EXCLUDE_FILE 376
313 #define INPUT_DYNAMIC_LIST 378
318 /* Copy the first part of user declarations. */
325 #define DONTDECLARE_MALLOC
346 static enum section_type sectype
;
347 static lang_memory_region_type
*region
;
349 bfd_boolean ldgram_had_keep
= FALSE
;
350 char *ldgram_vers_current_lang
= NULL
;
352 #define ERROR_NAME_MAX 20
353 static char *error_names
[ERROR_NAME_MAX
];
354 static int error_index
;
355 #define PUSH_ERROR(x) if (error_index < ERROR_NAME_MAX) error_names[error_index] = x; error_index++;
356 #define POP_ERROR() error_index--;
359 /* Enabling traces. */
364 /* Enabling verbose error messages. */
365 #ifdef YYERROR_VERBOSE
366 # undef YYERROR_VERBOSE
367 # define YYERROR_VERBOSE 1
369 # define YYERROR_VERBOSE 0
372 /* Enabling the token table. */
373 #ifndef YYTOKEN_TABLE
374 # define YYTOKEN_TABLE 0
377 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
378 typedef union YYSTYPE
390 struct wildcard_spec wildcard
;
391 struct wildcard_list
*wildcard_list
;
392 struct name_list
*name_list
;
394 union etree_union
*etree
;
399 union etree_union
*at
;
400 union etree_union
*flags
;
402 struct lang_nocrossref
*nocrossref
;
403 struct lang_output_section_phdr_list
*section_phdr
;
404 struct bfd_elf_version_deps
*deflist
;
405 struct bfd_elf_version_expr
*versyms
;
406 struct bfd_elf_version_tree
*versnode
;
408 /* Line 193 of yacc.c. */
411 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
412 # define YYSTYPE_IS_DECLARED 1
413 # define YYSTYPE_IS_TRIVIAL 1
418 /* Copy the second part of user declarations. */
421 /* Line 216 of yacc.c. */
429 typedef YYTYPE_UINT8 yytype_uint8
;
431 typedef unsigned char yytype_uint8
;
435 typedef YYTYPE_INT8 yytype_int8
;
436 #elif (defined __STDC__ || defined __C99__FUNC__ \
437 || defined __cplusplus || defined _MSC_VER)
438 typedef signed char yytype_int8
;
440 typedef short int yytype_int8
;
444 typedef YYTYPE_UINT16 yytype_uint16
;
446 typedef unsigned short int yytype_uint16
;
450 typedef YYTYPE_INT16 yytype_int16
;
452 typedef short int yytype_int16
;
456 # ifdef __SIZE_TYPE__
457 # define YYSIZE_T __SIZE_TYPE__
458 # elif defined size_t
459 # define YYSIZE_T size_t
460 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
461 || defined __cplusplus || defined _MSC_VER)
462 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
463 # define YYSIZE_T size_t
465 # define YYSIZE_T unsigned int
469 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
472 # if defined YYENABLE_NLS && YYENABLE_NLS
474 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
475 # define YY_(msgid) dgettext ("bison-runtime", msgid)
479 # define YY_(msgid) msgid
483 /* Suppress unused-variable warnings by "using" E. */
484 #if ! defined lint || defined __GNUC__
485 # define YYUSE(e) ((void) (e))
487 # define YYUSE(e) /* empty */
490 /* Identity function, used to suppress warnings about constant conditions. */
494 #if (defined __STDC__ || defined __C99__FUNC__ \
495 || defined __cplusplus || defined _MSC_VER)
508 #if ! defined yyoverflow || YYERROR_VERBOSE
510 /* The parser invokes alloca or malloc; define the necessary symbols. */
512 # ifdef YYSTACK_USE_ALLOCA
513 # if YYSTACK_USE_ALLOCA
515 # define YYSTACK_ALLOC __builtin_alloca
516 # elif defined __BUILTIN_VA_ARG_INCR
517 # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
519 # define YYSTACK_ALLOC __alloca
520 # elif defined _MSC_VER
521 # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
522 # define alloca _alloca
524 # define YYSTACK_ALLOC alloca
525 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
526 || defined __cplusplus || defined _MSC_VER)
527 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
536 # ifdef YYSTACK_ALLOC
537 /* Pacify GCC's `empty if-body' warning. */
538 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
539 # ifndef YYSTACK_ALLOC_MAXIMUM
540 /* The OS might guarantee only one guard page at the bottom of the stack,
541 and a page size can be as small as 4096 bytes. So we cannot safely
542 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
543 to allow for a few compiler-allocated temporary stack slots. */
544 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
547 # define YYSTACK_ALLOC YYMALLOC
548 # define YYSTACK_FREE YYFREE
549 # ifndef YYSTACK_ALLOC_MAXIMUM
550 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
552 # if (defined __cplusplus && ! defined _STDLIB_H \
553 && ! ((defined YYMALLOC || defined malloc) \
554 && (defined YYFREE || defined free)))
555 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
561 # define YYMALLOC malloc
562 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
563 || defined __cplusplus || defined _MSC_VER)
564 void *malloc (YYSIZE_T
); /* INFRINGES ON USER NAME SPACE */
569 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
570 || defined __cplusplus || defined _MSC_VER)
571 void free (void *); /* INFRINGES ON USER NAME SPACE */
575 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
578 #if (! defined yyoverflow \
579 && (! defined __cplusplus \
580 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
582 /* A type that is properly aligned for any stack member. */
589 /* The size of the maximum gap between one aligned stack and the next. */
590 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
592 /* The size of an array large to enough to hold all stacks, each with
594 # define YYSTACK_BYTES(N) \
595 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
596 + YYSTACK_GAP_MAXIMUM)
598 /* Copy COUNT objects from FROM to TO. The source and destination do
601 # if defined __GNUC__ && 1 < __GNUC__
602 # define YYCOPY(To, From, Count) \
603 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
605 # define YYCOPY(To, From, Count) \
609 for (yyi = 0; yyi < (Count); yyi++) \
610 (To)[yyi] = (From)[yyi]; \
616 /* Relocate STACK from its old location to the new one. The
617 local variables YYSIZE and YYSTACKSIZE give the old and new number of
618 elements in the stack, and YYPTR gives the new location of the
619 stack. Advance YYPTR to a properly aligned location for the next
621 # define YYSTACK_RELOCATE(Stack) \
624 YYSIZE_T yynewbytes; \
625 YYCOPY (&yyptr->Stack, Stack, yysize); \
626 Stack = &yyptr->Stack; \
627 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
628 yyptr += yynewbytes / sizeof (*yyptr); \
634 /* YYFINAL -- State number of the termination state. */
636 /* YYLAST -- Last index in YYTABLE. */
639 /* YYNTOKENS -- Number of terminals. */
640 #define YYNTOKENS 147
641 /* YYNNTS -- Number of nonterminals. */
643 /* YYNRULES -- Number of rules. */
645 /* YYNRULES -- Number of states. */
646 #define YYNSTATES 763
648 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
650 #define YYMAXUTOK 378
652 #define YYTRANSLATE(YYX) \
653 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
655 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
656 static const yytype_uint8 yytranslate
[] =
658 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
659 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
660 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
661 2, 2, 2, 145, 2, 2, 2, 34, 21, 2,
662 37, 142, 32, 30, 140, 31, 2, 33, 2, 2,
663 2, 2, 2, 2, 2, 2, 2, 2, 16, 141,
664 24, 6, 25, 15, 2, 2, 2, 2, 2, 2,
665 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
666 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
667 2, 143, 2, 144, 20, 2, 2, 2, 2, 2,
668 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
669 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
670 2, 2, 2, 56, 19, 57, 146, 2, 2, 2,
671 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
672 2, 2, 2, 2, 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, 2, 2, 2, 2, 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, 2, 2, 2, 2, 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, 1, 2, 3, 4,
684 5, 7, 8, 9, 10, 11, 12, 13, 14, 17,
685 18, 22, 23, 26, 27, 28, 29, 35, 36, 38,
686 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
687 49, 50, 51, 52, 53, 54, 55, 58, 59, 60,
688 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
689 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
690 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
691 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
692 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
693 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
694 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
695 131, 132, 133, 134, 135, 136, 137, 138, 139
699 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
701 static const yytype_uint16 yyprhs
[] =
703 0, 0, 3, 6, 9, 12, 15, 18, 20, 21,
704 26, 27, 30, 34, 35, 38, 43, 45, 47, 50,
705 52, 57, 62, 66, 69, 74, 78, 83, 88, 93,
706 98, 103, 106, 109, 112, 117, 122, 125, 128, 131,
707 134, 135, 141, 144, 145, 149, 152, 153, 155, 159,
708 161, 165, 166, 168, 172, 173, 176, 178, 181, 185,
709 186, 189, 192, 193, 195, 197, 199, 201, 203, 205,
710 207, 209, 211, 213, 218, 223, 228, 233, 242, 247,
711 249, 251, 256, 257, 263, 268, 269, 275, 280, 285,
712 289, 293, 300, 302, 306, 309, 311, 315, 318, 319,
713 325, 326, 334, 335, 342, 347, 350, 353, 354, 359,
714 362, 363, 371, 373, 375, 377, 379, 385, 390, 395,
715 403, 411, 419, 427, 436, 439, 441, 445, 447, 449,
716 453, 458, 460, 461, 467, 470, 472, 474, 476, 481,
717 483, 488, 493, 494, 503, 504, 510, 513, 515, 516,
718 518, 520, 522, 524, 526, 528, 530, 533, 534, 536,
719 538, 540, 542, 544, 546, 548, 550, 552, 554, 558,
720 562, 569, 576, 578, 579, 584, 586, 587, 591, 593,
721 594, 602, 603, 609, 613, 617, 618, 622, 624, 627,
722 629, 632, 637, 642, 646, 650, 652, 657, 661, 662,
723 664, 666, 667, 670, 674, 675, 678, 681, 685, 690,
724 693, 696, 699, 703, 707, 711, 715, 719, 723, 727,
725 731, 735, 739, 743, 747, 751, 755, 759, 763, 769,
726 773, 777, 782, 784, 786, 791, 796, 801, 806, 811,
727 816, 821, 828, 835, 842, 847, 854, 859, 861, 868,
728 875, 882, 887, 892, 896, 897, 902, 903, 908, 909,
729 914, 915, 917, 919, 921, 922, 923, 924, 925, 926,
730 927, 947, 948, 949, 950, 951, 952, 971, 972, 973,
731 981, 982, 988, 990, 992, 994, 996, 998, 1002, 1003,
732 1006, 1010, 1013, 1020, 1031, 1034, 1036, 1037, 1039, 1042,
733 1043, 1044, 1048, 1049, 1050, 1051, 1052, 1064, 1069, 1070,
734 1073, 1074, 1075, 1082, 1084, 1085, 1089, 1095, 1096, 1100,
735 1101, 1104, 1106, 1109, 1114, 1117, 1118, 1121, 1122, 1128,
736 1130, 1133, 1138, 1144, 1151, 1153, 1156, 1157, 1160, 1165,
737 1170, 1179, 1181, 1183, 1187, 1191, 1192, 1202, 1203, 1211,
738 1213, 1217, 1219, 1223, 1225, 1229, 1230
741 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
742 static const yytype_int16 yyrhs
[] =
744 148, 0, -1, 121, 164, -1, 122, 152, -1, 132,
745 261, -1, 139, 256, -1, 123, 150, -1, 4, -1,
746 -1, 151, 4, 6, 217, -1, -1, 153, 154, -1,
747 154, 155, 109, -1, -1, 104, 217, -1, 104, 217,
748 140, 217, -1, 4, -1, 105, -1, 111, 157, -1,
749 110, -1, 115, 4, 6, 217, -1, 115, 4, 140,
750 217, -1, 115, 4, 217, -1, 114, 4, -1, 106,
751 4, 140, 217, -1, 106, 4, 217, -1, 106, 4,
752 6, 217, -1, 38, 4, 6, 217, -1, 38, 4,
753 140, 217, -1, 98, 4, 6, 217, -1, 98, 4,
754 140, 217, -1, 107, 159, -1, 108, 158, -1, 112,
755 4, -1, 118, 4, 140, 4, -1, 118, 4, 140,
756 3, -1, 117, 217, -1, 119, 3, -1, 124, 160,
757 -1, 125, 161, -1, -1, 64, 149, 156, 154, 36,
758 -1, 126, 4, -1, -1, 157, 140, 4, -1, 157,
759 4, -1, -1, 4, -1, 158, 140, 4, -1, 4,
760 -1, 159, 140, 4, -1, -1, 4, -1, 160, 140,
761 4, -1, -1, 162, 163, -1, 4, -1, 163, 4,
762 -1, 163, 140, 4, -1, -1, 165, 166, -1, 166,
763 167, -1, -1, 197, -1, 174, -1, 248, -1, 208,
764 -1, 209, -1, 211, -1, 213, -1, 176, -1, 263,
765 -1, 141, -1, 73, 37, 4, 142, -1, 74, 37,
766 149, 142, -1, 96, 37, 149, 142, -1, 59, 37,
767 4, 142, -1, 59, 37, 4, 140, 4, 140, 4,
768 142, -1, 61, 37, 4, 142, -1, 60, -1, 62,
769 -1, 94, 37, 170, 142, -1, -1, 95, 168, 37,
770 170, 142, -1, 75, 37, 149, 142, -1, -1, 64,
771 149, 169, 166, 36, -1, 89, 37, 214, 142, -1,
772 125, 37, 161, 142, -1, 48, 49, 4, -1, 48,
773 50, 4, -1, 66, 37, 4, 140, 4, 142, -1,
774 4, -1, 170, 140, 4, -1, 170, 4, -1, 5,
775 -1, 170, 140, 5, -1, 170, 5, -1, -1, 103,
776 37, 171, 170, 142, -1, -1, 170, 140, 103, 37,
777 172, 170, 142, -1, -1, 170, 103, 37, 173, 170,
778 142, -1, 46, 56, 175, 57, -1, 175, 223, -1,
779 175, 176, -1, -1, 76, 37, 4, 142, -1, 195,
780 194, -1, -1, 113, 177, 37, 217, 140, 4, 142,
781 -1, 4, -1, 32, -1, 15, -1, 178, -1, 137,
782 37, 180, 142, 178, -1, 54, 37, 178, 142, -1,
783 55, 37, 178, 142, -1, 54, 37, 55, 37, 178,
784 142, 142, -1, 54, 37, 54, 37, 178, 142, 142,
785 -1, 55, 37, 54, 37, 178, 142, 142, -1, 55,
786 37, 55, 37, 178, 142, 142, -1, 54, 37, 137,
787 37, 180, 142, 178, 142, -1, 180, 178, -1, 178,
788 -1, 181, 196, 179, -1, 179, -1, 4, -1, 143,
789 181, 144, -1, 179, 37, 181, 142, -1, 182, -1,
790 -1, 133, 37, 184, 182, 142, -1, 195, 194, -1,
791 93, -1, 141, -1, 97, -1, 54, 37, 97, 142,
792 -1, 183, -1, 190, 37, 215, 142, -1, 91, 37,
793 191, 142, -1, -1, 113, 186, 37, 217, 140, 4,
794 142, 194, -1, -1, 64, 149, 187, 189, 36, -1,
795 188, 185, -1, 185, -1, -1, 188, -1, 41, -1,
796 42, -1, 43, -1, 44, -1, 45, -1, 215, -1,
797 6, 191, -1, -1, 14, -1, 13, -1, 12, -1,
798 11, -1, 10, -1, 9, -1, 8, -1, 7, -1,
799 141, -1, 140, -1, 4, 6, 215, -1, 4, 193,
800 215, -1, 101, 37, 4, 6, 215, 142, -1, 102,
801 37, 4, 6, 215, 142, -1, 140, -1, -1, 65,
802 56, 198, 57, -1, 199, -1, -1, 199, 196, 200,
803 -1, 200, -1, -1, 4, 201, 205, 16, 203, 196,
804 204, -1, -1, 64, 149, 202, 198, 36, -1, 90,
805 6, 215, -1, 92, 6, 215, -1, -1, 37, 206,
806 142, -1, 207, -1, 206, 207, -1, 4, -1, 145,
807 4, -1, 84, 37, 149, 142, -1, 85, 37, 210,
808 142, -1, 85, 37, 142, -1, 210, 196, 149, -1,
809 149, -1, 86, 37, 212, 142, -1, 212, 196, 149,
810 -1, -1, 87, -1, 88, -1, -1, 4, 214, -1,
811 4, 140, 214, -1, -1, 216, 217, -1, 31, 217,
812 -1, 37, 217, 142, -1, 77, 37, 217, 142, -1,
813 145, 217, -1, 30, 217, -1, 146, 217, -1, 217,
814 32, 217, -1, 217, 33, 217, -1, 217, 34, 217,
815 -1, 217, 30, 217, -1, 217, 31, 217, -1, 217,
816 29, 217, -1, 217, 28, 217, -1, 217, 23, 217,
817 -1, 217, 22, 217, -1, 217, 27, 217, -1, 217,
818 26, 217, -1, 217, 24, 217, -1, 217, 25, 217,
819 -1, 217, 21, 217, -1, 217, 20, 217, -1, 217,
820 19, 217, -1, 217, 15, 217, 16, 217, -1, 217,
821 18, 217, -1, 217, 17, 217, -1, 72, 37, 4,
822 142, -1, 3, -1, 58, -1, 79, 37, 4, 142,
823 -1, 78, 37, 4, 142, -1, 80, 37, 4, 142,
824 -1, 81, 37, 4, 142, -1, 138, 37, 4, 142,
825 -1, 107, 37, 217, 142, -1, 38, 37, 217, 142,
826 -1, 38, 37, 217, 140, 217, 142, -1, 51, 37,
827 217, 140, 217, 142, -1, 52, 37, 217, 140, 217,
828 142, -1, 53, 37, 217, 142, -1, 63, 37, 4,
829 140, 217, 142, -1, 39, 37, 217, 142, -1, 4,
830 -1, 82, 37, 217, 140, 217, 142, -1, 83, 37,
831 217, 140, 217, 142, -1, 113, 37, 217, 140, 4,
832 142, -1, 90, 37, 4, 142, -1, 92, 37, 4,
833 142, -1, 99, 25, 4, -1, -1, 99, 37, 217,
834 142, -1, -1, 38, 37, 217, 142, -1, -1, 100,
835 37, 217, 142, -1, -1, 134, -1, 135, -1, 136,
836 -1, -1, -1, -1, -1, -1, -1, 4, 224, 239,
837 219, 220, 221, 225, 222, 56, 226, 189, 57, 227,
838 242, 218, 243, 192, 228, 196, -1, -1, -1, -1,
839 -1, -1, 71, 229, 240, 241, 219, 221, 230, 56,
840 231, 244, 57, 232, 242, 218, 243, 192, 233, 196,
841 -1, -1, -1, 95, 234, 239, 235, 56, 175, 57,
842 -1, -1, 64, 149, 236, 175, 36, -1, 67, -1,
843 68, -1, 69, -1, 70, -1, 71, -1, 37, 237,
844 142, -1, -1, 37, 142, -1, 217, 238, 16, -1,
845 238, 16, -1, 40, 37, 217, 142, 238, 16, -1,
846 40, 37, 217, 142, 39, 37, 217, 142, 238, 16,
847 -1, 217, 16, -1, 16, -1, -1, 89, -1, 25,
848 4, -1, -1, -1, 243, 16, 4, -1, -1, -1,
849 -1, -1, 244, 4, 245, 56, 189, 57, 246, 243,
850 192, 247, 196, -1, 47, 56, 249, 57, -1, -1,
851 249, 250, -1, -1, -1, 4, 251, 253, 254, 252,
852 141, -1, 217, -1, -1, 4, 255, 254, -1, 99,
853 37, 217, 142, 254, -1, -1, 37, 217, 142, -1,
854 -1, 257, 258, -1, 259, -1, 258, 259, -1, 56,
855 260, 57, 141, -1, 269, 141, -1, -1, 262, 265,
856 -1, -1, 264, 131, 56, 265, 57, -1, 266, -1,
857 265, 266, -1, 56, 268, 57, 141, -1, 127, 56,
858 268, 57, 141, -1, 127, 56, 268, 57, 267, 141,
859 -1, 127, -1, 267, 127, -1, -1, 269, 141, -1,
860 129, 16, 269, 141, -1, 130, 16, 269, 141, -1,
861 129, 16, 269, 141, 130, 16, 269, 141, -1, 128,
862 -1, 4, -1, 269, 141, 128, -1, 269, 141, 4,
863 -1, -1, 269, 141, 125, 4, 56, 270, 269, 272,
864 57, -1, -1, 125, 4, 56, 271, 269, 272, 57,
865 -1, 129, -1, 269, 141, 129, -1, 130, -1, 269,
866 141, 130, -1, 125, -1, 269, 141, 125, -1, -1,
870 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
871 static const yytype_uint16 yyrline
[] =
873 0, 162, 162, 163, 164, 165, 166, 170, 174, 174,
874 184, 184, 197, 198, 202, 203, 204, 207, 210, 211,
875 212, 214, 216, 218, 220, 222, 224, 226, 228, 230,
876 232, 234, 235, 236, 238, 240, 242, 244, 246, 247,
877 249, 248, 252, 254, 258, 259, 260, 264, 266, 270,
878 272, 277, 278, 279, 284, 284, 289, 291, 293, 298,
879 298, 304, 305, 310, 311, 312, 313, 314, 315, 316,
880 317, 318, 319, 320, 322, 324, 326, 329, 331, 333,
881 335, 337, 339, 338, 342, 345, 344, 348, 352, 353,
882 355, 357, 362, 365, 368, 371, 374, 377, 381, 380,
883 385, 384, 389, 388, 395, 399, 400, 401, 405, 407,
884 408, 408, 416, 420, 424, 431, 437, 443, 449, 455,
885 461, 467, 473, 479, 488, 497, 508, 517, 528, 536,
886 540, 547, 549, 548, 555, 556, 560, 561, 566, 571,
887 572, 577, 581, 581, 585, 584, 591, 592, 595, 597,
888 601, 603, 605, 607, 609, 614, 621, 623, 627, 629,
889 631, 633, 635, 637, 639, 641, 646, 646, 651, 655,
890 663, 667, 675, 675, 679, 682, 682, 685, 686, 691,
891 690, 696, 695, 702, 710, 718, 719, 723, 724, 728,
892 730, 735, 740, 741, 746, 748, 754, 756, 758, 762,
893 764, 770, 773, 782, 793, 793, 799, 801, 803, 805,
894 807, 809, 812, 814, 816, 818, 820, 822, 824, 826,
895 828, 830, 832, 834, 836, 838, 840, 842, 844, 846,
896 848, 850, 852, 854, 857, 859, 861, 863, 865, 867,
897 869, 871, 873, 875, 877, 879, 888, 890, 892, 894,
898 896, 898, 900, 906, 907, 911, 912, 916, 917, 921,
899 922, 926, 927, 928, 929, 932, 936, 939, 945, 947,
900 932, 954, 956, 958, 963, 965, 953, 975, 977, 975,
901 983, 982, 989, 990, 991, 992, 993, 997, 998, 999,
902 1003, 1004, 1009, 1010, 1015, 1016, 1021, 1022, 1027, 1029,
903 1034, 1037, 1050, 1054, 1059, 1061, 1052, 1069, 1072, 1074,
904 1078, 1079, 1078, 1088, 1133, 1136, 1148, 1157, 1160, 1167,
905 1167, 1179, 1180, 1184, 1188, 1197, 1197, 1211, 1211, 1221,
906 1222, 1226, 1230, 1234, 1241, 1245, 1253, 1256, 1260, 1264,
907 1268, 1275, 1279, 1283, 1287, 1292, 1291, 1305, 1304, 1314,
908 1318, 1322, 1326, 1330, 1334, 1340, 1342
912 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
913 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
914 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
915 static const char *const yytname
[] =
917 "$end", "error", "$undefined", "INT", "NAME", "LNAME", "'='", "OREQ",
918 "ANDEQ", "RSHIFTEQ", "LSHIFTEQ", "DIVEQ", "MULTEQ", "MINUSEQ", "PLUSEQ",
919 "'?'", "':'", "OROR", "ANDAND", "'|'", "'^'", "'&'", "NE", "EQ", "'<'",
920 "'>'", "GE", "LE", "RSHIFT", "LSHIFT", "'+'", "'-'", "'*'", "'/'", "'%'",
921 "UNARY", "END", "'('", "ALIGN_K", "BLOCK", "BIND", "QUAD", "SQUAD",
922 "LONG", "SHORT", "BYTE", "SECTIONS", "PHDRS", "INSERT_K", "AFTER",
923 "BEFORE", "DATA_SEGMENT_ALIGN", "DATA_SEGMENT_RELRO_END",
924 "DATA_SEGMENT_END", "SORT_BY_NAME", "SORT_BY_ALIGNMENT", "'{'", "'}'",
925 "SIZEOF_HEADERS", "OUTPUT_FORMAT", "FORCE_COMMON_ALLOCATION",
926 "OUTPUT_ARCH", "INHIBIT_COMMON_ALLOCATION", "SEGMENT_START", "INCLUDE",
927 "MEMORY", "REGION_ALIAS", "NOLOAD", "DSECT", "COPY", "INFO", "OVERLAY",
928 "DEFINED", "TARGET_K", "SEARCH_DIR", "MAP", "ENTRY", "NEXT", "SIZEOF",
929 "ALIGNOF", "ADDR", "LOADADDR", "MAX_K", "MIN_K", "STARTUP", "HLL",
930 "SYSLIB", "FLOAT", "NOFLOAT", "NOCROSSREFS", "ORIGIN", "FILL", "LENGTH",
931 "CREATE_OBJECT_SYMBOLS", "INPUT", "GROUP", "OUTPUT", "CONSTRUCTORS",
932 "ALIGNMOD", "AT", "SUBALIGN", "PROVIDE", "PROVIDE_HIDDEN", "AS_NEEDED",
933 "CHIP", "LIST", "SECT", "ABSOLUTE", "LOAD", "NEWLINE", "ENDWORD",
934 "ORDER", "NAMEWORD", "ASSERT_K", "FORMAT", "PUBLIC", "DEFSYMEND", "BASE",
935 "ALIAS", "TRUNCATE", "REL", "INPUT_SCRIPT", "INPUT_MRI_SCRIPT",
936 "INPUT_DEFSYM", "CASE", "EXTERN", "START", "VERS_TAG", "VERS_IDENTIFIER",
937 "GLOBAL", "LOCAL", "VERSIONK", "INPUT_VERSION_SCRIPT", "KEEP",
938 "ONLY_IF_RO", "ONLY_IF_RW", "SPECIAL", "EXCLUDE_FILE", "CONSTANT",
939 "INPUT_DYNAMIC_LIST", "','", "';'", "')'", "'['", "']'", "'!'", "'~'",
940 "$accept", "file", "filename", "defsym_expr", "@1", "mri_script_file",
941 "@2", "mri_script_lines", "mri_script_command", "@3", "ordernamelist",
942 "mri_load_name_list", "mri_abs_name_list", "casesymlist",
943 "extern_name_list", "@4", "extern_name_list_body", "script_file", "@5",
944 "ifile_list", "ifile_p1", "@6", "@7", "input_list", "@8", "@9", "@10",
945 "sections", "sec_or_group_p1", "statement_anywhere", "@11",
946 "wildcard_name", "wildcard_spec", "exclude_name_list", "file_NAME_list",
947 "input_section_spec_no_keep", "input_section_spec", "@12", "statement",
948 "@13", "@14", "statement_list", "statement_list_opt", "length",
949 "fill_exp", "fill_opt", "assign_op", "end", "assignment", "opt_comma",
950 "memory", "memory_spec_list_opt", "memory_spec_list", "memory_spec",
951 "@15", "@16", "origin_spec", "length_spec", "attributes_opt",
952 "attributes_list", "attributes_string", "startup", "high_level_library",
953 "high_level_library_NAME_list", "low_level_library",
954 "low_level_library_NAME_list", "floating_point_support",
955 "nocrossref_list", "mustbe_exp", "@17", "exp", "memspec_at_opt",
956 "opt_at", "opt_align", "opt_subalign", "sect_constraint", "section",
957 "@18", "@19", "@20", "@21", "@22", "@23", "@24", "@25", "@26", "@27",
958 "@28", "@29", "@30", "type", "atype", "opt_exp_with_type",
959 "opt_exp_without_type", "opt_nocrossrefs", "memspec_opt", "phdr_opt",
960 "overlay_section", "@31", "@32", "@33", "phdrs", "phdr_list", "phdr",
961 "@34", "@35", "phdr_type", "phdr_qualifiers", "phdr_val",
962 "dynamic_list_file", "@36", "dynamic_list_nodes", "dynamic_list_node",
963 "dynamic_list_tag", "version_script_file", "@37", "version", "@38",
964 "vers_nodes", "vers_node", "verdep", "vers_tag", "vers_defns", "@39",
965 "@40", "opt_semicolon", 0
970 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
972 static const yytype_uint16 yytoknum
[] =
974 0, 256, 257, 258, 259, 260, 61, 261, 262, 263,
975 264, 265, 266, 267, 268, 63, 58, 269, 270, 124,
976 94, 38, 271, 272, 60, 62, 273, 274, 275, 276,
977 43, 45, 42, 47, 37, 277, 278, 40, 279, 280,
978 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
979 291, 292, 293, 294, 295, 296, 123, 125, 297, 298,
980 299, 300, 301, 302, 303, 304, 305, 306, 307, 308,
981 309, 310, 311, 312, 313, 314, 315, 316, 317, 318,
982 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
983 329, 330, 331, 332, 333, 334, 335, 336, 337, 338,
984 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
985 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
986 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
987 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
988 44, 59, 41, 91, 93, 33, 126
992 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
993 static const yytype_uint16 yyr1
[] =
995 0, 147, 148, 148, 148, 148, 148, 149, 151, 150,
996 153, 152, 154, 154, 155, 155, 155, 155, 155, 155,
997 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
998 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
999 156, 155, 155, 155, 157, 157, 157, 158, 158, 159,
1000 159, 160, 160, 160, 162, 161, 163, 163, 163, 165,
1001 164, 166, 166, 167, 167, 167, 167, 167, 167, 167,
1002 167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
1003 167, 167, 168, 167, 167, 169, 167, 167, 167, 167,
1004 167, 167, 170, 170, 170, 170, 170, 170, 171, 170,
1005 172, 170, 173, 170, 174, 175, 175, 175, 176, 176,
1006 177, 176, 178, 178, 178, 179, 179, 179, 179, 179,
1007 179, 179, 179, 179, 180, 180, 181, 181, 182, 182,
1008 182, 183, 184, 183, 185, 185, 185, 185, 185, 185,
1009 185, 185, 186, 185, 187, 185, 188, 188, 189, 189,
1010 190, 190, 190, 190, 190, 191, 192, 192, 193, 193,
1011 193, 193, 193, 193, 193, 193, 194, 194, 195, 195,
1012 195, 195, 196, 196, 197, 198, 198, 199, 199, 201,
1013 200, 202, 200, 203, 204, 205, 205, 206, 206, 207,
1014 207, 208, 209, 209, 210, 210, 211, 212, 212, 213,
1015 213, 214, 214, 214, 216, 215, 217, 217, 217, 217,
1016 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
1017 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
1018 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
1019 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
1020 217, 217, 217, 218, 218, 219, 219, 220, 220, 221,
1021 221, 222, 222, 222, 222, 224, 225, 226, 227, 228,
1022 223, 229, 230, 231, 232, 233, 223, 234, 235, 223,
1023 236, 223, 237, 237, 237, 237, 237, 238, 238, 238,
1024 239, 239, 239, 239, 240, 240, 241, 241, 242, 242,
1025 243, 243, 244, 245, 246, 247, 244, 248, 249, 249,
1026 251, 252, 250, 253, 254, 254, 254, 255, 255, 257,
1027 256, 258, 258, 259, 260, 262, 261, 264, 263, 265,
1028 265, 266, 266, 266, 267, 267, 268, 268, 268, 268,
1029 268, 269, 269, 269, 269, 270, 269, 271, 269, 269,
1030 269, 269, 269, 269, 269, 272, 272
1033 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
1034 static const yytype_uint8 yyr2
[] =
1036 0, 2, 2, 2, 2, 2, 2, 1, 0, 4,
1037 0, 2, 3, 0, 2, 4, 1, 1, 2, 1,
1038 4, 4, 3, 2, 4, 3, 4, 4, 4, 4,
1039 4, 2, 2, 2, 4, 4, 2, 2, 2, 2,
1040 0, 5, 2, 0, 3, 2, 0, 1, 3, 1,
1041 3, 0, 1, 3, 0, 2, 1, 2, 3, 0,
1042 2, 2, 0, 1, 1, 1, 1, 1, 1, 1,
1043 1, 1, 1, 4, 4, 4, 4, 8, 4, 1,
1044 1, 4, 0, 5, 4, 0, 5, 4, 4, 3,
1045 3, 6, 1, 3, 2, 1, 3, 2, 0, 5,
1046 0, 7, 0, 6, 4, 2, 2, 0, 4, 2,
1047 0, 7, 1, 1, 1, 1, 5, 4, 4, 7,
1048 7, 7, 7, 8, 2, 1, 3, 1, 1, 3,
1049 4, 1, 0, 5, 2, 1, 1, 1, 4, 1,
1050 4, 4, 0, 8, 0, 5, 2, 1, 0, 1,
1051 1, 1, 1, 1, 1, 1, 2, 0, 1, 1,
1052 1, 1, 1, 1, 1, 1, 1, 1, 3, 3,
1053 6, 6, 1, 0, 4, 1, 0, 3, 1, 0,
1054 7, 0, 5, 3, 3, 0, 3, 1, 2, 1,
1055 2, 4, 4, 3, 3, 1, 4, 3, 0, 1,
1056 1, 0, 2, 3, 0, 2, 2, 3, 4, 2,
1057 2, 2, 3, 3, 3, 3, 3, 3, 3, 3,
1058 3, 3, 3, 3, 3, 3, 3, 3, 5, 3,
1059 3, 4, 1, 1, 4, 4, 4, 4, 4, 4,
1060 4, 6, 6, 6, 4, 6, 4, 1, 6, 6,
1061 6, 4, 4, 3, 0, 4, 0, 4, 0, 4,
1062 0, 1, 1, 1, 0, 0, 0, 0, 0, 0,
1063 19, 0, 0, 0, 0, 0, 18, 0, 0, 7,
1064 0, 5, 1, 1, 1, 1, 1, 3, 0, 2,
1065 3, 2, 6, 10, 2, 1, 0, 1, 2, 0,
1066 0, 3, 0, 0, 0, 0, 11, 4, 0, 2,
1067 0, 0, 6, 1, 0, 3, 5, 0, 3, 0,
1068 2, 1, 2, 4, 2, 0, 2, 0, 5, 1,
1069 2, 4, 5, 6, 1, 2, 0, 2, 4, 4,
1070 8, 1, 1, 3, 3, 0, 9, 0, 7, 1,
1074 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
1075 STATE-NUM when YYTABLE doesn't specify something else to do. Zero
1076 means the default is an error. */
1077 static const yytype_uint16 yydefact
[] =
1079 0, 59, 10, 8, 325, 319, 0, 2, 62, 3,
1080 13, 6, 0, 4, 0, 5, 0, 1, 60, 11,
1081 0, 336, 0, 326, 329, 0, 320, 321, 0, 0,
1082 0, 0, 0, 79, 0, 80, 0, 0, 0, 0,
1083 0, 0, 0, 0, 0, 0, 199, 200, 0, 0,
1084 82, 0, 0, 0, 110, 0, 72, 61, 64, 70,
1085 0, 63, 66, 67, 68, 69, 65, 71, 0, 16,
1086 0, 0, 0, 0, 17, 0, 0, 0, 19, 46,
1087 0, 0, 0, 0, 0, 0, 51, 54, 0, 0,
1088 0, 342, 353, 341, 349, 351, 0, 0, 336, 330,
1089 349, 351, 0, 0, 322, 204, 165, 164, 163, 162,
1090 161, 160, 159, 158, 204, 107, 308, 0, 0, 0,
1091 0, 7, 85, 176, 0, 0, 0, 0, 0, 0,
1092 0, 198, 201, 0, 0, 0, 0, 0, 0, 54,
1093 167, 166, 109, 0, 0, 40, 0, 232, 247, 0,
1094 0, 0, 0, 0, 0, 0, 0, 233, 0, 0,
1095 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1096 0, 0, 0, 0, 14, 0, 49, 31, 47, 32,
1097 18, 33, 23, 0, 36, 0, 37, 52, 38, 39,
1098 0, 42, 12, 9, 0, 0, 0, 0, 337, 0,
1099 0, 324, 168, 0, 169, 0, 0, 89, 90, 0,
1100 0, 62, 179, 0, 0, 173, 178, 0, 0, 0,
1101 0, 0, 0, 193, 195, 173, 173, 201, 0, 92,
1102 95, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1103 0, 0, 13, 0, 0, 210, 206, 0, 0, 0,
1104 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1105 0, 0, 0, 0, 0, 0, 0, 209, 211, 0,
1106 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1107 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1108 0, 25, 0, 0, 45, 0, 0, 0, 22, 0,
1109 0, 56, 55, 347, 0, 0, 331, 344, 354, 343,
1110 350, 352, 0, 323, 205, 265, 104, 0, 271, 277,
1111 106, 105, 310, 307, 309, 0, 76, 78, 327, 185,
1112 181, 174, 172, 0, 0, 73, 74, 84, 108, 191,
1113 192, 0, 196, 0, 201, 202, 87, 98, 94, 97,
1114 0, 0, 81, 0, 75, 204, 204, 0, 88, 0,
1115 27, 28, 43, 29, 30, 207, 0, 0, 0, 0,
1116 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1117 0, 0, 0, 0, 0, 0, 230, 229, 227, 226,
1118 225, 220, 219, 223, 224, 222, 221, 218, 217, 215,
1119 216, 212, 213, 214, 15, 26, 24, 50, 48, 44,
1120 20, 21, 35, 34, 53, 57, 0, 0, 338, 339,
1121 0, 334, 332, 0, 288, 280, 0, 288, 0, 0,
1122 86, 0, 0, 176, 177, 0, 194, 197, 203, 0,
1123 102, 93, 96, 0, 83, 0, 0, 0, 328, 41,
1124 0, 240, 246, 0, 0, 244, 0, 231, 208, 235,
1125 234, 236, 237, 0, 0, 251, 252, 239, 0, 238,
1126 0, 58, 355, 352, 345, 335, 333, 0, 0, 288,
1127 0, 256, 107, 295, 0, 296, 278, 313, 314, 0,
1128 189, 0, 0, 187, 0, 0, 91, 0, 0, 100,
1129 170, 171, 0, 0, 0, 0, 0, 0, 0, 0,
1130 228, 356, 0, 0, 0, 282, 283, 284, 285, 286,
1131 289, 0, 0, 0, 0, 291, 0, 258, 0, 294,
1132 297, 256, 0, 317, 0, 311, 0, 190, 186, 188,
1133 0, 173, 182, 99, 0, 0, 111, 241, 242, 243,
1134 245, 248, 249, 250, 348, 0, 355, 287, 0, 290,
1135 0, 0, 260, 281, 260, 107, 0, 314, 0, 0,
1136 77, 204, 0, 103, 0, 340, 0, 288, 0, 0,
1137 0, 266, 272, 0, 0, 315, 0, 312, 183, 0,
1138 180, 101, 346, 0, 0, 255, 0, 0, 264, 0,
1139 279, 318, 314, 204, 0, 292, 257, 0, 261, 262,
1140 263, 0, 273, 316, 184, 0, 259, 267, 302, 288,
1141 148, 0, 0, 128, 114, 113, 150, 151, 152, 153,
1142 154, 0, 0, 0, 0, 135, 137, 142, 0, 0,
1143 136, 0, 115, 0, 131, 139, 147, 149, 0, 0,
1144 0, 303, 274, 293, 0, 0, 144, 204, 0, 132,
1145 0, 112, 0, 127, 173, 0, 146, 268, 204, 134,
1146 0, 299, 0, 0, 0, 0, 0, 0, 0, 0,
1147 148, 0, 155, 0, 0, 125, 0, 0, 129, 0,
1148 173, 299, 0, 148, 0, 254, 0, 0, 138, 0,
1149 117, 0, 0, 118, 0, 141, 0, 112, 0, 0,
1150 124, 126, 130, 254, 140, 0, 298, 0, 300, 0,
1151 0, 0, 0, 0, 145, 0, 133, 116, 300, 304,
1152 0, 157, 0, 0, 0, 0, 0, 0, 157, 300,
1153 253, 204, 0, 275, 120, 119, 0, 121, 122, 0,
1154 269, 157, 156, 301, 173, 123, 143, 173, 305, 276,
1158 /* YYDEFGOTO[NTERM-NUM]. */
1159 static const yytype_int16 yydefgoto
[] =
1161 -1, 6, 122, 11, 12, 9, 10, 19, 89, 242,
1162 180, 179, 177, 188, 189, 190, 302, 7, 8, 18,
1163 57, 134, 211, 232, 439, 545, 498, 58, 205, 320,
1164 138, 642, 643, 686, 664, 644, 645, 684, 646, 658,
1165 680, 647, 648, 649, 681, 743, 114, 142, 60, 689,
1166 61, 214, 215, 216, 329, 433, 541, 590, 432, 492,
1167 493, 62, 63, 225, 64, 226, 65, 228, 682, 203,
1168 247, 718, 527, 562, 581, 611, 321, 424, 598, 620,
1169 691, 757, 426, 599, 618, 671, 754, 427, 532, 482,
1170 521, 480, 481, 485, 531, 695, 731, 621, 670, 739,
1171 761, 66, 206, 324, 428, 569, 488, 535, 567, 15,
1172 16, 26, 27, 102, 13, 14, 67, 68, 23, 24,
1173 423, 96, 97, 514, 417, 512
1176 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1178 #define YYPACT_NINF -621
1179 static const yytype_int16 yypact
[] =
1181 180, -621, -621, -621, -621, -621, 27, -621, -621, -621,
1182 -621, -621, 38, -621, -21, -621, 23, -621, 824, 1581,
1183 111, 112, 75, -21, -621, 120, 23, -621, 623, 95,
1184 128, 170, 153, -621, 201, -621, 242, 195, 220, 223,
1185 226, 238, 245, 252, 280, 285, -621, -621, 286, 288,
1186 -621, 290, 291, 299, -621, 315, -621, -621, -621, -621,
1187 129, -621, -621, -621, -621, -621, -621, -621, 206, -621,
1188 352, 242, 354, 680, -621, 355, 359, 360, -621, -621,
1189 361, 363, 366, 680, 367, 369, 372, -621, 374, 266,
1190 680, -621, 378, -621, 373, 376, 331, 253, 112, -621,
1191 -621, -621, 338, 255, -621, -621, -621, -621, -621, -621,
1192 -621, -621, -621, -621, -621, -621, -621, 402, 404, 405,
1193 406, -621, -621, 24, 409, 411, 242, 242, 412, 242,
1194 4, -621, 418, 20, 388, 242, 423, 424, 392, -621,
1195 -621, -621, -621, 375, 33, -621, 41, -621, -621, 680,
1196 680, 680, 393, 399, 400, 401, 403, -621, 408, 413,
1197 414, 415, 417, 419, 420, 428, 429, 430, 432, 433,
1198 435, 438, 680, 680, 1400, 228, -621, 301, -621, 302,
1199 5, -621, -621, 381, 1756, 303, -621, -621, 307, -621,
1200 444, -621, -621, 1756, 421, 120, 120, 314, 217, 422,
1201 335, 217, -621, 680, -621, 322, 46, -621, -621, 10,
1202 336, -621, -621, 242, 425, -2, -621, 340, 341, 342,
1203 343, 347, 348, -621, -621, 87, 114, 22, 349, -621,
1204 -621, 455, 32, 20, 356, 490, 491, 680, 357, -21,
1205 680, 680, -621, 680, 680, -621, -621, 833, 680, 680,
1206 680, 680, 680, 497, 498, 680, 503, 504, 505, 506,
1207 680, 680, 509, 510, 680, 680, 511, -621, -621, 680,
1208 680, 680, 680, 680, 680, 680, 680, 680, 680, 680,
1209 680, 680, 680, 680, 680, 680, 680, 680, 680, 680,
1210 680, 1756, 512, 513, -621, 514, 680, 680, 1756, 310,
1211 516, -621, 25, -621, 384, 387, -621, -621, 518, -621,
1212 -621, -621, -12, -621, 1756, 623, -621, 242, -621, -621,
1213 -621, -621, -621, -621, -621, 525, -621, -621, 897, 493,
1214 -621, -621, -621, 24, 528, -621, -621, -621, -621, -621,
1215 -621, 242, -621, 242, 418, -621, -621, -621, -621, -621,
1216 496, 39, -621, 86, -621, -621, -621, 1420, -621, 6,
1217 1756, 1756, 691, 1756, 1756, -621, 1022, 1042, 1440, 1460,
1218 1062, 394, 395, 1082, 396, 426, 427, 436, 1480, 1500,
1219 437, 440, 1102, 1524, 441, 1716, 1773, 1789, 1804, 1002,
1220 1643, 987, 987, 371, 371, 371, 371, 300, 300, 37,
1221 37, -621, -621, -621, 1756, 1756, 1756, -621, -621, -621,
1222 1756, 1756, -621, -621, -621, -621, 531, 120, 232, 217,
1223 480, -621, -621, -7, 536, -621, 608, 536, 680, 407,
1224 -621, 3, 527, 24, -621, 442, -621, -621, -621, 20,
1225 -621, -621, -621, 507, -621, 443, 448, 537, -621, -621,
1226 680, -621, -621, 680, 680, -621, 680, -621, -621, -621,
1227 -621, -621, -621, 680, 680, -621, -621, -621, 542, -621,
1228 680, -621, 431, 532, -621, -621, -621, 15, 522, 1693,
1229 545, 461, -621, -621, 1736, 473, -621, 1756, 19, 560,
1230 -621, 566, 2, -621, 481, 541, -621, 122, 20, -621,
1231 -621, -621, 449, 1122, 1148, 1168, 1188, 1208, 1228, 450,
1232 1756, 217, 523, 120, 120, -621, -621, -621, -621, -621,
1233 -621, 451, 680, 227, 570, -621, 558, 559, 410, -621,
1234 -621, 461, 540, 561, 563, -621, 459, -621, -621, -621,
1235 596, 463, -621, -621, 132, 20, -621, -621, -621, -621,
1236 -621, -621, -621, -621, -621, 465, 431, -621, 1248, -621,
1237 680, 567, 520, -621, 520, -621, 680, 19, 680, 466,
1238 -621, -621, 517, -621, 136, 217, 564, 248, 1274, 680,
1239 585, -621, -621, 601, 1294, -621, 1314, -621, -621, 617,
1240 -621, -621, -621, 588, 611, -621, 1334, 680, 214, 584,
1241 -621, -621, 19, -621, 680, -621, -621, 1354, -621, -621,
1242 -621, 586, -621, -621, -621, 1374, -621, -621, -621, 604,
1243 736, 47, 628, 544, -621, -621, -621, -621, -621, -621,
1244 -621, 613, 614, 242, 615, -621, -621, -621, 616, 618,
1245 -621, 284, -621, 619, -621, -621, -621, 736, 591, 620,
1246 129, -621, -621, -621, 57, 229, -621, -621, 625, -621,
1247 151, -621, 626, -621, -31, 284, -621, -621, -621, -621,
1248 598, 639, 630, 631, 533, 632, 534, 633, 636, 550,
1249 736, 551, -621, 680, 26, -621, 16, 289, -621, 284,
1250 150, 639, 552, 736, 674, 580, 151, 151, -621, 151,
1251 -621, 151, 151, -621, 661, -621, 1544, 557, 562, 151,
1252 -621, -621, -621, 580, -621, 644, -621, 681, -621, 565,
1253 571, 17, 574, 578, -621, 701, -621, -621, -621, -621,
1254 704, 58, 581, 582, 151, 583, 592, 593, 58, -621,
1255 -621, -621, 705, -621, -621, -621, 594, -621, -621, 129,
1256 -621, 58, -621, -621, 463, -621, -621, 463, -621, -621,
1260 /* YYPGOTO[NTERM-NUM]. */
1261 static const yytype_int16 yypgoto
[] =
1263 -621, -621, -70, -621, -621, -621, -621, 470, -621, -621,
1264 -621, -621, -621, -621, 587, -621, -621, -621, -621, 519,
1265 -621, -621, -621, -221, -621, -621, -621, -621, -444, -13,
1266 -621, 927, -540, 29, 72, 55, -621, -621, 94, -621,
1267 -621, -621, -500, -621, 1, -508, -621, -617, -425, -212,
1268 -621, 311, -621, 389, -621, -621, -621, -621, -621, -621,
1269 256, -621, -621, -621, -621, -621, -621, -205, -103, -621,
1270 -73, 34, 218, -621, 181, -621, -621, -621, -621, -621,
1271 -621, -621, -621, -621, -621, -621, -621, -621, -621, -621,
1272 -621, -463, 323, -621, -621, 65, -620, -621, -621, -621,
1273 -621, -621, -621, -621, -621, -621, -621, -527, -621, -621,
1274 -621, -621, 738, -621, -621, -621, -621, -621, 526, -19,
1275 -621, 668, -10, -621, -621, 211
1278 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
1279 positive, shift that token. If negative, reduce the rule which
1280 number is the opposite. If zero, do what YYDEFACT says.
1281 If YYTABLE_NINF, syntax error. */
1282 #define YYTABLE_NINF -328
1283 static const yytype_int16 yytable
[] =
1285 174, 145, 202, 333, 99, 59, 490, 490, 121, 294,
1286 184, 204, 353, 341, 343, 103, 524, 193, 147, 148,
1287 661, 661, 345, 533, 229, 230, 227, 17, 212, 415,
1288 707, 624, 624, 669, -175, 21, 348, 349, 528, 240,
1289 585, 624, 20, 441, 442, 149, 150, 243, 625, 625,
1290 322, 651, 151, 152, 153, -175, 219, 220, 625, 222,
1291 224, 661, 21, 448, 741, 234, 154, 155, 156, 285,
1292 286, 287, 624, 157, 742, 613, 245, 246, 158, 25,
1293 662, 632, 515, 516, 517, 518, 519, 159, 213, 625,
1294 348, 349, 160, 161, 162, 163, 164, 165, 166, 267,
1295 268, 663, 291, 323, 652, 167, 22, 168, 738, 332,
1296 298, 672, 673, 688, 594, 421, 91, 90, 534, 751,
1297 475, 583, 169, 231, 91, 663, 348, 349, 170, 422,
1298 314, 98, 756, 22, 476, 350, 348, 349, 332, 438,
1299 348, 349, 443, 330, 538, 295, 223, 491, 491, 711,
1300 325, 115, 326, 171, 674, 661, 622, 520, 709, 734,
1301 172, 173, 344, 639, 357, 416, 624, 360, 361, 641,
1302 363, 364, 351, 241, 352, 366, 367, 368, 369, 370,
1303 704, 244, 373, 625, 116, 304, 305, 378, 379, 350,
1304 119, 382, 383, 715, 675, 650, 385, 386, 387, 388,
1305 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
1306 399, 400, 401, 402, 403, 404, 405, 406, 497, 117,
1307 118, 307, 650, 410, 411, 350, 351, 332, 444, 340,
1308 750, 147, 148, 661, 289, 350, 307, 92, 120, 350,
1309 93, 94, 95, 758, 624, 92, 121, 425, 93, 100,
1310 101, 123, 445, 446, 332, 650, 342, 124, 149, 150,
1311 125, 625, 351, 126, 543, 151, 152, 153, 650, 140,
1312 141, 436, 351, 437, 573, 127, 351, 544, 591, 154,
1313 155, 156, 128, 677, 678, 523, 157, 593, 661, 129,
1314 332, 158, 712, 661, 515, 516, 517, 518, 519, 624,
1315 159, 1, 2, 3, 624, 160, 161, 162, 163, 164,
1316 165, 166, 4, 412, 413, 59, 625, 130, 167, 5,
1317 168, 625, 131, 132, 574, 133, 315, 135, 136, 572,
1318 283, 284, 285, 286, 287, 169, 137, 143, 662, 632,
1319 99, 170, 308, 672, 673, 309, 310, 311, 608, 609,
1320 610, 479, 139, 484, 479, 487, 144, 308, 146, 175,
1321 309, 310, 473, 176, 178, 181, 171, 182, 290, 520,
1322 183, 185, 186, 172, 173, 192, 187, 503, 191, 316,
1323 504, 505, 194, 506, 147, 148, 317, 296, 197, 195,
1324 507, 508, 196, 318, 198, 200, 201, 510, 42, 281,
1325 282, 283, 284, 285, 286, 287, 207, 472, 208, 209,
1326 210, 149, 150, 217, 315, 218, 221, 319, 151, 152,
1327 153, 639, 227, 52, 53, 233, 675, 235, 236, 237,
1328 248, 239, 154, 155, 156, 54, 249, 250, 251, 157,
1329 252, 292, 293, 299, 158, 253, 563, 300, 301, 558,
1330 254, 255, 256, 159, 257, 306, 258, 259, 160, 161,
1331 162, 163, 164, 165, 166, 260, 261, 262, 588, 263,
1332 264, 167, 265, 168, 317, 266, 313, 303, 327, 312,
1333 334, 318, 331, 335, 336, 337, 42, 578, 169, 338,
1334 339, 346, 347, 584, 170, 586, 355, 356, 354, 358,
1335 614, 371, 372, 555, 556, 319, 596, 374, 375, 376,
1336 377, 52, 53, 380, 381, 384, 407, 408, 409, 171,
1337 414, 297, 420, 54, 607, 418, 172, 173, 419, 429,
1338 431, 615, 435, 440, 456, 471, 474, 457, 459, 147,
1339 148, 502, 759, 494, 499, 760, 509, 489, 513, 762,
1340 105, 106, 107, 108, 109, 110, 111, 112, 113, 522,
1341 526, 525, 530, 656, 536, 692, 149, 150, 460, 461,
1342 537, 540, 511, 477, 152, 153, 478, 542, 462, 465,
1343 554, -112, 466, 469, 496, 500, 559, 154, 155, 156,
1344 501, 546, 553, 557, 157, 560, 565, 561, 566, 158,
1345 568, 570, 571, 332, 579, 315, 575, 587, 159, 589,
1346 706, 147, 148, 160, 161, 162, 163, 164, 165, 166,
1347 580, 592, 597, 603, 483, 604, 167, 605, 168, 105,
1348 106, 107, 108, 109, 110, 111, 112, 113, 149, 150,
1349 612, 523, 617, 169, 653, 151, 152, 153, 667, 170,
1350 654, 655, 657, 659, 693, 660, 665, 668, 600, 154,
1351 155, 156, 683, 687, 694, 317, 157, 696, 697, 699,
1352 701, 158, 318, 702, 171, 698, 700, 42, 716, 717,
1353 159, 172, 173, 147, 148, 160, 161, 162, 163, 164,
1354 165, 166, 703, 705, 714, 69, 319, 724, 167, -128,
1355 168, 729, 52, 53, 726, 737, 730, 732, 740, 753,
1356 149, 150, 362, 733, 54, 169, 735, 151, 152, 153,
1357 736, 170, 434, 744, 745, 747, 238, 449, 721, 70,
1358 328, 154, 155, 156, 748, 749, 755, 690, 157, 708,
1359 623, 666, 752, 158, 495, 582, 171, 728, 539, 564,
1360 486, 624, 159, 172, 173, 71, 713, 160, 161, 162,
1361 163, 164, 165, 166, 104, 359, 199, 576, 625, 0,
1362 167, 0, 168, 0, 0, 0, 0, 626, 627, 628,
1363 629, 630, 0, 0, 0, 0, 0, 169, 0, 72,
1364 631, 632, 0, 170, 0, 73, 74, 75, 76, 77,
1365 633, 78, 79, 80, 0, 81, 82, 0, 83, 84,
1366 85, 0, 0, 0, 0, 86, 87, 88, 171, 0,
1367 0, 0, 0, 0, 0, 172, 173, 634, 28, 635,
1368 0, 0, 0, 636, 0, 0, 0, 52, 53, 0,
1369 0, 0, 0, 0, 0, 0, 0, 0, 269, 637,
1370 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
1371 280, 281, 282, 283, 284, 285, 286, 287, 0, 638,
1372 29, 30, 31, 639, 0, 0, 0, 640, 0, 641,
1373 0, 0, 0, 32, 33, 34, 35, 0, 36, 37,
1374 38, 0, 0, 0, 0, 0, 0, 39, 40, 41,
1375 42, 28, 0, 0, 0, 0, 0, 0, 43, 44,
1376 45, 46, 47, 48, 0, 0, 0, 0, 49, 50,
1377 51, 0, 0, 0, 0, 52, 53, 0, 0, 0,
1378 0, 0, 0, 430, 0, 0, 0, 54, 0, 0,
1379 0, 0, 0, 29, 30, 31, 0, 0, 0, 55,
1380 0, 0, 0, 0, 0, -327, 32, 33, 34, 35,
1381 0, 36, 37, 38, 0, 56, 0, 0, 0, 0,
1382 39, 40, 41, 42, 0, 365, 0, 0, 0, 0,
1383 0, 43, 44, 45, 46, 47, 48, 0, 0, 0,
1384 0, 49, 50, 51, 0, 0, 0, 0, 52, 53,
1385 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1386 54, 277, 278, 279, 280, 281, 282, 283, 284, 285,
1387 286, 287, 55, 274, 275, 276, 277, 278, 279, 280,
1388 281, 282, 283, 284, 285, 286, 287, 269, 56, 270,
1389 271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
1390 281, 282, 283, 284, 285, 286, 287, 269, 0, 270,
1391 271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
1392 281, 282, 283, 284, 285, 286, 287, 269, 0, 270,
1393 271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
1394 281, 282, 283, 284, 285, 286, 287, 269, 0, 270,
1395 271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
1396 281, 282, 283, 284, 285, 286, 287, 269, 0, 270,
1397 271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
1398 281, 282, 283, 284, 285, 286, 287, 269, 0, 270,
1399 271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
1400 281, 282, 283, 284, 285, 286, 287, 0, 0, 0,
1401 0, 0, 450, 269, 451, 270, 271, 272, 273, 274,
1402 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1403 285, 286, 287, 269, 452, 270, 271, 272, 273, 274,
1404 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1405 285, 286, 287, 269, 455, 270, 271, 272, 273, 274,
1406 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1407 285, 286, 287, 269, 458, 270, 271, 272, 273, 274,
1408 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1409 285, 286, 287, 269, 467, 270, 271, 272, 273, 274,
1410 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1411 285, 286, 287, 269, 547, 270, 271, 272, 273, 274,
1412 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1413 285, 286, 287, 0, 0, 0, 0, 0, 0, 269,
1414 548, 270, 271, 272, 273, 274, 275, 276, 277, 278,
1415 279, 280, 281, 282, 283, 284, 285, 286, 287, 269,
1416 549, 270, 271, 272, 273, 274, 275, 276, 277, 278,
1417 279, 280, 281, 282, 283, 284, 285, 286, 287, 269,
1418 550, 270, 271, 272, 273, 274, 275, 276, 277, 278,
1419 279, 280, 281, 282, 283, 284, 285, 286, 287, 269,
1420 551, 270, 271, 272, 273, 274, 275, 276, 277, 278,
1421 279, 280, 281, 282, 283, 284, 285, 286, 287, 269,
1422 552, 270, 271, 272, 273, 274, 275, 276, 277, 278,
1423 279, 280, 281, 282, 283, 284, 285, 286, 287, 269,
1424 577, 270, 271, 272, 273, 274, 275, 276, 277, 278,
1425 279, 280, 281, 282, 283, 284, 285, 286, 287, 0,
1426 0, 0, 0, 0, 0, 269, 595, 270, 271, 272,
1427 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1428 283, 284, 285, 286, 287, 269, 601, 270, 271, 272,
1429 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1430 283, 284, 285, 286, 287, 269, 602, 270, 271, 272,
1431 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1432 283, 284, 285, 286, 287, 269, 606, 270, 271, 272,
1433 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1434 283, 284, 285, 286, 287, 269, 616, 270, 271, 272,
1435 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1436 283, 284, 285, 286, 287, 269, 619, 270, 271, 272,
1437 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1438 283, 284, 285, 286, 287, 0, 0, 0, 0, 269,
1439 288, 270, 271, 272, 273, 274, 275, 276, 277, 278,
1440 279, 280, 281, 282, 283, 284, 285, 286, 287, 269,
1441 447, 270, 271, 272, 273, 274, 275, 276, 277, 278,
1442 279, 280, 281, 282, 283, 284, 285, 286, 287, 0,
1443 453, 676, 679, 0, 0, 69, 0, 685, 0, 0,
1444 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1445 454, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1446 0, 0, 0, 710, 676, 0, 0, 0, 0, 70,
1447 463, 0, 0, 719, 720, 0, 685, 0, 722, 723,
1448 0, 0, 0, 0, 0, 0, 727, 0, 0, 0,
1449 464, 0, 0, 0, 0, 71, 0, 0, 710, 0,
1450 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1451 0, 746, 0, 0, 468, 275, 276, 277, 278, 279,
1452 280, 281, 282, 283, 284, 285, 286, 287, 0, 72,
1453 0, 0, 0, 0, 725, 73, 74, 75, 76, 77,
1454 -43, 78, 79, 80, 0, 81, 82, 0, 83, 84,
1455 85, 0, 0, 0, 0, 86, 87, 88, 269, 0,
1456 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
1457 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
1458 523, 269, 470, 270, 271, 272, 273, 274, 275, 276,
1459 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
1460 287, 269, 529, 270, 271, 272, 273, 274, 275, 276,
1461 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
1462 287, 269, 0, 270, 271, 272, 273, 274, 275, 276,
1463 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
1464 287, 271, 272, 273, 274, 275, 276, 277, 278, 279,
1465 280, 281, 282, 283, 284, 285, 286, 287, 272, 273,
1466 274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
1467 284, 285, 286, 287, 273, 274, 275, 276, 277, 278,
1468 279, 280, 281, 282, 283, 284, 285, 286, 287
1471 static const yytype_int16 yycheck
[] =
1473 73, 71, 105, 215, 23, 18, 4, 4, 4, 4,
1474 83, 114, 233, 225, 226, 25, 479, 90, 3, 4,
1475 4, 4, 227, 4, 4, 5, 4, 0, 4, 4,
1476 4, 15, 15, 650, 36, 56, 4, 5, 482, 6,
1477 567, 15, 4, 4, 5, 30, 31, 6, 32, 32,
1478 4, 4, 37, 38, 39, 57, 126, 127, 32, 129,
1479 130, 4, 56, 57, 6, 135, 51, 52, 53, 32,
1480 33, 34, 15, 58, 16, 602, 149, 150, 63, 56,
1481 54, 55, 67, 68, 69, 70, 71, 72, 64, 32,
1482 4, 5, 77, 78, 79, 80, 81, 82, 83, 172,
1483 173, 641, 175, 57, 57, 90, 127, 92, 728, 140,
1484 183, 54, 55, 144, 577, 127, 4, 6, 99, 739,
1485 127, 565, 107, 103, 4, 665, 4, 5, 113, 141,
1486 203, 56, 749, 127, 141, 103, 4, 5, 140, 344,
1487 4, 5, 103, 213, 142, 140, 142, 145, 145, 689,
1488 140, 56, 142, 138, 97, 4, 619, 142, 142, 142,
1489 145, 146, 140, 137, 237, 140, 15, 240, 241, 143,
1490 243, 244, 140, 140, 142, 248, 249, 250, 251, 252,
1491 680, 140, 255, 32, 56, 195, 196, 260, 261, 103,
1492 37, 264, 265, 693, 137, 620, 269, 270, 271, 272,
1493 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1494 283, 284, 285, 286, 287, 288, 289, 290, 439, 49,
1495 50, 4, 647, 296, 297, 103, 140, 140, 142, 142,
1496 738, 3, 4, 4, 6, 103, 4, 125, 37, 103,
1497 128, 129, 130, 751, 15, 125, 4, 317, 128, 129,
1498 130, 56, 355, 356, 140, 680, 142, 37, 30, 31,
1499 37, 32, 140, 37, 142, 37, 38, 39, 693, 140,
1500 141, 341, 140, 343, 142, 37, 140, 498, 142, 51,
1501 52, 53, 37, 54, 55, 37, 58, 39, 4, 37,
1502 140, 63, 142, 4, 67, 68, 69, 70, 71, 15,
1503 72, 121, 122, 123, 15, 77, 78, 79, 80, 81,
1504 82, 83, 132, 3, 4, 328, 32, 37, 90, 139,
1505 92, 32, 37, 37, 545, 37, 4, 37, 37, 541,
1506 30, 31, 32, 33, 34, 107, 37, 131, 54, 55,
1507 359, 113, 125, 54, 55, 128, 129, 130, 134, 135,
1508 136, 424, 37, 426, 427, 428, 4, 125, 4, 4,
1509 128, 129, 130, 4, 4, 4, 138, 4, 140, 142,
1510 4, 4, 3, 145, 146, 109, 4, 450, 4, 57,
1511 453, 454, 4, 456, 3, 4, 64, 6, 57, 16,
1512 463, 464, 16, 71, 141, 57, 141, 470, 76, 28,
1513 29, 30, 31, 32, 33, 34, 4, 417, 4, 4,
1514 4, 30, 31, 4, 4, 4, 4, 95, 37, 38,
1515 39, 137, 4, 101, 102, 37, 137, 4, 4, 37,
1516 37, 56, 51, 52, 53, 113, 37, 37, 37, 58,
1517 37, 140, 140, 140, 63, 37, 36, 140, 4, 522,
1518 37, 37, 37, 72, 37, 141, 37, 37, 77, 78,
1519 79, 80, 81, 82, 83, 37, 37, 37, 571, 37,
1520 37, 90, 37, 92, 64, 37, 141, 56, 142, 57,
1521 140, 71, 57, 142, 142, 142, 76, 560, 107, 142,
1522 142, 142, 37, 566, 113, 568, 6, 6, 142, 142,
1523 603, 4, 4, 513, 514, 95, 579, 4, 4, 4,
1524 4, 101, 102, 4, 4, 4, 4, 4, 4, 138,
1525 4, 140, 4, 113, 597, 141, 145, 146, 141, 4,
1526 37, 604, 4, 37, 140, 4, 56, 142, 142, 3,
1527 4, 4, 754, 16, 37, 757, 4, 140, 16, 761,
1528 6, 7, 8, 9, 10, 11, 12, 13, 14, 37,
1529 99, 16, 89, 633, 4, 668, 30, 31, 142, 142,
1530 4, 90, 141, 37, 38, 39, 40, 36, 142, 142,
1531 57, 37, 142, 142, 142, 142, 16, 51, 52, 53,
1532 142, 142, 142, 142, 58, 37, 56, 38, 37, 63,
1533 37, 142, 6, 140, 37, 4, 141, 141, 72, 92,
1534 683, 3, 4, 77, 78, 79, 80, 81, 82, 83,
1535 100, 57, 37, 6, 16, 37, 90, 16, 92, 6,
1536 7, 8, 9, 10, 11, 12, 13, 14, 30, 31,
1537 56, 37, 56, 107, 16, 37, 38, 39, 57, 113,
1538 37, 37, 37, 37, 56, 37, 37, 37, 57, 51,
1539 52, 53, 37, 37, 25, 64, 58, 37, 37, 37,
1540 37, 63, 71, 37, 138, 142, 142, 76, 4, 99,
1541 72, 145, 146, 3, 4, 77, 78, 79, 80, 81,
1542 82, 83, 142, 142, 142, 4, 95, 36, 90, 142,
1543 92, 57, 101, 102, 142, 4, 25, 142, 4, 4,
1544 30, 31, 242, 142, 113, 107, 142, 37, 38, 39,
1545 142, 113, 333, 142, 142, 142, 139, 36, 699, 38,
1546 211, 51, 52, 53, 142, 142, 142, 665, 58, 684,
1547 4, 647, 741, 63, 433, 564, 138, 713, 492, 531,
1548 427, 15, 72, 145, 146, 64, 691, 77, 78, 79,
1549 80, 81, 82, 83, 26, 239, 98, 556, 32, -1,
1550 90, -1, 92, -1, -1, -1, -1, 41, 42, 43,
1551 44, 45, -1, -1, -1, -1, -1, 107, -1, 98,
1552 54, 55, -1, 113, -1, 104, 105, 106, 107, 108,
1553 64, 110, 111, 112, -1, 114, 115, -1, 117, 118,
1554 119, -1, -1, -1, -1, 124, 125, 126, 138, -1,
1555 -1, -1, -1, -1, -1, 145, 146, 91, 4, 93,
1556 -1, -1, -1, 97, -1, -1, -1, 101, 102, -1,
1557 -1, -1, -1, -1, -1, -1, -1, -1, 15, 113,
1558 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1559 27, 28, 29, 30, 31, 32, 33, 34, -1, 133,
1560 46, 47, 48, 137, -1, -1, -1, 141, -1, 143,
1561 -1, -1, -1, 59, 60, 61, 62, -1, 64, 65,
1562 66, -1, -1, -1, -1, -1, -1, 73, 74, 75,
1563 76, 4, -1, -1, -1, -1, -1, -1, 84, 85,
1564 86, 87, 88, 89, -1, -1, -1, -1, 94, 95,
1565 96, -1, -1, -1, -1, 101, 102, -1, -1, -1,
1566 -1, -1, -1, 36, -1, -1, -1, 113, -1, -1,
1567 -1, -1, -1, 46, 47, 48, -1, -1, -1, 125,
1568 -1, -1, -1, -1, -1, 131, 59, 60, 61, 62,
1569 -1, 64, 65, 66, -1, 141, -1, -1, -1, -1,
1570 73, 74, 75, 76, -1, 142, -1, -1, -1, -1,
1571 -1, 84, 85, 86, 87, 88, 89, -1, -1, -1,
1572 -1, 94, 95, 96, -1, -1, -1, -1, 101, 102,
1573 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1574 113, 24, 25, 26, 27, 28, 29, 30, 31, 32,
1575 33, 34, 125, 21, 22, 23, 24, 25, 26, 27,
1576 28, 29, 30, 31, 32, 33, 34, 15, 141, 17,
1577 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1578 28, 29, 30, 31, 32, 33, 34, 15, -1, 17,
1579 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1580 28, 29, 30, 31, 32, 33, 34, 15, -1, 17,
1581 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1582 28, 29, 30, 31, 32, 33, 34, 15, -1, 17,
1583 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1584 28, 29, 30, 31, 32, 33, 34, 15, -1, 17,
1585 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1586 28, 29, 30, 31, 32, 33, 34, 15, -1, 17,
1587 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1588 28, 29, 30, 31, 32, 33, 34, -1, -1, -1,
1589 -1, -1, 140, 15, 142, 17, 18, 19, 20, 21,
1590 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1591 32, 33, 34, 15, 142, 17, 18, 19, 20, 21,
1592 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1593 32, 33, 34, 15, 142, 17, 18, 19, 20, 21,
1594 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1595 32, 33, 34, 15, 142, 17, 18, 19, 20, 21,
1596 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1597 32, 33, 34, 15, 142, 17, 18, 19, 20, 21,
1598 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1599 32, 33, 34, 15, 142, 17, 18, 19, 20, 21,
1600 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1601 32, 33, 34, -1, -1, -1, -1, -1, -1, 15,
1602 142, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1603 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1604 142, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1605 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1606 142, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1607 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1608 142, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1609 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1610 142, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1611 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1612 142, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1613 26, 27, 28, 29, 30, 31, 32, 33, 34, -1,
1614 -1, -1, -1, -1, -1, 15, 142, 17, 18, 19,
1615 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1616 30, 31, 32, 33, 34, 15, 142, 17, 18, 19,
1617 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1618 30, 31, 32, 33, 34, 15, 142, 17, 18, 19,
1619 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1620 30, 31, 32, 33, 34, 15, 142, 17, 18, 19,
1621 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1622 30, 31, 32, 33, 34, 15, 142, 17, 18, 19,
1623 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1624 30, 31, 32, 33, 34, 15, 142, 17, 18, 19,
1625 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1626 30, 31, 32, 33, 34, -1, -1, -1, -1, 15,
1627 140, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1628 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1629 140, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1630 26, 27, 28, 29, 30, 31, 32, 33, 34, -1,
1631 140, 654, 655, -1, -1, 4, -1, 660, -1, -1,
1632 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1633 140, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1634 -1, -1, -1, 686, 687, -1, -1, -1, -1, 38,
1635 140, -1, -1, 696, 697, -1, 699, -1, 701, 702,
1636 -1, -1, -1, -1, -1, -1, 709, -1, -1, -1,
1637 140, -1, -1, -1, -1, 64, -1, -1, 721, -1,
1638 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1639 -1, 734, -1, -1, 140, 22, 23, 24, 25, 26,
1640 27, 28, 29, 30, 31, 32, 33, 34, -1, 98,
1641 -1, -1, -1, -1, 140, 104, 105, 106, 107, 108,
1642 109, 110, 111, 112, -1, 114, 115, -1, 117, 118,
1643 119, -1, -1, -1, -1, 124, 125, 126, 15, -1,
1644 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1645 27, 28, 29, 30, 31, 32, 33, 34, -1, -1,
1646 37, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1647 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1648 34, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1649 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1650 34, 15, -1, 17, 18, 19, 20, 21, 22, 23,
1651 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1652 34, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1653 27, 28, 29, 30, 31, 32, 33, 34, 19, 20,
1654 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
1655 31, 32, 33, 34, 20, 21, 22, 23, 24, 25,
1656 26, 27, 28, 29, 30, 31, 32, 33, 34
1659 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1660 symbol of state STATE-NUM. */
1661 static const yytype_uint16 yystos
[] =
1663 0, 121, 122, 123, 132, 139, 148, 164, 165, 152,
1664 153, 150, 151, 261, 262, 256, 257, 0, 166, 154,
1665 4, 56, 127, 265, 266, 56, 258, 259, 4, 46,
1666 47, 48, 59, 60, 61, 62, 64, 65, 66, 73,
1667 74, 75, 76, 84, 85, 86, 87, 88, 89, 94,
1668 95, 96, 101, 102, 113, 125, 141, 167, 174, 176,
1669 195, 197, 208, 209, 211, 213, 248, 263, 264, 4,
1670 38, 64, 98, 104, 105, 106, 107, 108, 110, 111,
1671 112, 114, 115, 117, 118, 119, 124, 125, 126, 155,
1672 6, 4, 125, 128, 129, 130, 268, 269, 56, 266,
1673 129, 130, 260, 269, 259, 6, 7, 8, 9, 10,
1674 11, 12, 13, 14, 193, 56, 56, 49, 50, 37,
1675 37, 4, 149, 56, 37, 37, 37, 37, 37, 37,
1676 37, 37, 37, 37, 168, 37, 37, 37, 177, 37,
1677 140, 141, 194, 131, 4, 149, 4, 3, 4, 30,
1678 31, 37, 38, 39, 51, 52, 53, 58, 63, 72,
1679 77, 78, 79, 80, 81, 82, 83, 90, 92, 107,
1680 113, 138, 145, 146, 217, 4, 4, 159, 4, 158,
1681 157, 4, 4, 4, 217, 4, 3, 4, 160, 161,
1682 162, 4, 109, 217, 4, 16, 16, 57, 141, 268,
1683 57, 141, 215, 216, 215, 175, 249, 4, 4, 4,
1684 4, 169, 4, 64, 198, 199, 200, 4, 4, 149,
1685 149, 4, 149, 142, 149, 210, 212, 4, 214, 4,
1686 5, 103, 170, 37, 149, 4, 4, 37, 161, 56,
1687 6, 140, 156, 6, 140, 217, 217, 217, 37, 37,
1688 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1689 37, 37, 37, 37, 37, 37, 37, 217, 217, 15,
1690 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1691 27, 28, 29, 30, 31, 32, 33, 34, 140, 6,
1692 140, 217, 140, 140, 4, 140, 6, 140, 217, 140,
1693 140, 4, 163, 56, 269, 269, 141, 4, 125, 128,
1694 129, 130, 57, 141, 217, 4, 57, 64, 71, 95,
1695 176, 223, 4, 57, 250, 140, 142, 142, 166, 201,
1696 149, 57, 140, 196, 140, 142, 142, 142, 142, 142,
1697 142, 196, 142, 196, 140, 214, 142, 37, 4, 5,
1698 103, 140, 142, 170, 142, 6, 6, 217, 142, 265,
1699 217, 217, 154, 217, 217, 142, 217, 217, 217, 217,
1700 217, 4, 4, 217, 4, 4, 4, 4, 217, 217,
1701 4, 4, 217, 217, 4, 217, 217, 217, 217, 217,
1702 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
1703 217, 217, 217, 217, 217, 217, 217, 4, 4, 4,
1704 217, 217, 3, 4, 4, 4, 140, 271, 141, 141,
1705 4, 127, 141, 267, 224, 149, 229, 234, 251, 4,
1706 36, 37, 205, 202, 200, 4, 149, 149, 214, 171,
1707 37, 4, 5, 103, 142, 215, 215, 140, 57, 36,
1708 140, 142, 142, 140, 140, 142, 140, 142, 142, 142,
1709 142, 142, 142, 140, 140, 142, 142, 142, 140, 142,
1710 16, 4, 269, 130, 56, 127, 141, 37, 40, 217,
1711 238, 239, 236, 16, 217, 240, 239, 217, 253, 140,
1712 4, 145, 206, 207, 16, 198, 142, 170, 173, 37,
1713 142, 142, 4, 217, 217, 217, 217, 217, 217, 4,
1714 217, 141, 272, 16, 270, 67, 68, 69, 70, 71,
1715 142, 237, 37, 37, 238, 16, 99, 219, 175, 16,
1716 89, 241, 235, 4, 99, 254, 4, 4, 142, 207,
1717 90, 203, 36, 142, 170, 172, 142, 142, 142, 142,
1718 142, 142, 142, 142, 57, 269, 269, 142, 217, 16,
1719 37, 38, 220, 36, 219, 56, 37, 255, 37, 252,
1720 142, 6, 196, 142, 170, 141, 272, 142, 217, 37,
1721 100, 221, 221, 175, 217, 254, 217, 141, 215, 92,
1722 204, 142, 57, 39, 238, 142, 217, 37, 225, 230,
1723 57, 142, 142, 6, 37, 16, 142, 217, 134, 135,
1724 136, 222, 56, 254, 215, 217, 142, 56, 231, 142,
1725 226, 244, 238, 4, 15, 32, 41, 42, 43, 44,
1726 45, 54, 55, 64, 91, 93, 97, 113, 133, 137,
1727 141, 143, 178, 179, 182, 183, 185, 188, 189, 190,
1728 195, 4, 57, 16, 37, 37, 149, 37, 186, 37,
1729 37, 4, 54, 179, 181, 37, 185, 57, 37, 194,
1730 245, 232, 54, 55, 97, 137, 178, 54, 55, 178,
1731 187, 191, 215, 37, 184, 178, 180, 37, 144, 196,
1732 181, 227, 215, 56, 25, 242, 37, 37, 142, 37,
1733 142, 37, 37, 142, 189, 142, 217, 4, 182, 142,
1734 178, 179, 142, 242, 142, 189, 4, 99, 218, 178,
1735 178, 180, 178, 178, 36, 140, 142, 178, 218, 57,
1736 25, 243, 142, 142, 142, 142, 142, 4, 243, 246,
1737 4, 6, 16, 192, 142, 142, 178, 142, 142, 142,
1738 192, 243, 191, 4, 233, 142, 194, 228, 192, 196,
1742 #define yyerrok (yyerrstatus = 0)
1743 #define yyclearin (yychar = YYEMPTY)
1744 #define YYEMPTY (-2)
1747 #define YYACCEPT goto yyacceptlab
1748 #define YYABORT goto yyabortlab
1749 #define YYERROR goto yyerrorlab
1752 /* Like YYERROR except do call yyerror. This remains here temporarily
1753 to ease the transition to the new meaning of YYERROR, for GCC.
1754 Once GCC version 2 has supplanted version 1, this can go. */
1756 #define YYFAIL goto yyerrlab
1758 #define YYRECOVERING() (!!yyerrstatus)
1760 #define YYBACKUP(Token, Value) \
1762 if (yychar == YYEMPTY && yylen == 1) \
1766 yytoken = YYTRANSLATE (yychar); \
1772 yyerror (YY_("syntax error: cannot back up")); \
1779 #define YYERRCODE 256
1782 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
1783 If N is 0, then set CURRENT to the empty location which ends
1784 the previous symbol: RHS[0] (always defined). */
1786 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
1787 #ifndef YYLLOC_DEFAULT
1788 # define YYLLOC_DEFAULT(Current, Rhs, N) \
1792 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
1793 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
1794 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
1795 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
1799 (Current).first_line = (Current).last_line = \
1800 YYRHSLOC (Rhs, 0).last_line; \
1801 (Current).first_column = (Current).last_column = \
1802 YYRHSLOC (Rhs, 0).last_column; \
1808 /* YY_LOCATION_PRINT -- Print the location on the stream.
1809 This macro was not mandated originally: define only if we know
1810 we won't break user code: when these are the locations we know. */
1812 #ifndef YY_LOCATION_PRINT
1813 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
1814 # define YY_LOCATION_PRINT(File, Loc) \
1815 fprintf (File, "%d.%d-%d.%d", \
1816 (Loc).first_line, (Loc).first_column, \
1817 (Loc).last_line, (Loc).last_column)
1819 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1824 /* YYLEX -- calling `yylex' with the right arguments. */
1827 # define YYLEX yylex (YYLEX_PARAM)
1829 # define YYLEX yylex ()
1832 /* Enable debugging if requested. */
1836 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
1837 # define YYFPRINTF fprintf
1840 # define YYDPRINTF(Args) \
1846 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
1850 YYFPRINTF (stderr, "%s ", Title); \
1851 yy_symbol_print (stderr, \
1853 YYFPRINTF (stderr, "\n"); \
1858 /*--------------------------------.
1859 | Print this symbol on YYOUTPUT. |
1860 `--------------------------------*/
1863 #if (defined __STDC__ || defined __C99__FUNC__ \
1864 || defined __cplusplus || defined _MSC_VER)
1866 yy_symbol_value_print (FILE *yyoutput
, int yytype
, YYSTYPE
const * const yyvaluep
)
1869 yy_symbol_value_print (yyoutput
, yytype
, yyvaluep
)
1872 YYSTYPE
const * const yyvaluep
;
1878 if (yytype
< YYNTOKENS
)
1879 YYPRINT (yyoutput
, yytoknum
[yytype
], *yyvaluep
);
1891 /*--------------------------------.
1892 | Print this symbol on YYOUTPUT. |
1893 `--------------------------------*/
1895 #if (defined __STDC__ || defined __C99__FUNC__ \
1896 || defined __cplusplus || defined _MSC_VER)
1898 yy_symbol_print (FILE *yyoutput
, int yytype
, YYSTYPE
const * const yyvaluep
)
1901 yy_symbol_print (yyoutput
, yytype
, yyvaluep
)
1904 YYSTYPE
const * const yyvaluep
;
1907 if (yytype
< YYNTOKENS
)
1908 YYFPRINTF (yyoutput
, "token %s (", yytname
[yytype
]);
1910 YYFPRINTF (yyoutput
, "nterm %s (", yytname
[yytype
]);
1912 yy_symbol_value_print (yyoutput
, yytype
, yyvaluep
);
1913 YYFPRINTF (yyoutput
, ")");
1916 /*------------------------------------------------------------------.
1917 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
1919 `------------------------------------------------------------------*/
1921 #if (defined __STDC__ || defined __C99__FUNC__ \
1922 || defined __cplusplus || defined _MSC_VER)
1924 yy_stack_print (yytype_int16
*bottom
, yytype_int16
*top
)
1927 yy_stack_print (bottom
, top
)
1928 yytype_int16
*bottom
;
1932 YYFPRINTF (stderr
, "Stack now");
1933 for (; bottom
<= top
; ++bottom
)
1934 YYFPRINTF (stderr
, " %d", *bottom
);
1935 YYFPRINTF (stderr
, "\n");
1938 # define YY_STACK_PRINT(Bottom, Top) \
1941 yy_stack_print ((Bottom), (Top)); \
1945 /*------------------------------------------------.
1946 | Report that the YYRULE is going to be reduced. |
1947 `------------------------------------------------*/
1949 #if (defined __STDC__ || defined __C99__FUNC__ \
1950 || defined __cplusplus || defined _MSC_VER)
1952 yy_reduce_print (YYSTYPE
*yyvsp
, int yyrule
)
1955 yy_reduce_print (yyvsp
, yyrule
)
1960 int yynrhs
= yyr2
[yyrule
];
1962 unsigned long int yylno
= yyrline
[yyrule
];
1963 YYFPRINTF (stderr
, "Reducing stack by rule %d (line %lu):\n",
1965 /* The symbols being reduced. */
1966 for (yyi
= 0; yyi
< yynrhs
; yyi
++)
1968 fprintf (stderr
, " $%d = ", yyi
+ 1);
1969 yy_symbol_print (stderr
, yyrhs
[yyprhs
[yyrule
] + yyi
],
1970 &(yyvsp
[(yyi
+ 1) - (yynrhs
)])
1972 fprintf (stderr
, "\n");
1976 # define YY_REDUCE_PRINT(Rule) \
1979 yy_reduce_print (yyvsp, Rule); \
1982 /* Nonzero means print parse trace. It is left uninitialized so that
1983 multiple parsers can coexist. */
1985 #else /* !YYDEBUG */
1986 # define YYDPRINTF(Args)
1987 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
1988 # define YY_STACK_PRINT(Bottom, Top)
1989 # define YY_REDUCE_PRINT(Rule)
1990 #endif /* !YYDEBUG */
1993 /* YYINITDEPTH -- initial size of the parser's stacks. */
1995 # define YYINITDEPTH 200
1998 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
1999 if the built-in stack extension method is used).
2001 Do not make this value too large; the results are undefined if
2002 YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
2003 evaluated with infinite-precision integer arithmetic. */
2006 # define YYMAXDEPTH 10000
2014 # if defined __GLIBC__ && defined _STRING_H
2015 # define yystrlen strlen
2017 /* Return the length of YYSTR. */
2018 #if (defined __STDC__ || defined __C99__FUNC__ \
2019 || defined __cplusplus || defined _MSC_VER)
2021 yystrlen (const char *yystr
)
2029 for (yylen
= 0; yystr
[yylen
]; yylen
++)
2037 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
2038 # define yystpcpy stpcpy
2040 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
2042 #if (defined __STDC__ || defined __C99__FUNC__ \
2043 || defined __cplusplus || defined _MSC_VER)
2045 yystpcpy (char *yydest
, const char *yysrc
)
2048 yystpcpy (yydest
, yysrc
)
2054 const char *yys
= yysrc
;
2056 while ((*yyd
++ = *yys
++) != '\0')
2065 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
2066 quotes and backslashes, so that it's suitable for yyerror. The
2067 heuristic is that double-quoting is unnecessary unless the string
2068 contains an apostrophe, a comma, or backslash (other than
2069 backslash-backslash). YYSTR is taken from yytname. If YYRES is
2070 null, do not copy; instead, return the length of what the result
2073 yytnamerr (char *yyres
, const char *yystr
)
2078 char const *yyp
= yystr
;
2085 goto do_not_strip_quotes
;
2089 goto do_not_strip_quotes
;
2102 do_not_strip_quotes
: ;
2106 return yystrlen (yystr
);
2108 return yystpcpy (yyres
, yystr
) - yyres
;
2112 /* Copy into YYRESULT an error message about the unexpected token
2113 YYCHAR while in state YYSTATE. Return the number of bytes copied,
2114 including the terminating null byte. If YYRESULT is null, do not
2115 copy anything; just return the number of bytes that would be
2116 copied. As a special case, return 0 if an ordinary "syntax error"
2117 message will do. Return YYSIZE_MAXIMUM if overflow occurs during
2118 size calculation. */
2120 yysyntax_error (char *yyresult
, int yystate
, int yychar
)
2122 int yyn
= yypact
[yystate
];
2124 if (! (YYPACT_NINF
< yyn
&& yyn
<= YYLAST
))
2128 int yytype
= YYTRANSLATE (yychar
);
2129 YYSIZE_T yysize0
= yytnamerr (0, yytname
[yytype
]);
2130 YYSIZE_T yysize
= yysize0
;
2132 int yysize_overflow
= 0;
2133 enum { YYERROR_VERBOSE_ARGS_MAXIMUM
= 5 };
2134 char const *yyarg
[YYERROR_VERBOSE_ARGS_MAXIMUM
];
2138 /* This is so xgettext sees the translatable formats that are
2139 constructed on the fly. */
2140 YY_("syntax error, unexpected %s");
2141 YY_("syntax error, unexpected %s, expecting %s");
2142 YY_("syntax error, unexpected %s, expecting %s or %s");
2143 YY_("syntax error, unexpected %s, expecting %s or %s or %s");
2144 YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
2148 static char const yyunexpected
[] = "syntax error, unexpected %s";
2149 static char const yyexpecting
[] = ", expecting %s";
2150 static char const yyor
[] = " or %s";
2151 char yyformat
[sizeof yyunexpected
2152 + sizeof yyexpecting
- 1
2153 + ((YYERROR_VERBOSE_ARGS_MAXIMUM
- 2)
2154 * (sizeof yyor
- 1))];
2155 char const *yyprefix
= yyexpecting
;
2157 /* Start YYX at -YYN if negative to avoid negative indexes in
2159 int yyxbegin
= yyn
< 0 ? -yyn
: 0;
2161 /* Stay within bounds of both yycheck and yytname. */
2162 int yychecklim
= YYLAST
- yyn
+ 1;
2163 int yyxend
= yychecklim
< YYNTOKENS
? yychecklim
: YYNTOKENS
;
2166 yyarg
[0] = yytname
[yytype
];
2167 yyfmt
= yystpcpy (yyformat
, yyunexpected
);
2169 for (yyx
= yyxbegin
; yyx
< yyxend
; ++yyx
)
2170 if (yycheck
[yyx
+ yyn
] == yyx
&& yyx
!= YYTERROR
)
2172 if (yycount
== YYERROR_VERBOSE_ARGS_MAXIMUM
)
2176 yyformat
[sizeof yyunexpected
- 1] = '\0';
2179 yyarg
[yycount
++] = yytname
[yyx
];
2180 yysize1
= yysize
+ yytnamerr (0, yytname
[yyx
]);
2181 yysize_overflow
|= (yysize1
< yysize
);
2183 yyfmt
= yystpcpy (yyfmt
, yyprefix
);
2187 yyf
= YY_(yyformat
);
2188 yysize1
= yysize
+ yystrlen (yyf
);
2189 yysize_overflow
|= (yysize1
< yysize
);
2192 if (yysize_overflow
)
2193 return YYSIZE_MAXIMUM
;
2197 /* Avoid sprintf, as that infringes on the user's name space.
2198 Don't have undefined behavior even if the translation
2199 produced a string with the wrong number of "%s"s. */
2200 char *yyp
= yyresult
;
2202 while ((*yyp
= *yyf
) != '\0')
2204 if (*yyp
== '%' && yyf
[1] == 's' && yyi
< yycount
)
2206 yyp
+= yytnamerr (yyp
, yyarg
[yyi
++]);
2219 #endif /* YYERROR_VERBOSE */
2222 /*-----------------------------------------------.
2223 | Release the memory associated to this symbol. |
2224 `-----------------------------------------------*/
2227 #if (defined __STDC__ || defined __C99__FUNC__ \
2228 || defined __cplusplus || defined _MSC_VER)
2230 yydestruct (const char *yymsg
, int yytype
, YYSTYPE
*yyvaluep
)
2233 yydestruct (yymsg
, yytype
, yyvaluep
)
2243 YY_SYMBOL_PRINT (yymsg
, yytype
, yyvaluep
, yylocationp
);
2254 /* Prevent warnings from -Wmissing-prototypes. */
2256 #ifdef YYPARSE_PARAM
2257 #if defined __STDC__ || defined __cplusplus
2258 int yyparse (void *YYPARSE_PARAM
);
2262 #else /* ! YYPARSE_PARAM */
2263 #if defined __STDC__ || defined __cplusplus
2268 #endif /* ! YYPARSE_PARAM */
2272 /* The look-ahead symbol. */
2275 /* The semantic value of the look-ahead symbol. */
2278 /* Number of syntax errors so far. */
2287 #ifdef YYPARSE_PARAM
2288 #if (defined __STDC__ || defined __C99__FUNC__ \
2289 || defined __cplusplus || defined _MSC_VER)
2291 yyparse (void *YYPARSE_PARAM
)
2294 yyparse (YYPARSE_PARAM
)
2295 void *YYPARSE_PARAM
;
2297 #else /* ! YYPARSE_PARAM */
2298 #if (defined __STDC__ || defined __C99__FUNC__ \
2299 || defined __cplusplus || defined _MSC_VER)
2313 /* Number of tokens to shift before error messages enabled. */
2315 /* Look-ahead token as an internal (translated) token number. */
2318 /* Buffer for error messages, and its allocated size. */
2320 char *yymsg
= yymsgbuf
;
2321 YYSIZE_T yymsg_alloc
= sizeof yymsgbuf
;
2324 /* Three stacks and their tools:
2325 `yyss': related to states,
2326 `yyvs': related to semantic values,
2327 `yyls': related to locations.
2329 Refer to the stacks thru separate pointers, to allow yyoverflow
2330 to reallocate them elsewhere. */
2332 /* The state stack. */
2333 yytype_int16 yyssa
[YYINITDEPTH
];
2334 yytype_int16
*yyss
= yyssa
;
2335 yytype_int16
*yyssp
;
2337 /* The semantic value stack. */
2338 YYSTYPE yyvsa
[YYINITDEPTH
];
2339 YYSTYPE
*yyvs
= yyvsa
;
2344 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
2346 YYSIZE_T yystacksize
= YYINITDEPTH
;
2348 /* The variables used to return semantic value and location from the
2353 /* The number of symbols on the RHS of the reduced rule.
2354 Keep to zero when no symbol should be popped. */
2357 YYDPRINTF ((stderr
, "Starting parse\n"));
2362 yychar
= YYEMPTY
; /* Cause a token to be read. */
2364 /* Initialize stack pointers.
2365 Waste one element of value and location stack
2366 so that they stay on the same level as the state stack.
2367 The wasted elements are never initialized. */
2374 /*------------------------------------------------------------.
2375 | yynewstate -- Push a new state, which is found in yystate. |
2376 `------------------------------------------------------------*/
2378 /* In all cases, when you get here, the value and location stacks
2379 have just been pushed. So pushing a state here evens the stacks. */
2385 if (yyss
+ yystacksize
- 1 <= yyssp
)
2387 /* Get the current used size of the three stacks, in elements. */
2388 YYSIZE_T yysize
= yyssp
- yyss
+ 1;
2392 /* Give user a chance to reallocate the stack. Use copies of
2393 these so that the &'s don't force the real ones into
2395 YYSTYPE
*yyvs1
= yyvs
;
2396 yytype_int16
*yyss1
= yyss
;
2399 /* Each stack pointer address is followed by the size of the
2400 data in use in that stack, in bytes. This used to be a
2401 conditional around just the two extra args, but that might
2402 be undefined if yyoverflow is a macro. */
2403 yyoverflow (YY_("memory exhausted"),
2404 &yyss1
, yysize
* sizeof (*yyssp
),
2405 &yyvs1
, yysize
* sizeof (*yyvsp
),
2412 #else /* no yyoverflow */
2413 # ifndef YYSTACK_RELOCATE
2414 goto yyexhaustedlab
;
2416 /* Extend the stack our own way. */
2417 if (YYMAXDEPTH
<= yystacksize
)
2418 goto yyexhaustedlab
;
2420 if (YYMAXDEPTH
< yystacksize
)
2421 yystacksize
= YYMAXDEPTH
;
2424 yytype_int16
*yyss1
= yyss
;
2425 union yyalloc
*yyptr
=
2426 (union yyalloc
*) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize
));
2428 goto yyexhaustedlab
;
2429 YYSTACK_RELOCATE (yyss
);
2430 YYSTACK_RELOCATE (yyvs
);
2432 # undef YYSTACK_RELOCATE
2434 YYSTACK_FREE (yyss1
);
2437 #endif /* no yyoverflow */
2439 yyssp
= yyss
+ yysize
- 1;
2440 yyvsp
= yyvs
+ yysize
- 1;
2443 YYDPRINTF ((stderr
, "Stack size increased to %lu\n",
2444 (unsigned long int) yystacksize
));
2446 if (yyss
+ yystacksize
- 1 <= yyssp
)
2450 YYDPRINTF ((stderr
, "Entering state %d\n", yystate
));
2459 /* Do appropriate processing given the current state. Read a
2460 look-ahead token if we need one and don't already have one. */
2462 /* First try to decide what to do without reference to look-ahead token. */
2463 yyn
= yypact
[yystate
];
2464 if (yyn
== YYPACT_NINF
)
2467 /* Not known => get a look-ahead token if don't already have one. */
2469 /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
2470 if (yychar
== YYEMPTY
)
2472 YYDPRINTF ((stderr
, "Reading a token: "));
2476 if (yychar
<= YYEOF
)
2478 yychar
= yytoken
= YYEOF
;
2479 YYDPRINTF ((stderr
, "Now at end of input.\n"));
2483 yytoken
= YYTRANSLATE (yychar
);
2484 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
2487 /* If the proper action on seeing token YYTOKEN is to reduce or to
2488 detect an error, take that action. */
2490 if (yyn
< 0 || YYLAST
< yyn
|| yycheck
[yyn
] != yytoken
)
2495 if (yyn
== 0 || yyn
== YYTABLE_NINF
)
2504 /* Count tokens shifted since error; after three, turn off error
2509 /* Shift the look-ahead token. */
2510 YY_SYMBOL_PRINT ("Shifting", yytoken
, &yylval
, &yylloc
);
2512 /* Discard the shifted token unless it is eof. */
2513 if (yychar
!= YYEOF
)
2522 /*-----------------------------------------------------------.
2523 | yydefault -- do the default action for the current state. |
2524 `-----------------------------------------------------------*/
2526 yyn
= yydefact
[yystate
];
2532 /*-----------------------------.
2533 | yyreduce -- Do a reduction. |
2534 `-----------------------------*/
2536 /* yyn is the number of a rule to reduce with. */
2539 /* If YYLEN is nonzero, implement the default value of the action:
2542 Otherwise, the following line sets YYVAL to garbage.
2543 This behavior is undocumented and Bison
2544 users should not rely upon it. Assigning to YYVAL
2545 unconditionally makes the parser a bit smaller, and it avoids a
2546 GCC warning that YYVAL may be used uninitialized. */
2547 yyval
= yyvsp
[1-yylen
];
2550 YY_REDUCE_PRINT (yyn
);
2554 #line 174 "ldgram.y"
2559 #line 176 "ldgram.y"
2562 lang_add_assignment(exp_assop((yyvsp
[(3) - (4)].token
),(yyvsp
[(2) - (4)].name
),(yyvsp
[(4) - (4)].etree
)));
2567 #line 184 "ldgram.y"
2569 ldlex_mri_script ();
2570 PUSH_ERROR (_("MRI style script"));
2575 #line 189 "ldgram.y"
2584 #line 204 "ldgram.y"
2586 einfo(_("%P%F: unrecognised keyword in MRI style script '%s'\n"),(yyvsp
[(1) - (1)].name
));
2591 #line 207 "ldgram.y"
2593 config
.map_filename
= "-";
2598 #line 213 "ldgram.y"
2599 { mri_public((yyvsp
[(2) - (4)].name
), (yyvsp
[(4) - (4)].etree
)); }
2603 #line 215 "ldgram.y"
2604 { mri_public((yyvsp
[(2) - (4)].name
), (yyvsp
[(4) - (4)].etree
)); }
2608 #line 217 "ldgram.y"
2609 { mri_public((yyvsp
[(2) - (3)].name
), (yyvsp
[(3) - (3)].etree
)); }
2613 #line 219 "ldgram.y"
2614 { mri_format((yyvsp
[(2) - (2)].name
)); }
2618 #line 221 "ldgram.y"
2619 { mri_output_section((yyvsp
[(2) - (4)].name
), (yyvsp
[(4) - (4)].etree
));}
2623 #line 223 "ldgram.y"
2624 { mri_output_section((yyvsp
[(2) - (3)].name
), (yyvsp
[(3) - (3)].etree
));}
2628 #line 225 "ldgram.y"
2629 { mri_output_section((yyvsp
[(2) - (4)].name
), (yyvsp
[(4) - (4)].etree
));}
2633 #line 227 "ldgram.y"
2634 { mri_align((yyvsp
[(2) - (4)].name
),(yyvsp
[(4) - (4)].etree
)); }
2638 #line 229 "ldgram.y"
2639 { mri_align((yyvsp
[(2) - (4)].name
),(yyvsp
[(4) - (4)].etree
)); }
2643 #line 231 "ldgram.y"
2644 { mri_alignmod((yyvsp
[(2) - (4)].name
),(yyvsp
[(4) - (4)].etree
)); }
2648 #line 233 "ldgram.y"
2649 { mri_alignmod((yyvsp
[(2) - (4)].name
),(yyvsp
[(4) - (4)].etree
)); }
2653 #line 237 "ldgram.y"
2654 { mri_name((yyvsp
[(2) - (2)].name
)); }
2658 #line 239 "ldgram.y"
2659 { mri_alias((yyvsp
[(2) - (4)].name
),(yyvsp
[(4) - (4)].name
),0);}
2663 #line 241 "ldgram.y"
2664 { mri_alias ((yyvsp
[(2) - (4)].name
), 0, (int) (yyvsp
[(4) - (4)].bigint
).integer
); }
2668 #line 243 "ldgram.y"
2669 { mri_base((yyvsp
[(2) - (2)].etree
)); }
2673 #line 245 "ldgram.y"
2674 { mri_truncate ((unsigned int) (yyvsp
[(2) - (2)].bigint
).integer
); }
2678 #line 249 "ldgram.y"
2679 { ldlex_script (); ldfile_open_command_file((yyvsp
[(2) - (2)].name
)); }
2683 #line 251 "ldgram.y"
2684 { ldlex_popstate (); }
2688 #line 253 "ldgram.y"
2689 { lang_add_entry ((yyvsp
[(2) - (2)].name
), FALSE
); }
2693 #line 258 "ldgram.y"
2694 { mri_order((yyvsp
[(3) - (3)].name
)); }
2698 #line 259 "ldgram.y"
2699 { mri_order((yyvsp
[(2) - (2)].name
)); }
2703 #line 265 "ldgram.y"
2704 { mri_load((yyvsp
[(1) - (1)].name
)); }
2708 #line 266 "ldgram.y"
2709 { mri_load((yyvsp
[(3) - (3)].name
)); }
2713 #line 271 "ldgram.y"
2714 { mri_only_load((yyvsp
[(1) - (1)].name
)); }
2718 #line 273 "ldgram.y"
2719 { mri_only_load((yyvsp
[(3) - (3)].name
)); }
2723 #line 277 "ldgram.y"
2724 { (yyval
.name
) = NULL
; }
2728 #line 284 "ldgram.y"
2729 { ldlex_expression (); }
2733 #line 286 "ldgram.y"
2734 { ldlex_popstate (); }
2738 #line 290 "ldgram.y"
2739 { ldlang_add_undef ((yyvsp
[(1) - (1)].name
)); }
2743 #line 292 "ldgram.y"
2744 { ldlang_add_undef ((yyvsp
[(2) - (2)].name
)); }
2748 #line 294 "ldgram.y"
2749 { ldlang_add_undef ((yyvsp
[(3) - (3)].name
)); }
2753 #line 298 "ldgram.y"
2758 #line 300 "ldgram.y"
2759 { ldlex_popstate(); }
2763 #line 321 "ldgram.y"
2764 { lang_add_target((yyvsp
[(3) - (4)].name
)); }
2768 #line 323 "ldgram.y"
2769 { ldfile_add_library_path ((yyvsp
[(3) - (4)].name
), FALSE
); }
2773 #line 325 "ldgram.y"
2774 { lang_add_output((yyvsp
[(3) - (4)].name
), 1); }
2778 #line 327 "ldgram.y"
2779 { lang_add_output_format ((yyvsp
[(3) - (4)].name
), (char *) NULL
,
2780 (char *) NULL
, 1); }
2784 #line 330 "ldgram.y"
2785 { lang_add_output_format ((yyvsp
[(3) - (8)].name
), (yyvsp
[(5) - (8)].name
), (yyvsp
[(7) - (8)].name
), 1); }
2789 #line 332 "ldgram.y"
2790 { ldfile_set_output_arch ((yyvsp
[(3) - (4)].name
), bfd_arch_unknown
); }
2794 #line 334 "ldgram.y"
2795 { command_line
.force_common_definition
= TRUE
; }
2799 #line 336 "ldgram.y"
2800 { command_line
.inhibit_common_definition
= TRUE
; }
2804 #line 339 "ldgram.y"
2805 { lang_enter_group (); }
2809 #line 341 "ldgram.y"
2810 { lang_leave_group (); }
2814 #line 343 "ldgram.y"
2815 { lang_add_map((yyvsp
[(3) - (4)].name
)); }
2819 #line 345 "ldgram.y"
2820 { ldlex_script (); ldfile_open_command_file((yyvsp
[(2) - (2)].name
)); }
2824 #line 347 "ldgram.y"
2825 { ldlex_popstate (); }
2829 #line 349 "ldgram.y"
2831 lang_add_nocrossref ((yyvsp
[(3) - (4)].nocrossref
));
2836 #line 354 "ldgram.y"
2837 { lang_add_insert ((yyvsp
[(3) - (3)].name
), 0); }
2841 #line 356 "ldgram.y"
2842 { lang_add_insert ((yyvsp
[(3) - (3)].name
), 1); }
2846 #line 358 "ldgram.y"
2847 { lang_memory_region_alias ((yyvsp
[(3) - (6)].name
), (yyvsp
[(5) - (6)].name
)); }
2851 #line 363 "ldgram.y"
2852 { lang_add_input_file((yyvsp
[(1) - (1)].name
),lang_input_file_is_search_file_enum
,
2857 #line 366 "ldgram.y"
2858 { lang_add_input_file((yyvsp
[(3) - (3)].name
),lang_input_file_is_search_file_enum
,
2863 #line 369 "ldgram.y"
2864 { lang_add_input_file((yyvsp
[(2) - (2)].name
),lang_input_file_is_search_file_enum
,
2869 #line 372 "ldgram.y"
2870 { lang_add_input_file((yyvsp
[(1) - (1)].name
),lang_input_file_is_l_enum
,
2875 #line 375 "ldgram.y"
2876 { lang_add_input_file((yyvsp
[(3) - (3)].name
),lang_input_file_is_l_enum
,
2881 #line 378 "ldgram.y"
2882 { lang_add_input_file((yyvsp
[(2) - (2)].name
),lang_input_file_is_l_enum
,
2887 #line 381 "ldgram.y"
2888 { (yyval
.integer
) = as_needed
; as_needed
= TRUE
; }
2892 #line 383 "ldgram.y"
2893 { as_needed
= (yyvsp
[(3) - (5)].integer
); }
2897 #line 385 "ldgram.y"
2898 { (yyval
.integer
) = as_needed
; as_needed
= TRUE
; }
2902 #line 387 "ldgram.y"
2903 { as_needed
= (yyvsp
[(5) - (7)].integer
); }
2907 #line 389 "ldgram.y"
2908 { (yyval
.integer
) = as_needed
; as_needed
= TRUE
; }
2912 #line 391 "ldgram.y"
2913 { as_needed
= (yyvsp
[(4) - (6)].integer
); }
2917 #line 406 "ldgram.y"
2918 { lang_add_entry ((yyvsp
[(3) - (4)].name
), FALSE
); }
2922 #line 408 "ldgram.y"
2923 {ldlex_expression ();}
2927 #line 409 "ldgram.y"
2928 { ldlex_popstate ();
2929 lang_add_assignment (exp_assert ((yyvsp
[(4) - (7)].etree
), (yyvsp
[(6) - (7)].name
))); }
2933 #line 417 "ldgram.y"
2935 (yyval
.cname
) = (yyvsp
[(1) - (1)].name
);
2940 #line 421 "ldgram.y"
2942 (yyval
.cname
) = "*";
2947 #line 425 "ldgram.y"
2949 (yyval
.cname
) = "?";
2954 #line 432 "ldgram.y"
2956 (yyval
.wildcard
).name
= (yyvsp
[(1) - (1)].cname
);
2957 (yyval
.wildcard
).sorted
= none
;
2958 (yyval
.wildcard
).exclude_name_list
= NULL
;
2963 #line 438 "ldgram.y"
2965 (yyval
.wildcard
).name
= (yyvsp
[(5) - (5)].cname
);
2966 (yyval
.wildcard
).sorted
= none
;
2967 (yyval
.wildcard
).exclude_name_list
= (yyvsp
[(3) - (5)].name_list
);
2972 #line 444 "ldgram.y"
2974 (yyval
.wildcard
).name
= (yyvsp
[(3) - (4)].cname
);
2975 (yyval
.wildcard
).sorted
= by_name
;
2976 (yyval
.wildcard
).exclude_name_list
= NULL
;
2981 #line 450 "ldgram.y"
2983 (yyval
.wildcard
).name
= (yyvsp
[(3) - (4)].cname
);
2984 (yyval
.wildcard
).sorted
= by_alignment
;
2985 (yyval
.wildcard
).exclude_name_list
= NULL
;
2990 #line 456 "ldgram.y"
2992 (yyval
.wildcard
).name
= (yyvsp
[(5) - (7)].cname
);
2993 (yyval
.wildcard
).sorted
= by_name_alignment
;
2994 (yyval
.wildcard
).exclude_name_list
= NULL
;
2999 #line 462 "ldgram.y"
3001 (yyval
.wildcard
).name
= (yyvsp
[(5) - (7)].cname
);
3002 (yyval
.wildcard
).sorted
= by_name
;
3003 (yyval
.wildcard
).exclude_name_list
= NULL
;
3008 #line 468 "ldgram.y"
3010 (yyval
.wildcard
).name
= (yyvsp
[(5) - (7)].cname
);
3011 (yyval
.wildcard
).sorted
= by_alignment_name
;
3012 (yyval
.wildcard
).exclude_name_list
= NULL
;
3017 #line 474 "ldgram.y"
3019 (yyval
.wildcard
).name
= (yyvsp
[(5) - (7)].cname
);
3020 (yyval
.wildcard
).sorted
= by_alignment
;
3021 (yyval
.wildcard
).exclude_name_list
= NULL
;
3026 #line 480 "ldgram.y"
3028 (yyval
.wildcard
).name
= (yyvsp
[(7) - (8)].cname
);
3029 (yyval
.wildcard
).sorted
= by_name
;
3030 (yyval
.wildcard
).exclude_name_list
= (yyvsp
[(5) - (8)].name_list
);
3035 #line 489 "ldgram.y"
3037 struct name_list
*tmp
;
3038 tmp
= (struct name_list
*) xmalloc (sizeof *tmp
);
3039 tmp
->name
= (yyvsp
[(2) - (2)].cname
);
3040 tmp
->next
= (yyvsp
[(1) - (2)].name_list
);
3041 (yyval
.name_list
) = tmp
;
3046 #line 498 "ldgram.y"
3048 struct name_list
*tmp
;
3049 tmp
= (struct name_list
*) xmalloc (sizeof *tmp
);
3050 tmp
->name
= (yyvsp
[(1) - (1)].cname
);
3052 (yyval
.name_list
) = tmp
;
3057 #line 509 "ldgram.y"
3059 struct wildcard_list
*tmp
;
3060 tmp
= (struct wildcard_list
*) xmalloc (sizeof *tmp
);
3061 tmp
->next
= (yyvsp
[(1) - (3)].wildcard_list
);
3062 tmp
->spec
= (yyvsp
[(3) - (3)].wildcard
);
3063 (yyval
.wildcard_list
) = tmp
;
3068 #line 518 "ldgram.y"
3070 struct wildcard_list
*tmp
;
3071 tmp
= (struct wildcard_list
*) xmalloc (sizeof *tmp
);
3073 tmp
->spec
= (yyvsp
[(1) - (1)].wildcard
);
3074 (yyval
.wildcard_list
) = tmp
;
3079 #line 529 "ldgram.y"
3081 struct wildcard_spec tmp
;
3082 tmp
.name
= (yyvsp
[(1) - (1)].name
);
3083 tmp
.exclude_name_list
= NULL
;
3085 lang_add_wild (&tmp
, NULL
, ldgram_had_keep
);
3090 #line 537 "ldgram.y"
3092 lang_add_wild (NULL
, (yyvsp
[(2) - (3)].wildcard_list
), ldgram_had_keep
);
3097 #line 541 "ldgram.y"
3099 lang_add_wild (&(yyvsp
[(1) - (4)].wildcard
), (yyvsp
[(3) - (4)].wildcard_list
), ldgram_had_keep
);
3104 #line 549 "ldgram.y"
3105 { ldgram_had_keep
= TRUE
; }
3109 #line 551 "ldgram.y"
3110 { ldgram_had_keep
= FALSE
; }
3114 #line 557 "ldgram.y"
3116 lang_add_attribute(lang_object_symbols_statement_enum
);
3121 #line 562 "ldgram.y"
3124 lang_add_attribute(lang_constructors_statement_enum
);
3129 #line 567 "ldgram.y"
3131 constructors_sorted
= TRUE
;
3132 lang_add_attribute (lang_constructors_statement_enum
);
3137 #line 573 "ldgram.y"
3139 lang_add_data ((int) (yyvsp
[(1) - (4)].integer
), (yyvsp
[(3) - (4)].etree
));
3144 #line 578 "ldgram.y"
3146 lang_add_fill ((yyvsp
[(3) - (4)].fill
));
3151 #line 581 "ldgram.y"
3152 {ldlex_expression ();}
3156 #line 582 "ldgram.y"
3157 { ldlex_popstate ();
3158 lang_add_assignment (exp_assert ((yyvsp
[(4) - (8)].etree
), (yyvsp
[(6) - (8)].name
))); }
3162 #line 585 "ldgram.y"
3163 { ldlex_script (); ldfile_open_command_file((yyvsp
[(2) - (2)].name
)); }
3167 #line 587 "ldgram.y"
3168 { ldlex_popstate (); }
3172 #line 602 "ldgram.y"
3173 { (yyval
.integer
) = (yyvsp
[(1) - (1)].token
); }
3177 #line 604 "ldgram.y"
3178 { (yyval
.integer
) = (yyvsp
[(1) - (1)].token
); }
3182 #line 606 "ldgram.y"
3183 { (yyval
.integer
) = (yyvsp
[(1) - (1)].token
); }
3187 #line 608 "ldgram.y"
3188 { (yyval
.integer
) = (yyvsp
[(1) - (1)].token
); }
3192 #line 610 "ldgram.y"
3193 { (yyval
.integer
) = (yyvsp
[(1) - (1)].token
); }
3197 #line 615 "ldgram.y"
3199 (yyval
.fill
) = exp_get_fill ((yyvsp
[(1) - (1)].etree
), 0, "fill value");
3204 #line 622 "ldgram.y"
3205 { (yyval
.fill
) = (yyvsp
[(2) - (2)].fill
); }
3209 #line 623 "ldgram.y"
3210 { (yyval
.fill
) = (fill_type
*) 0; }
3214 #line 628 "ldgram.y"
3215 { (yyval
.token
) = '+'; }
3219 #line 630 "ldgram.y"
3220 { (yyval
.token
) = '-'; }
3224 #line 632 "ldgram.y"
3225 { (yyval
.token
) = '*'; }
3229 #line 634 "ldgram.y"
3230 { (yyval
.token
) = '/'; }
3234 #line 636 "ldgram.y"
3235 { (yyval
.token
) = LSHIFT
; }
3239 #line 638 "ldgram.y"
3240 { (yyval
.token
) = RSHIFT
; }
3244 #line 640 "ldgram.y"
3245 { (yyval
.token
) = '&'; }
3249 #line 642 "ldgram.y"
3250 { (yyval
.token
) = '|'; }
3254 #line 652 "ldgram.y"
3256 lang_add_assignment (exp_assop ((yyvsp
[(2) - (3)].token
), (yyvsp
[(1) - (3)].name
), (yyvsp
[(3) - (3)].etree
)));
3261 #line 656 "ldgram.y"
3263 lang_add_assignment (exp_assop ('=', (yyvsp
[(1) - (3)].name
),
3264 exp_binop ((yyvsp
[(2) - (3)].token
),
3266 (yyvsp
[(1) - (3)].name
)),
3267 (yyvsp
[(3) - (3)].etree
))));
3272 #line 664 "ldgram.y"
3274 lang_add_assignment (exp_provide ((yyvsp
[(3) - (6)].name
), (yyvsp
[(5) - (6)].etree
), FALSE
));
3279 #line 668 "ldgram.y"
3281 lang_add_assignment (exp_provide ((yyvsp
[(3) - (6)].name
), (yyvsp
[(5) - (6)].etree
), TRUE
));
3286 #line 691 "ldgram.y"
3287 { region
= lang_memory_region_lookup ((yyvsp
[(1) - (1)].name
), TRUE
); }
3291 #line 694 "ldgram.y"
3296 #line 696 "ldgram.y"
3297 { ldlex_script (); ldfile_open_command_file((yyvsp
[(2) - (2)].name
)); }
3301 #line 698 "ldgram.y"
3302 { ldlex_popstate (); }
3306 #line 703 "ldgram.y"
3308 region
->origin
= exp_get_vma ((yyvsp
[(3) - (3)].etree
), 0, "origin");
3309 region
->current
= region
->origin
;
3314 #line 711 "ldgram.y"
3316 region
->length
= exp_get_vma ((yyvsp
[(3) - (3)].etree
), -1, "length");
3321 #line 718 "ldgram.y"
3322 { /* dummy action to avoid bison 1.25 error message */ }
3326 #line 729 "ldgram.y"
3327 { lang_set_flags (region
, (yyvsp
[(1) - (1)].name
), 0); }
3331 #line 731 "ldgram.y"
3332 { lang_set_flags (region
, (yyvsp
[(2) - (2)].name
), 1); }
3336 #line 736 "ldgram.y"
3337 { lang_startup((yyvsp
[(3) - (4)].name
)); }
3341 #line 742 "ldgram.y"
3342 { ldemul_hll((char *)NULL
); }
3346 #line 747 "ldgram.y"
3347 { ldemul_hll((yyvsp
[(3) - (3)].name
)); }
3351 #line 749 "ldgram.y"
3352 { ldemul_hll((yyvsp
[(1) - (1)].name
)); }
3356 #line 757 "ldgram.y"
3357 { ldemul_syslib((yyvsp
[(3) - (3)].name
)); }
3361 #line 763 "ldgram.y"
3362 { lang_float(TRUE
); }
3366 #line 765 "ldgram.y"
3367 { lang_float(FALSE
); }
3371 #line 770 "ldgram.y"
3373 (yyval
.nocrossref
) = NULL
;
3378 #line 774 "ldgram.y"
3380 struct lang_nocrossref
*n
;
3382 n
= (struct lang_nocrossref
*) xmalloc (sizeof *n
);
3383 n
->name
= (yyvsp
[(1) - (2)].name
);
3384 n
->next
= (yyvsp
[(2) - (2)].nocrossref
);
3385 (yyval
.nocrossref
) = n
;
3390 #line 783 "ldgram.y"
3392 struct lang_nocrossref
*n
;
3394 n
= (struct lang_nocrossref
*) xmalloc (sizeof *n
);
3395 n
->name
= (yyvsp
[(1) - (3)].name
);
3396 n
->next
= (yyvsp
[(3) - (3)].nocrossref
);
3397 (yyval
.nocrossref
) = n
;
3402 #line 793 "ldgram.y"
3403 { ldlex_expression (); }
3407 #line 795 "ldgram.y"
3408 { ldlex_popstate (); (yyval
.etree
)=(yyvsp
[(2) - (2)].etree
);}
3412 #line 800 "ldgram.y"
3413 { (yyval
.etree
) = exp_unop ('-', (yyvsp
[(2) - (2)].etree
)); }
3417 #line 802 "ldgram.y"
3418 { (yyval
.etree
) = (yyvsp
[(2) - (3)].etree
); }
3422 #line 804 "ldgram.y"
3423 { (yyval
.etree
) = exp_unop ((int) (yyvsp
[(1) - (4)].integer
),(yyvsp
[(3) - (4)].etree
)); }
3427 #line 806 "ldgram.y"
3428 { (yyval
.etree
) = exp_unop ('!', (yyvsp
[(2) - (2)].etree
)); }
3432 #line 808 "ldgram.y"
3433 { (yyval
.etree
) = (yyvsp
[(2) - (2)].etree
); }
3437 #line 810 "ldgram.y"
3438 { (yyval
.etree
) = exp_unop ('~', (yyvsp
[(2) - (2)].etree
));}
3442 #line 813 "ldgram.y"
3443 { (yyval
.etree
) = exp_binop ('*', (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3447 #line 815 "ldgram.y"
3448 { (yyval
.etree
) = exp_binop ('/', (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3452 #line 817 "ldgram.y"
3453 { (yyval
.etree
) = exp_binop ('%', (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3457 #line 819 "ldgram.y"
3458 { (yyval
.etree
) = exp_binop ('+', (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3462 #line 821 "ldgram.y"
3463 { (yyval
.etree
) = exp_binop ('-' , (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3467 #line 823 "ldgram.y"
3468 { (yyval
.etree
) = exp_binop (LSHIFT
, (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3472 #line 825 "ldgram.y"
3473 { (yyval
.etree
) = exp_binop (RSHIFT
, (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3477 #line 827 "ldgram.y"
3478 { (yyval
.etree
) = exp_binop (EQ
, (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3482 #line 829 "ldgram.y"
3483 { (yyval
.etree
) = exp_binop (NE
, (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3487 #line 831 "ldgram.y"
3488 { (yyval
.etree
) = exp_binop (LE
, (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3492 #line 833 "ldgram.y"
3493 { (yyval
.etree
) = exp_binop (GE
, (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3497 #line 835 "ldgram.y"
3498 { (yyval
.etree
) = exp_binop ('<' , (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3502 #line 837 "ldgram.y"
3503 { (yyval
.etree
) = exp_binop ('>' , (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3507 #line 839 "ldgram.y"
3508 { (yyval
.etree
) = exp_binop ('&' , (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3512 #line 841 "ldgram.y"
3513 { (yyval
.etree
) = exp_binop ('^' , (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3517 #line 843 "ldgram.y"
3518 { (yyval
.etree
) = exp_binop ('|' , (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3522 #line 845 "ldgram.y"
3523 { (yyval
.etree
) = exp_trinop ('?' , (yyvsp
[(1) - (5)].etree
), (yyvsp
[(3) - (5)].etree
), (yyvsp
[(5) - (5)].etree
)); }
3527 #line 847 "ldgram.y"
3528 { (yyval
.etree
) = exp_binop (ANDAND
, (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3532 #line 849 "ldgram.y"
3533 { (yyval
.etree
) = exp_binop (OROR
, (yyvsp
[(1) - (3)].etree
), (yyvsp
[(3) - (3)].etree
)); }
3537 #line 851 "ldgram.y"
3538 { (yyval
.etree
) = exp_nameop (DEFINED
, (yyvsp
[(3) - (4)].name
)); }
3542 #line 853 "ldgram.y"
3543 { (yyval
.etree
) = exp_bigintop ((yyvsp
[(1) - (1)].bigint
).integer
, (yyvsp
[(1) - (1)].bigint
).str
); }
3547 #line 855 "ldgram.y"
3548 { (yyval
.etree
) = exp_nameop (SIZEOF_HEADERS
,0); }
3552 #line 858 "ldgram.y"
3553 { (yyval
.etree
) = exp_nameop (ALIGNOF
,(yyvsp
[(3) - (4)].name
)); }
3557 #line 860 "ldgram.y"
3558 { (yyval
.etree
) = exp_nameop (SIZEOF
,(yyvsp
[(3) - (4)].name
)); }
3562 #line 862 "ldgram.y"
3563 { (yyval
.etree
) = exp_nameop (ADDR
,(yyvsp
[(3) - (4)].name
)); }
3567 #line 864 "ldgram.y"
3568 { (yyval
.etree
) = exp_nameop (LOADADDR
,(yyvsp
[(3) - (4)].name
)); }
3572 #line 866 "ldgram.y"
3573 { (yyval
.etree
) = exp_nameop (CONSTANT
,(yyvsp
[(3) - (4)].name
)); }
3577 #line 868 "ldgram.y"
3578 { (yyval
.etree
) = exp_unop (ABSOLUTE
, (yyvsp
[(3) - (4)].etree
)); }
3582 #line 870 "ldgram.y"
3583 { (yyval
.etree
) = exp_unop (ALIGN_K
,(yyvsp
[(3) - (4)].etree
)); }
3587 #line 872 "ldgram.y"
3588 { (yyval
.etree
) = exp_binop (ALIGN_K
,(yyvsp
[(3) - (6)].etree
),(yyvsp
[(5) - (6)].etree
)); }
3592 #line 874 "ldgram.y"
3593 { (yyval
.etree
) = exp_binop (DATA_SEGMENT_ALIGN
, (yyvsp
[(3) - (6)].etree
), (yyvsp
[(5) - (6)].etree
)); }
3597 #line 876 "ldgram.y"
3598 { (yyval
.etree
) = exp_binop (DATA_SEGMENT_RELRO_END
, (yyvsp
[(5) - (6)].etree
), (yyvsp
[(3) - (6)].etree
)); }
3602 #line 878 "ldgram.y"
3603 { (yyval
.etree
) = exp_unop (DATA_SEGMENT_END
, (yyvsp
[(3) - (4)].etree
)); }
3607 #line 880 "ldgram.y"
3608 { /* The operands to the expression node are
3609 placed in the opposite order from the way
3610 in which they appear in the script as
3611 that allows us to reuse more code in
3613 (yyval
.etree
) = exp_binop (SEGMENT_START
,
3614 (yyvsp
[(5) - (6)].etree
),
3615 exp_nameop (NAME
, (yyvsp
[(3) - (6)].name
))); }
3619 #line 889 "ldgram.y"
3620 { (yyval
.etree
) = exp_unop (ALIGN_K
,(yyvsp
[(3) - (4)].etree
)); }
3624 #line 891 "ldgram.y"
3625 { (yyval
.etree
) = exp_nameop (NAME
,(yyvsp
[(1) - (1)].name
)); }
3629 #line 893 "ldgram.y"
3630 { (yyval
.etree
) = exp_binop (MAX_K
, (yyvsp
[(3) - (6)].etree
), (yyvsp
[(5) - (6)].etree
) ); }
3634 #line 895 "ldgram.y"
3635 { (yyval
.etree
) = exp_binop (MIN_K
, (yyvsp
[(3) - (6)].etree
), (yyvsp
[(5) - (6)].etree
) ); }
3639 #line 897 "ldgram.y"
3640 { (yyval
.etree
) = exp_assert ((yyvsp
[(3) - (6)].etree
), (yyvsp
[(5) - (6)].name
)); }
3644 #line 899 "ldgram.y"
3645 { (yyval
.etree
) = exp_nameop (ORIGIN
, (yyvsp
[(3) - (4)].name
)); }
3649 #line 901 "ldgram.y"
3650 { (yyval
.etree
) = exp_nameop (LENGTH
, (yyvsp
[(3) - (4)].name
)); }
3654 #line 906 "ldgram.y"
3655 { (yyval
.name
) = (yyvsp
[(3) - (3)].name
); }
3659 #line 907 "ldgram.y"
3660 { (yyval
.name
) = 0; }
3664 #line 911 "ldgram.y"
3665 { (yyval
.etree
) = (yyvsp
[(3) - (4)].etree
); }
3669 #line 912 "ldgram.y"
3670 { (yyval
.etree
) = 0; }
3674 #line 916 "ldgram.y"
3675 { (yyval
.etree
) = (yyvsp
[(3) - (4)].etree
); }
3679 #line 917 "ldgram.y"
3680 { (yyval
.etree
) = 0; }
3684 #line 921 "ldgram.y"
3685 { (yyval
.etree
) = (yyvsp
[(3) - (4)].etree
); }
3689 #line 922 "ldgram.y"
3690 { (yyval
.etree
) = 0; }
3694 #line 926 "ldgram.y"
3695 { (yyval
.token
) = ONLY_IF_RO
; }
3699 #line 927 "ldgram.y"
3700 { (yyval
.token
) = ONLY_IF_RW
; }
3704 #line 928 "ldgram.y"
3705 { (yyval
.token
) = SPECIAL
; }
3709 #line 929 "ldgram.y"
3710 { (yyval
.token
) = 0; }
3714 #line 932 "ldgram.y"
3715 { ldlex_expression(); }
3719 #line 936 "ldgram.y"
3720 { ldlex_popstate (); ldlex_script (); }
3724 #line 939 "ldgram.y"
3726 lang_enter_output_section_statement((yyvsp
[(1) - (9)].name
), (yyvsp
[(3) - (9)].etree
),
3728 (yyvsp
[(5) - (9)].etree
), (yyvsp
[(6) - (9)].etree
), (yyvsp
[(4) - (9)].etree
), (yyvsp
[(8) - (9)].token
));
3733 #line 945 "ldgram.y"
3734 { ldlex_popstate (); ldlex_expression (); }
3738 #line 947 "ldgram.y"
3741 lang_leave_output_section_statement ((yyvsp
[(17) - (17)].fill
), (yyvsp
[(14) - (17)].name
), (yyvsp
[(16) - (17)].section_phdr
), (yyvsp
[(15) - (17)].name
));
3746 #line 952 "ldgram.y"
3751 #line 954 "ldgram.y"
3752 { ldlex_expression (); }
3756 #line 956 "ldgram.y"
3757 { ldlex_popstate (); ldlex_script (); }
3761 #line 958 "ldgram.y"
3763 lang_enter_overlay ((yyvsp
[(3) - (8)].etree
), (yyvsp
[(6) - (8)].etree
));
3768 #line 963 "ldgram.y"
3769 { ldlex_popstate (); ldlex_expression (); }
3773 #line 965 "ldgram.y"
3776 lang_leave_overlay ((yyvsp
[(5) - (16)].etree
), (int) (yyvsp
[(4) - (16)].integer
),
3777 (yyvsp
[(16) - (16)].fill
), (yyvsp
[(13) - (16)].name
), (yyvsp
[(15) - (16)].section_phdr
), (yyvsp
[(14) - (16)].name
));
3782 #line 975 "ldgram.y"
3783 { ldlex_expression (); }
3787 #line 977 "ldgram.y"
3790 lang_add_assignment (exp_assop ('=', ".", (yyvsp
[(3) - (3)].etree
)));
3795 #line 983 "ldgram.y"
3796 { ldlex_script (); ldfile_open_command_file((yyvsp
[(2) - (2)].name
)); }
3800 #line 985 "ldgram.y"
3801 { ldlex_popstate (); }
3805 #line 989 "ldgram.y"
3806 { sectype
= noload_section
; }
3810 #line 990 "ldgram.y"
3811 { sectype
= noalloc_section
; }
3815 #line 991 "ldgram.y"
3816 { sectype
= noalloc_section
; }
3820 #line 992 "ldgram.y"
3821 { sectype
= noalloc_section
; }
3825 #line 993 "ldgram.y"
3826 { sectype
= noalloc_section
; }
3830 #line 998 "ldgram.y"
3831 { sectype
= normal_section
; }
3835 #line 999 "ldgram.y"
3836 { sectype
= normal_section
; }
3840 #line 1003 "ldgram.y"
3841 { (yyval
.etree
) = (yyvsp
[(1) - (3)].etree
); }
3845 #line 1004 "ldgram.y"
3846 { (yyval
.etree
) = (etree_type
*)NULL
; }
3850 #line 1009 "ldgram.y"
3851 { (yyval
.etree
) = (yyvsp
[(3) - (6)].etree
); }
3855 #line 1011 "ldgram.y"
3856 { (yyval
.etree
) = (yyvsp
[(3) - (10)].etree
); }
3860 #line 1015 "ldgram.y"
3861 { (yyval
.etree
) = (yyvsp
[(1) - (2)].etree
); }
3865 #line 1016 "ldgram.y"
3866 { (yyval
.etree
) = (etree_type
*) NULL
; }
3870 #line 1021 "ldgram.y"
3871 { (yyval
.integer
) = 0; }
3875 #line 1023 "ldgram.y"
3876 { (yyval
.integer
) = 1; }
3880 #line 1028 "ldgram.y"
3881 { (yyval
.name
) = (yyvsp
[(2) - (2)].name
); }
3885 #line 1029 "ldgram.y"
3886 { (yyval
.name
) = DEFAULT_MEMORY_REGION
; }
3890 #line 1034 "ldgram.y"
3892 (yyval
.section_phdr
) = NULL
;
3897 #line 1038 "ldgram.y"
3899 struct lang_output_section_phdr_list
*n
;
3901 n
= ((struct lang_output_section_phdr_list
*)
3902 xmalloc (sizeof *n
));
3903 n
->name
= (yyvsp
[(3) - (3)].name
);
3905 n
->next
= (yyvsp
[(1) - (3)].section_phdr
);
3906 (yyval
.section_phdr
) = n
;
3911 #line 1054 "ldgram.y"
3914 lang_enter_overlay_section ((yyvsp
[(2) - (2)].name
));
3919 #line 1059 "ldgram.y"
3920 { ldlex_popstate (); ldlex_expression (); }
3924 #line 1061 "ldgram.y"
3927 lang_leave_overlay_section ((yyvsp
[(9) - (9)].fill
), (yyvsp
[(8) - (9)].section_phdr
));
3932 #line 1078 "ldgram.y"
3933 { ldlex_expression (); }
3937 #line 1079 "ldgram.y"
3938 { ldlex_popstate (); }
3942 #line 1081 "ldgram.y"
3944 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
,
3945 (yyvsp
[(4) - (6)].phdr
).flags
);
3950 #line 1089 "ldgram.y"
3952 (yyval
.etree
) = (yyvsp
[(1) - (1)].etree
);
3954 if ((yyvsp
[(1) - (1)].etree
)->type
.node_class
== etree_name
3955 && (yyvsp
[(1) - (1)].etree
)->type
.node_code
== NAME
)
3959 static const char * const phdr_types
[] =
3961 "PT_NULL", "PT_LOAD", "PT_DYNAMIC",
3962 "PT_INTERP", "PT_NOTE", "PT_SHLIB",
3966 s
= (yyvsp
[(1) - (1)].etree
)->name
.name
;
3968 i
< sizeof phdr_types
/ sizeof phdr_types
[0];
3970 if (strcmp (s
, phdr_types
[i
]) == 0)
3972 (yyval
.etree
) = exp_intop (i
);
3975 if (i
== sizeof phdr_types
/ sizeof phdr_types
[0])
3977 if (strcmp (s
, "PT_GNU_EH_FRAME") == 0)
3978 (yyval
.etree
) = exp_intop (0x6474e550);
3979 else if (strcmp (s
, "PT_GNU_STACK") == 0)
3980 (yyval
.etree
) = exp_intop (0x6474e551);
3984 %X%P:%S: unknown phdr type `%s' (try integer literal)\n"),
3986 (yyval
.etree
) = exp_intop (0);
3994 #line 1133 "ldgram.y"
3996 memset (&(yyval
.phdr
), 0, sizeof (struct phdr_info
));
4001 #line 1137 "ldgram.y"
4003 (yyval
.phdr
) = (yyvsp
[(3) - (3)].phdr
);
4004 if (strcmp ((yyvsp
[(1) - (3)].name
), "FILEHDR") == 0 && (yyvsp
[(2) - (3)].etree
) == NULL
)
4005 (yyval
.phdr
).filehdr
= TRUE
;
4006 else if (strcmp ((yyvsp
[(1) - (3)].name
), "PHDRS") == 0 && (yyvsp
[(2) - (3)].etree
) == NULL
)
4007 (yyval
.phdr
).phdrs
= TRUE
;
4008 else if (strcmp ((yyvsp
[(1) - (3)].name
), "FLAGS") == 0 && (yyvsp
[(2) - (3)].etree
) != NULL
)
4009 (yyval
.phdr
).flags
= (yyvsp
[(2) - (3)].etree
);
4011 einfo (_("%X%P:%S: PHDRS syntax error at `%s'\n"), (yyvsp
[(1) - (3)].name
));
4016 #line 1149 "ldgram.y"
4018 (yyval
.phdr
) = (yyvsp
[(5) - (5)].phdr
);
4019 (yyval
.phdr
).at
= (yyvsp
[(3) - (5)].etree
);
4024 #line 1157 "ldgram.y"
4026 (yyval
.etree
) = NULL
;
4031 #line 1161 "ldgram.y"
4033 (yyval
.etree
) = (yyvsp
[(2) - (3)].etree
);
4038 #line 1167 "ldgram.y"
4040 ldlex_version_file ();
4041 PUSH_ERROR (_("dynamic list"));
4046 #line 1172 "ldgram.y"
4054 #line 1189 "ldgram.y"
4056 lang_append_dynamic_list ((yyvsp
[(1) - (2)].versyms
));
4061 #line 1197 "ldgram.y"
4063 ldlex_version_file ();
4064 PUSH_ERROR (_("VERSION script"));
4069 #line 1202 "ldgram.y"
4077 #line 1211 "ldgram.y"
4079 ldlex_version_script ();
4084 #line 1215 "ldgram.y"
4091 #line 1227 "ldgram.y"
4093 lang_register_vers_node (NULL
, (yyvsp
[(2) - (4)].versnode
), NULL
);
4098 #line 1231 "ldgram.y"
4100 lang_register_vers_node ((yyvsp
[(1) - (5)].name
), (yyvsp
[(3) - (5)].versnode
), NULL
);
4105 #line 1235 "ldgram.y"
4107 lang_register_vers_node ((yyvsp
[(1) - (6)].name
), (yyvsp
[(3) - (6)].versnode
), (yyvsp
[(5) - (6)].deflist
));
4112 #line 1242 "ldgram.y"
4114 (yyval
.deflist
) = lang_add_vers_depend (NULL
, (yyvsp
[(1) - (1)].name
));
4119 #line 1246 "ldgram.y"
4121 (yyval
.deflist
) = lang_add_vers_depend ((yyvsp
[(1) - (2)].deflist
), (yyvsp
[(2) - (2)].name
));
4126 #line 1253 "ldgram.y"
4128 (yyval
.versnode
) = lang_new_vers_node (NULL
, NULL
);
4133 #line 1257 "ldgram.y"
4135 (yyval
.versnode
) = lang_new_vers_node ((yyvsp
[(1) - (2)].versyms
), NULL
);
4140 #line 1261 "ldgram.y"
4142 (yyval
.versnode
) = lang_new_vers_node ((yyvsp
[(3) - (4)].versyms
), NULL
);
4147 #line 1265 "ldgram.y"
4149 (yyval
.versnode
) = lang_new_vers_node (NULL
, (yyvsp
[(3) - (4)].versyms
));
4154 #line 1269 "ldgram.y"
4156 (yyval
.versnode
) = lang_new_vers_node ((yyvsp
[(3) - (8)].versyms
), (yyvsp
[(7) - (8)].versyms
));
4161 #line 1276 "ldgram.y"
4163 (yyval
.versyms
) = lang_new_vers_pattern (NULL
, (yyvsp
[(1) - (1)].name
), ldgram_vers_current_lang
, FALSE
);
4168 #line 1280 "ldgram.y"
4170 (yyval
.versyms
) = lang_new_vers_pattern (NULL
, (yyvsp
[(1) - (1)].name
), ldgram_vers_current_lang
, TRUE
);
4175 #line 1284 "ldgram.y"
4177 (yyval
.versyms
) = lang_new_vers_pattern ((yyvsp
[(1) - (3)].versyms
), (yyvsp
[(3) - (3)].name
), ldgram_vers_current_lang
, FALSE
);
4182 #line 1288 "ldgram.y"
4184 (yyval
.versyms
) = lang_new_vers_pattern ((yyvsp
[(1) - (3)].versyms
), (yyvsp
[(3) - (3)].name
), ldgram_vers_current_lang
, TRUE
);
4189 #line 1292 "ldgram.y"
4191 (yyval
.name
) = ldgram_vers_current_lang
;
4192 ldgram_vers_current_lang
= (yyvsp
[(4) - (5)].name
);
4197 #line 1297 "ldgram.y"
4199 struct bfd_elf_version_expr
*pat
;
4200 for (pat
= (yyvsp
[(7) - (9)].versyms
); pat
->next
!= NULL
; pat
= pat
->next
);
4201 pat
->next
= (yyvsp
[(1) - (9)].versyms
);
4202 (yyval
.versyms
) = (yyvsp
[(7) - (9)].versyms
);
4203 ldgram_vers_current_lang
= (yyvsp
[(6) - (9)].name
);
4208 #line 1305 "ldgram.y"
4210 (yyval
.name
) = ldgram_vers_current_lang
;
4211 ldgram_vers_current_lang
= (yyvsp
[(2) - (3)].name
);
4216 #line 1310 "ldgram.y"
4218 (yyval
.versyms
) = (yyvsp
[(5) - (7)].versyms
);
4219 ldgram_vers_current_lang
= (yyvsp
[(4) - (7)].name
);
4224 #line 1315 "ldgram.y"
4226 (yyval
.versyms
) = lang_new_vers_pattern (NULL
, "global", ldgram_vers_current_lang
, FALSE
);
4231 #line 1319 "ldgram.y"
4233 (yyval
.versyms
) = lang_new_vers_pattern ((yyvsp
[(1) - (3)].versyms
), "global", ldgram_vers_current_lang
, FALSE
);
4238 #line 1323 "ldgram.y"
4240 (yyval
.versyms
) = lang_new_vers_pattern (NULL
, "local", ldgram_vers_current_lang
, FALSE
);
4245 #line 1327 "ldgram.y"
4247 (yyval
.versyms
) = lang_new_vers_pattern ((yyvsp
[(1) - (3)].versyms
), "local", ldgram_vers_current_lang
, FALSE
);
4252 #line 1331 "ldgram.y"
4254 (yyval
.versyms
) = lang_new_vers_pattern (NULL
, "extern", ldgram_vers_current_lang
, FALSE
);
4259 #line 1335 "ldgram.y"
4261 (yyval
.versyms
) = lang_new_vers_pattern ((yyvsp
[(1) - (3)].versyms
), "extern", ldgram_vers_current_lang
, FALSE
);
4266 /* Line 1267 of yacc.c. */
4267 #line 4268 "ldgram.c"
4270 YY_SYMBOL_PRINT ("-> $$ =", yyr1
[yyn
], &yyval
, &yyloc
);
4274 YY_STACK_PRINT (yyss
, yyssp
);
4279 /* Now `shift' the result of the reduction. Determine what state
4280 that goes to, based on the state we popped back to and the rule
4281 number reduced by. */
4285 yystate
= yypgoto
[yyn
- YYNTOKENS
] + *yyssp
;
4286 if (0 <= yystate
&& yystate
<= YYLAST
&& yycheck
[yystate
] == *yyssp
)
4287 yystate
= yytable
[yystate
];
4289 yystate
= yydefgoto
[yyn
- YYNTOKENS
];
4294 /*------------------------------------.
4295 | yyerrlab -- here on detecting error |
4296 `------------------------------------*/
4298 /* If not already recovering from an error, report this error. */
4302 #if ! YYERROR_VERBOSE
4303 yyerror (YY_("syntax error"));
4306 YYSIZE_T yysize
= yysyntax_error (0, yystate
, yychar
);
4307 if (yymsg_alloc
< yysize
&& yymsg_alloc
< YYSTACK_ALLOC_MAXIMUM
)
4309 YYSIZE_T yyalloc
= 2 * yysize
;
4310 if (! (yysize
<= yyalloc
&& yyalloc
<= YYSTACK_ALLOC_MAXIMUM
))
4311 yyalloc
= YYSTACK_ALLOC_MAXIMUM
;
4312 if (yymsg
!= yymsgbuf
)
4313 YYSTACK_FREE (yymsg
);
4314 yymsg
= (char *) YYSTACK_ALLOC (yyalloc
);
4316 yymsg_alloc
= yyalloc
;
4320 yymsg_alloc
= sizeof yymsgbuf
;
4324 if (0 < yysize
&& yysize
<= yymsg_alloc
)
4326 (void) yysyntax_error (yymsg
, yystate
, yychar
);
4331 yyerror (YY_("syntax error"));
4333 goto yyexhaustedlab
;
4341 if (yyerrstatus
== 3)
4343 /* If just tried and failed to reuse look-ahead token after an
4344 error, discard it. */
4346 if (yychar
<= YYEOF
)
4348 /* Return failure if at end of input. */
4349 if (yychar
== YYEOF
)
4354 yydestruct ("Error: discarding",
4360 /* Else will try to reuse look-ahead token after shifting the error
4365 /*---------------------------------------------------.
4366 | yyerrorlab -- error raised explicitly by YYERROR. |
4367 `---------------------------------------------------*/
4370 /* Pacify compilers like GCC when the user code never invokes
4371 YYERROR and the label yyerrorlab therefore never appears in user
4373 if (/*CONSTCOND*/ 0)
4376 /* Do not reclaim the symbols of the rule which action triggered
4380 YY_STACK_PRINT (yyss
, yyssp
);
4385 /*-------------------------------------------------------------.
4386 | yyerrlab1 -- common code for both syntax error and YYERROR. |
4387 `-------------------------------------------------------------*/
4389 yyerrstatus
= 3; /* Each real token shifted decrements this. */
4393 yyn
= yypact
[yystate
];
4394 if (yyn
!= YYPACT_NINF
)
4397 if (0 <= yyn
&& yyn
<= YYLAST
&& yycheck
[yyn
] == YYTERROR
)
4405 /* Pop the current state because it cannot handle the error token. */
4410 yydestruct ("Error: popping",
4411 yystos
[yystate
], yyvsp
);
4414 YY_STACK_PRINT (yyss
, yyssp
);
4423 /* Shift the error token. */
4424 YY_SYMBOL_PRINT ("Shifting", yystos
[yyn
], yyvsp
, yylsp
);
4430 /*-------------------------------------.
4431 | yyacceptlab -- YYACCEPT comes here. |
4432 `-------------------------------------*/
4437 /*-----------------------------------.
4438 | yyabortlab -- YYABORT comes here. |
4439 `-----------------------------------*/
4445 /*-------------------------------------------------.
4446 | yyexhaustedlab -- memory exhaustion comes here. |
4447 `-------------------------------------------------*/
4449 yyerror (YY_("memory exhausted"));
4455 if (yychar
!= YYEOF
&& yychar
!= YYEMPTY
)
4456 yydestruct ("Cleanup: discarding lookahead",
4458 /* Do not reclaim the symbols of the rule which action triggered
4459 this YYABORT or YYACCEPT. */
4461 YY_STACK_PRINT (yyss
, yyssp
);
4462 while (yyssp
!= yyss
)
4464 yydestruct ("Cleanup: popping",
4465 yystos
[*yyssp
], yyvsp
);
4470 YYSTACK_FREE (yyss
);
4473 if (yymsg
!= yymsgbuf
)
4474 YYSTACK_FREE (yymsg
);
4476 /* Make sure YYID is used. */
4477 return YYID (yyresult
);
4481 #line 1345 "ldgram.y"
4487 if (ldfile_assumed_script
)
4488 einfo (_("%P:%s: file format not recognized; treating as linker script\n"),
4489 ldfile_input_filename
);
4490 if (error_index
> 0 && error_index
< ERROR_NAME_MAX
)
4491 einfo ("%P%F:%S: %s in %s\n", arg
, error_names
[error_index
-1]);
4493 einfo ("%P%F:%S: %s\n", arg
);