1 /* A Bison parser, made by GNU Bison 2.1. */
3 /* Skeleton parser for Yacc-like parsing with Bison,
4 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 Boston, MA 02110-1301, USA. */
21 /* As a special exception, when this file is copied by Bison into a
22 Bison output file, you may use that output file without restriction.
23 This special exception was added by the Free Software Foundation
24 in version 1.24 of Bison. */
26 /* Written by Richard Stallman by simplifying the original so called
27 ``semantic'' parser. */
29 /* All symbols defined below should begin with yy or YY, to avoid
30 infringing on user name space. This should be done even for local
31 variables, as they might otherwise be expanded by user macros.
32 There are some unavoidable exceptions within include files to
33 define necessary library symbols; they are noted "INFRINGES ON
34 USER NAME SPACE" below. */
36 /* Identify Bison output. */
40 #define YYBISON_VERSION "2.1"
43 #define YYSKELETON_NAME "yacc.c"
48 /* Using locations. */
49 #define YYLSP_NEEDED 0
56 /* Put the tokens into the symbol table, so that GDB and other debuggers
90 DATA_SEGMENT_ALIGN
= 289,
91 DATA_SEGMENT_RELRO_END
= 290,
92 DATA_SEGMENT_END
= 291,
94 SORT_BY_ALIGNMENT
= 293,
97 FORCE_COMMON_ALLOCATION
= 296,
99 INHIBIT_COMMON_ALLOCATION
= 298,
131 CREATE_OBJECT_SYMBOLS
= 330,
140 PROVIDE_HIDDEN
= 339,
160 INPUT_MRI_SCRIPT
= 359,
166 VERS_IDENTIFIER
= 365,
170 INPUT_VERSION_SCRIPT
= 369,
177 INPUT_DYNAMIC_LIST
= 376
212 #define DATA_SEGMENT_ALIGN 289
213 #define DATA_SEGMENT_RELRO_END 290
214 #define DATA_SEGMENT_END 291
215 #define SORT_BY_NAME 292
216 #define SORT_BY_ALIGNMENT 293
217 #define SIZEOF_HEADERS 294
218 #define OUTPUT_FORMAT 295
219 #define FORCE_COMMON_ALLOCATION 296
220 #define OUTPUT_ARCH 297
221 #define INHIBIT_COMMON_ALLOCATION 298
222 #define SEGMENT_START 299
232 #define SEARCH_DIR 309
243 #define NACL_MASK 320
249 #define NOCROSSREFS 326
253 #define CREATE_OBJECT_SYMBOLS 330
257 #define CONSTRUCTORS 334
262 #define PROVIDE_HIDDEN 339
263 #define AS_NEEDED 340
276 #define DEFSYMEND 353
281 #define INPUT_SCRIPT 358
282 #define INPUT_MRI_SCRIPT 359
283 #define INPUT_DEFSYM 360
288 #define VERS_IDENTIFIER 365
292 #define INPUT_VERSION_SCRIPT 369
294 #define ONLY_IF_RO 371
295 #define ONLY_IF_RW 372
297 #define EXCLUDE_FILE 374
299 #define INPUT_DYNAMIC_LIST 376
304 /* Copy the first part of user declarations. */
311 #define DONTDECLARE_MALLOC
332 static enum section_type sectype
;
333 static lang_memory_region_type
*region
;
335 FILE *saved_script_handle
= NULL
;
336 bfd_boolean force_make_executable
= FALSE
;
338 bfd_boolean ldgram_in_script
= FALSE
;
339 bfd_boolean ldgram_had_equals
= FALSE
;
340 bfd_boolean ldgram_had_keep
= FALSE
;
341 char *ldgram_vers_current_lang
= NULL
;
343 #define ERROR_NAME_MAX 20
344 static char *error_names
[ERROR_NAME_MAX
];
345 static int error_index
;
346 #define PUSH_ERROR(x) if (error_index < ERROR_NAME_MAX) error_names[error_index] = x; error_index++;
347 #define POP_ERROR() error_index--;
350 /* Enabling traces. */
355 /* Enabling verbose error messages. */
356 #ifdef YYERROR_VERBOSE
357 # undef YYERROR_VERBOSE
358 # define YYERROR_VERBOSE 1
360 # define YYERROR_VERBOSE 0
363 /* Enabling the token table. */
364 #ifndef YYTOKEN_TABLE
365 # define YYTOKEN_TABLE 0
368 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
370 typedef union YYSTYPE
{
380 struct wildcard_spec wildcard
;
381 struct wildcard_list
*wildcard_list
;
382 struct name_list
*name_list
;
384 union etree_union
*etree
;
389 union etree_union
*at
;
390 union etree_union
*flags
;
392 struct lang_nocrossref
*nocrossref
;
393 struct lang_output_section_phdr_list
*section_phdr
;
394 struct bfd_elf_version_deps
*deflist
;
395 struct bfd_elf_version_expr
*versyms
;
396 struct bfd_elf_version_tree
*versnode
;
398 /* Line 196 of yacc.c. */
400 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
401 # define YYSTYPE_IS_DECLARED 1
402 # define YYSTYPE_IS_TRIVIAL 1
407 /* Copy the second part of user declarations. */
410 /* Line 219 of yacc.c. */
413 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
414 # define YYSIZE_T __SIZE_TYPE__
416 #if ! defined (YYSIZE_T) && defined (size_t)
417 # define YYSIZE_T size_t
419 #if ! defined (YYSIZE_T) && (defined (__STDC__) || defined (__cplusplus))
420 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
421 # define YYSIZE_T size_t
423 #if ! defined (YYSIZE_T)
424 # define YYSIZE_T unsigned int
430 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
431 # define YY_(msgid) dgettext ("bison-runtime", msgid)
435 # define YY_(msgid) msgid
439 #if ! defined (yyoverflow) || YYERROR_VERBOSE
441 /* The parser invokes alloca or malloc; define the necessary symbols. */
443 # ifdef YYSTACK_USE_ALLOCA
444 # if YYSTACK_USE_ALLOCA
446 # define YYSTACK_ALLOC __builtin_alloca
448 # define YYSTACK_ALLOC alloca
449 # if defined (__STDC__) || defined (__cplusplus)
450 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
451 # define YYINCLUDED_STDLIB_H
457 # ifdef YYSTACK_ALLOC
458 /* Pacify GCC's `empty if-body' warning. */
459 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
460 # ifndef YYSTACK_ALLOC_MAXIMUM
461 /* The OS might guarantee only one guard page at the bottom of the stack,
462 and a page size can be as small as 4096 bytes. So we cannot safely
463 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
464 to allow for a few compiler-allocated temporary stack slots. */
465 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2005 */
468 # define YYSTACK_ALLOC YYMALLOC
469 # define YYSTACK_FREE YYFREE
470 # ifndef YYSTACK_ALLOC_MAXIMUM
471 # define YYSTACK_ALLOC_MAXIMUM ((YYSIZE_T) -1)
477 # define YYMALLOC malloc
478 # if (! defined (malloc) && ! defined (YYINCLUDED_STDLIB_H) \
479 && (defined (__STDC__) || defined (__cplusplus)))
480 void *malloc (YYSIZE_T
); /* INFRINGES ON USER NAME SPACE */
485 # if (! defined (free) && ! defined (YYINCLUDED_STDLIB_H) \
486 && (defined (__STDC__) || defined (__cplusplus)))
487 void free (void *); /* INFRINGES ON USER NAME SPACE */
494 #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
497 #if (! defined (yyoverflow) \
498 && (! defined (__cplusplus) \
499 || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
501 /* A type that is properly aligned for any stack member. */
508 /* The size of the maximum gap between one aligned stack and the next. */
509 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
511 /* The size of an array large to enough to hold all stacks, each with
513 # define YYSTACK_BYTES(N) \
514 ((N) * (sizeof (short int) + sizeof (YYSTYPE)) \
515 + YYSTACK_GAP_MAXIMUM)
517 /* Copy COUNT objects from FROM to TO. The source and destination do
520 # if defined (__GNUC__) && 1 < __GNUC__
521 # define YYCOPY(To, From, Count) \
522 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
524 # define YYCOPY(To, From, Count) \
528 for (yyi = 0; yyi < (Count); yyi++) \
529 (To)[yyi] = (From)[yyi]; \
535 /* Relocate STACK from its old location to the new one. The
536 local variables YYSIZE and YYSTACKSIZE give the old and new number of
537 elements in the stack, and YYPTR gives the new location of the
538 stack. Advance YYPTR to a properly aligned location for the next
540 # define YYSTACK_RELOCATE(Stack) \
543 YYSIZE_T yynewbytes; \
544 YYCOPY (&yyptr->Stack, Stack, yysize); \
545 Stack = &yyptr->Stack; \
546 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
547 yyptr += yynewbytes / sizeof (*yyptr); \
553 #if defined (__STDC__) || defined (__cplusplus)
554 typedef signed char yysigned_char
;
556 typedef short int yysigned_char
;
559 /* YYFINAL -- State number of the termination state. */
561 /* YYLAST -- Last index in YYTABLE. */
564 /* YYNTOKENS -- Number of terminals. */
565 #define YYNTOKENS 145
566 /* YYNNTS -- Number of nonterminals. */
568 /* YYNRULES -- Number of rules. */
570 /* YYNRULES -- Number of states. */
571 #define YYNSTATES 745
573 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
575 #define YYMAXUTOK 376
577 #define YYTRANSLATE(YYX) \
578 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
580 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
581 static const unsigned char yytranslate
[] =
583 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
584 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
585 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
586 2, 2, 2, 143, 2, 2, 2, 34, 21, 2,
587 37, 140, 32, 30, 138, 31, 2, 33, 2, 2,
588 2, 2, 2, 2, 2, 2, 2, 2, 16, 139,
589 24, 6, 25, 15, 2, 2, 2, 2, 2, 2,
590 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
591 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
592 2, 141, 2, 142, 20, 2, 2, 2, 2, 2,
593 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
594 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
595 2, 2, 2, 53, 19, 54, 144, 2, 2, 2,
596 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
597 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
598 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
599 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
600 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
601 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
602 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
603 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
604 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
605 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
606 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
607 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
608 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
609 5, 7, 8, 9, 10, 11, 12, 13, 14, 17,
610 18, 22, 23, 26, 27, 28, 29, 35, 36, 38,
611 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
612 49, 50, 51, 52, 55, 56, 57, 58, 59, 60,
613 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
614 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
615 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
616 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
617 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
618 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
619 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
620 131, 132, 133, 134, 135, 136, 137
624 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
626 static const unsigned short int yyprhs
[] =
628 0, 0, 3, 6, 9, 12, 15, 18, 20, 21,
629 26, 27, 30, 34, 35, 38, 43, 45, 47, 50,
630 52, 57, 62, 66, 69, 74, 78, 83, 88, 93,
631 98, 103, 106, 109, 112, 117, 122, 125, 128, 131,
632 134, 135, 141, 144, 145, 149, 152, 153, 155, 159,
633 161, 165, 166, 168, 172, 173, 176, 178, 181, 185,
634 186, 189, 192, 193, 195, 197, 199, 201, 203, 205,
635 207, 209, 211, 213, 218, 223, 228, 233, 242, 247,
636 249, 251, 256, 257, 263, 268, 269, 275, 280, 285,
637 287, 291, 294, 296, 300, 303, 304, 310, 311, 319,
638 320, 327, 332, 335, 338, 339, 344, 347, 348, 356,
639 358, 360, 362, 364, 370, 375, 380, 388, 396, 404,
640 412, 421, 424, 426, 430, 432, 434, 438, 443, 445,
641 446, 452, 455, 457, 459, 461, 466, 468, 473, 478,
642 479, 488, 491, 493, 494, 496, 498, 500, 502, 504,
643 506, 508, 511, 512, 514, 516, 518, 520, 522, 524,
644 526, 528, 530, 532, 536, 540, 547, 554, 556, 557,
645 563, 566, 570, 571, 572, 580, 584, 588, 589, 593,
646 595, 598, 600, 603, 608, 613, 617, 621, 623, 628,
647 632, 633, 635, 637, 638, 641, 645, 646, 649, 652,
648 656, 661, 664, 667, 670, 674, 678, 682, 686, 690,
649 694, 698, 702, 706, 710, 714, 718, 722, 726, 730,
650 734, 740, 744, 748, 753, 755, 757, 762, 767, 772,
651 777, 782, 787, 792, 799, 806, 813, 818, 825, 830,
652 832, 839, 846, 851, 856, 863, 868, 873, 877, 878,
653 883, 884, 889, 890, 895, 896, 898, 900, 902, 903,
654 904, 905, 906, 907, 908, 928, 929, 930, 931, 932,
655 933, 952, 953, 954, 962, 964, 966, 968, 970, 972,
656 976, 977, 980, 984, 987, 994, 1005, 1008, 1010, 1011,
657 1013, 1016, 1017, 1018, 1022, 1023, 1024, 1025, 1026, 1038,
658 1043, 1044, 1047, 1048, 1049, 1056, 1058, 1059, 1063, 1069,
659 1070, 1074, 1075, 1078, 1080, 1083, 1088, 1091, 1092, 1095,
660 1096, 1102, 1104, 1107, 1112, 1118, 1125, 1127, 1130, 1131,
661 1134, 1139, 1144, 1153, 1155, 1157, 1161, 1165, 1166, 1176,
662 1177, 1185, 1187, 1191, 1193, 1197, 1199, 1203, 1204
665 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
666 static const short int yyrhs
[] =
668 146, 0, -1, 119, 162, -1, 120, 150, -1, 130,
669 255, -1, 137, 250, -1, 121, 148, -1, 4, -1,
670 -1, 149, 4, 6, 212, -1, -1, 151, 152, -1,
671 152, 153, 107, -1, -1, 102, 212, -1, 102, 212,
672 138, 212, -1, 4, -1, 103, -1, 109, 155, -1,
673 108, -1, 113, 4, 6, 212, -1, 113, 4, 138,
674 212, -1, 113, 4, 212, -1, 112, 4, -1, 104,
675 4, 138, 212, -1, 104, 4, 212, -1, 104, 4,
676 6, 212, -1, 38, 4, 6, 212, -1, 38, 4,
677 138, 212, -1, 96, 4, 6, 212, -1, 96, 4,
678 138, 212, -1, 105, 157, -1, 106, 156, -1, 110,
679 4, -1, 116, 4, 138, 4, -1, 116, 4, 138,
680 3, -1, 115, 212, -1, 117, 3, -1, 122, 158,
681 -1, 123, 159, -1, -1, 61, 147, 154, 152, 36,
682 -1, 124, 4, -1, -1, 155, 138, 4, -1, 155,
683 4, -1, -1, 4, -1, 156, 138, 4, -1, 4,
684 -1, 157, 138, 4, -1, -1, 4, -1, 158, 138,
685 4, -1, -1, 160, 161, -1, 4, -1, 161, 4,
686 -1, 161, 138, 4, -1, -1, 163, 164, -1, 164,
687 165, -1, -1, 194, -1, 172, -1, 242, -1, 203,
688 -1, 204, -1, 206, -1, 208, -1, 174, -1, 257,
689 -1, 139, -1, 69, 37, 4, 140, -1, 70, 37,
690 147, 140, -1, 94, 37, 147, 140, -1, 56, 37,
691 4, 140, -1, 56, 37, 4, 138, 4, 138, 4,
692 140, -1, 58, 37, 4, 140, -1, 57, -1, 59,
693 -1, 92, 37, 168, 140, -1, -1, 93, 166, 37,
694 168, 140, -1, 71, 37, 147, 140, -1, -1, 61,
695 147, 167, 164, 36, -1, 87, 37, 209, 140, -1,
696 123, 37, 159, 140, -1, 4, -1, 168, 138, 4,
697 -1, 168, 4, -1, 5, -1, 168, 138, 5, -1,
698 168, 5, -1, -1, 101, 37, 169, 168, 140, -1,
699 -1, 168, 138, 101, 37, 170, 168, 140, -1, -1,
700 168, 101, 37, 171, 168, 140, -1, 46, 53, 173,
701 54, -1, 173, 218, -1, 173, 174, -1, -1, 72,
702 37, 4, 140, -1, 192, 191, -1, -1, 111, 175,
703 37, 212, 138, 4, 140, -1, 4, -1, 32, -1,
704 15, -1, 176, -1, 135, 37, 178, 140, 176, -1,
705 51, 37, 176, 140, -1, 52, 37, 176, 140, -1,
706 51, 37, 52, 37, 176, 140, 140, -1, 51, 37,
707 51, 37, 176, 140, 140, -1, 52, 37, 51, 37,
708 176, 140, 140, -1, 52, 37, 52, 37, 176, 140,
709 140, -1, 51, 37, 135, 37, 178, 140, 176, 140,
710 -1, 178, 176, -1, 176, -1, 179, 193, 177, -1,
711 177, -1, 4, -1, 141, 179, 142, -1, 177, 37,
712 179, 140, -1, 180, -1, -1, 131, 37, 182, 180,
713 140, -1, 192, 191, -1, 91, -1, 139, -1, 95,
714 -1, 51, 37, 95, 140, -1, 181, -1, 187, 37,
715 210, 140, -1, 89, 37, 188, 140, -1, -1, 111,
716 184, 37, 212, 138, 4, 140, 191, -1, 185, 183,
717 -1, 183, -1, -1, 185, -1, 41, -1, 42, -1,
718 43, -1, 44, -1, 45, -1, 210, -1, 6, 188,
719 -1, -1, 14, -1, 13, -1, 12, -1, 11, -1,
720 10, -1, 9, -1, 8, -1, 7, -1, 139, -1,
721 138, -1, 4, 6, 210, -1, 4, 190, 210, -1,
722 99, 37, 4, 6, 210, 140, -1, 100, 37, 4,
723 6, 210, 140, -1, 138, -1, -1, 62, 53, 196,
724 195, 54, -1, 195, 196, -1, 195, 138, 196, -1,
725 -1, -1, 4, 197, 200, 16, 198, 193, 199, -1,
726 88, 6, 210, -1, 90, 6, 210, -1, -1, 37,
727 201, 140, -1, 202, -1, 201, 202, -1, 4, -1,
728 143, 4, -1, 82, 37, 147, 140, -1, 83, 37,
729 205, 140, -1, 83, 37, 140, -1, 205, 193, 147,
730 -1, 147, -1, 84, 37, 207, 140, -1, 207, 193,
731 147, -1, -1, 85, -1, 86, -1, -1, 4, 209,
732 -1, 4, 138, 209, -1, -1, 211, 212, -1, 31,
733 212, -1, 37, 212, 140, -1, 73, 37, 212, 140,
734 -1, 143, 212, -1, 30, 212, -1, 144, 212, -1,
735 212, 32, 212, -1, 212, 33, 212, -1, 212, 34,
736 212, -1, 212, 30, 212, -1, 212, 31, 212, -1,
737 212, 29, 212, -1, 212, 28, 212, -1, 212, 23,
738 212, -1, 212, 22, 212, -1, 212, 27, 212, -1,
739 212, 26, 212, -1, 212, 24, 212, -1, 212, 25,
740 212, -1, 212, 21, 212, -1, 212, 20, 212, -1,
741 212, 19, 212, -1, 212, 15, 212, 16, 212, -1,
742 212, 18, 212, -1, 212, 17, 212, -1, 68, 37,
743 4, 140, -1, 3, -1, 55, -1, 75, 37, 4,
744 140, -1, 74, 37, 4, 140, -1, 76, 37, 4,
745 140, -1, 77, 37, 4, 140, -1, 136, 37, 4,
746 140, -1, 105, 37, 212, 140, -1, 38, 37, 212,
747 140, -1, 38, 37, 212, 138, 212, 140, -1, 48,
748 37, 212, 138, 212, 140, -1, 49, 37, 212, 138,
749 212, 140, -1, 50, 37, 212, 140, -1, 60, 37,
750 4, 138, 212, 140, -1, 39, 37, 212, 140, -1,
751 4, -1, 78, 37, 212, 138, 212, 140, -1, 79,
752 37, 212, 138, 212, 140, -1, 80, 37, 212, 140,
753 -1, 81, 37, 212, 140, -1, 111, 37, 212, 138,
754 4, 140, -1, 88, 37, 4, 140, -1, 90, 37,
755 4, 140, -1, 97, 25, 4, -1, -1, 97, 37,
756 212, 140, -1, -1, 38, 37, 212, 140, -1, -1,
757 98, 37, 212, 140, -1, -1, 132, -1, 133, -1,
758 134, -1, -1, -1, -1, -1, -1, -1, 4, 219,
759 233, 214, 215, 216, 220, 217, 53, 221, 186, 54,
760 222, 236, 213, 237, 189, 223, 193, -1, -1, -1,
761 -1, -1, -1, 67, 224, 234, 235, 214, 216, 225,
762 53, 226, 238, 54, 227, 236, 213, 237, 189, 228,
763 193, -1, -1, -1, 93, 229, 233, 230, 53, 173,
764 54, -1, 63, -1, 64, -1, 65, -1, 66, -1,
765 67, -1, 37, 231, 140, -1, -1, 37, 140, -1,
766 212, 232, 16, -1, 232, 16, -1, 40, 37, 212,
767 140, 232, 16, -1, 40, 37, 212, 140, 39, 37,
768 212, 140, 232, 16, -1, 212, 16, -1, 16, -1,
769 -1, 87, -1, 25, 4, -1, -1, -1, 237, 16,
770 4, -1, -1, -1, -1, -1, 238, 4, 239, 53,
771 186, 54, 240, 237, 189, 241, 193, -1, 47, 53,
772 243, 54, -1, -1, 243, 244, -1, -1, -1, 4,
773 245, 247, 248, 246, 139, -1, 212, -1, -1, 4,
774 249, 248, -1, 97, 37, 212, 140, 248, -1, -1,
775 37, 212, 140, -1, -1, 251, 252, -1, 253, -1,
776 252, 253, -1, 53, 254, 54, 139, -1, 263, 139,
777 -1, -1, 256, 259, -1, -1, 258, 129, 53, 259,
778 54, -1, 260, -1, 259, 260, -1, 53, 262, 54,
779 139, -1, 125, 53, 262, 54, 139, -1, 125, 53,
780 262, 54, 261, 139, -1, 125, -1, 261, 125, -1,
781 -1, 263, 139, -1, 127, 16, 263, 139, -1, 128,
782 16, 263, 139, -1, 127, 16, 263, 139, 128, 16,
783 263, 139, -1, 126, -1, 4, -1, 263, 139, 126,
784 -1, 263, 139, 4, -1, -1, 263, 139, 123, 4,
785 53, 264, 263, 266, 54, -1, -1, 123, 4, 53,
786 265, 263, 266, 54, -1, 127, -1, 263, 139, 127,
787 -1, 128, -1, 263, 139, 128, -1, 123, -1, 263,
788 139, 123, -1, -1, 139, -1
791 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
792 static const unsigned short int yyrline
[] =
794 0, 164, 164, 165, 166, 167, 168, 172, 176, 176,
795 186, 186, 199, 200, 204, 205, 206, 209, 212, 213,
796 214, 216, 218, 220, 222, 224, 226, 228, 230, 232,
797 234, 236, 237, 238, 240, 242, 244, 246, 248, 249,
798 251, 250, 254, 256, 260, 261, 262, 266, 268, 272,
799 274, 279, 280, 281, 286, 286, 291, 293, 295, 300,
800 300, 306, 307, 312, 313, 314, 315, 316, 317, 318,
801 319, 320, 321, 322, 324, 326, 328, 331, 333, 335,
802 337, 339, 341, 340, 344, 347, 346, 350, 354, 358,
803 361, 364, 367, 370, 373, 377, 376, 381, 380, 385,
804 384, 391, 395, 396, 397, 401, 403, 404, 404, 412,
805 416, 420, 427, 433, 439, 445, 451, 457, 463, 469,
806 475, 484, 493, 504, 513, 524, 532, 536, 543, 545,
807 544, 551, 552, 556, 557, 562, 567, 568, 573, 577,
808 577, 583, 584, 587, 589, 593, 595, 597, 599, 601,
809 606, 613, 615, 619, 621, 623, 625, 627, 629, 631,
810 633, 638, 638, 643, 647, 655, 659, 667, 667, 671,
811 675, 676, 677, 682, 681, 689, 697, 705, 706, 710,
812 711, 715, 717, 722, 727, 728, 733, 735, 741, 743,
813 745, 749, 751, 757, 760, 769, 780, 780, 786, 788,
814 790, 792, 794, 796, 799, 801, 803, 805, 807, 809,
815 811, 813, 815, 817, 819, 821, 823, 825, 827, 829,
816 831, 833, 835, 837, 839, 841, 844, 846, 848, 850,
817 852, 854, 856, 858, 860, 862, 864, 866, 875, 877,
818 879, 881, 883, 885, 887, 889, 891, 897, 898, 902,
819 903, 907, 908, 912, 913, 917, 918, 919, 920, 923,
820 927, 930, 936, 938, 923, 945, 947, 949, 954, 956,
821 944, 966, 968, 966, 976, 977, 978, 979, 980, 984,
822 985, 986, 990, 991, 996, 997, 1002, 1003, 1008, 1009,
823 1014, 1016, 1021, 1024, 1037, 1041, 1046, 1048, 1039, 1056,
824 1059, 1061, 1065, 1066, 1065, 1075, 1120, 1123, 1135, 1144,
825 1147, 1154, 1154, 1166, 1167, 1171, 1175, 1184, 1184, 1198,
826 1198, 1208, 1209, 1213, 1217, 1221, 1228, 1232, 1240, 1243,
827 1247, 1251, 1255, 1262, 1266, 1270, 1274, 1279, 1278, 1292,
828 1291, 1301, 1305, 1309, 1313, 1317, 1321, 1327, 1329
832 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
833 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
834 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
835 static const char *const yytname
[] =
837 "$end", "error", "$undefined", "INT", "NAME", "LNAME", "'='", "OREQ",
838 "ANDEQ", "RSHIFTEQ", "LSHIFTEQ", "DIVEQ", "MULTEQ", "MINUSEQ", "PLUSEQ",
839 "'?'", "':'", "OROR", "ANDAND", "'|'", "'^'", "'&'", "NE", "EQ", "'<'",
840 "'>'", "GE", "LE", "RSHIFT", "LSHIFT", "'+'", "'-'", "'*'", "'/'", "'%'",
841 "UNARY", "END", "'('", "ALIGN_K", "BLOCK", "BIND", "QUAD", "SQUAD",
842 "LONG", "SHORT", "BYTE", "SECTIONS", "PHDRS", "DATA_SEGMENT_ALIGN",
843 "DATA_SEGMENT_RELRO_END", "DATA_SEGMENT_END", "SORT_BY_NAME",
844 "SORT_BY_ALIGNMENT", "'{'", "'}'", "SIZEOF_HEADERS", "OUTPUT_FORMAT",
845 "FORCE_COMMON_ALLOCATION", "OUTPUT_ARCH", "INHIBIT_COMMON_ALLOCATION",
846 "SEGMENT_START", "INCLUDE", "MEMORY", "NOLOAD", "DSECT", "COPY", "INFO",
847 "OVERLAY", "DEFINED", "TARGET_K", "SEARCH_DIR", "MAP", "ENTRY", "NEXT",
848 "SIZEOF", "ALIGNOF", "ADDR", "LOADADDR", "MAX_K", "MIN_K", "CEILP2",
849 "NACL_MASK", "STARTUP", "HLL", "SYSLIB", "FLOAT", "NOFLOAT",
850 "NOCROSSREFS", "ORIGIN", "FILL", "LENGTH", "CREATE_OBJECT_SYMBOLS",
851 "INPUT", "GROUP", "OUTPUT", "CONSTRUCTORS", "ALIGNMOD", "AT", "SUBALIGN",
852 "PROVIDE", "PROVIDE_HIDDEN", "AS_NEEDED", "CHIP", "LIST", "SECT",
853 "ABSOLUTE", "LOAD", "NEWLINE", "ENDWORD", "ORDER", "NAMEWORD",
854 "ASSERT_K", "FORMAT", "PUBLIC", "DEFSYMEND", "BASE", "ALIAS", "TRUNCATE",
855 "REL", "INPUT_SCRIPT", "INPUT_MRI_SCRIPT", "INPUT_DEFSYM", "CASE",
856 "EXTERN", "START", "VERS_TAG", "VERS_IDENTIFIER", "GLOBAL", "LOCAL",
857 "VERSIONK", "INPUT_VERSION_SCRIPT", "KEEP", "ONLY_IF_RO", "ONLY_IF_RW",
858 "SPECIAL", "EXCLUDE_FILE", "CONSTANT", "INPUT_DYNAMIC_LIST", "','",
859 "';'", "')'", "'['", "']'", "'!'", "'~'", "$accept", "file", "filename",
860 "defsym_expr", "@1", "mri_script_file", "@2", "mri_script_lines",
861 "mri_script_command", "@3", "ordernamelist", "mri_load_name_list",
862 "mri_abs_name_list", "casesymlist", "extern_name_list", "@4",
863 "extern_name_list_body", "script_file", "@5", "ifile_list", "ifile_p1",
864 "@6", "@7", "input_list", "@8", "@9", "@10", "sections",
865 "sec_or_group_p1", "statement_anywhere", "@11", "wildcard_name",
866 "wildcard_spec", "exclude_name_list", "file_NAME_list",
867 "input_section_spec_no_keep", "input_section_spec", "@12", "statement",
868 "@13", "statement_list", "statement_list_opt", "length", "fill_exp",
869 "fill_opt", "assign_op", "end", "assignment", "opt_comma", "memory",
870 "memory_spec_list", "memory_spec", "@14", "origin_spec", "length_spec",
871 "attributes_opt", "attributes_list", "attributes_string", "startup",
872 "high_level_library", "high_level_library_NAME_list",
873 "low_level_library", "low_level_library_NAME_list",
874 "floating_point_support", "nocrossref_list", "mustbe_exp", "@15", "exp",
875 "memspec_at_opt", "opt_at", "opt_align", "opt_subalign",
876 "sect_constraint", "section", "@16", "@17", "@18", "@19", "@20", "@21",
877 "@22", "@23", "@24", "@25", "@26", "@27", "type", "atype",
878 "opt_exp_with_type", "opt_exp_without_type", "opt_nocrossrefs",
879 "memspec_opt", "phdr_opt", "overlay_section", "@28", "@29", "@30",
880 "phdrs", "phdr_list", "phdr", "@31", "@32", "phdr_type",
881 "phdr_qualifiers", "phdr_val", "dynamic_list_file", "@33",
882 "dynamic_list_nodes", "dynamic_list_node", "dynamic_list_tag",
883 "version_script_file", "@34", "version", "@35", "vers_nodes",
884 "vers_node", "verdep", "vers_tag", "vers_defns", "@36", "@37",
890 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
892 static const unsigned short int yytoknum
[] =
894 0, 256, 257, 258, 259, 260, 61, 261, 262, 263,
895 264, 265, 266, 267, 268, 63, 58, 269, 270, 124,
896 94, 38, 271, 272, 60, 62, 273, 274, 275, 276,
897 43, 45, 42, 47, 37, 277, 278, 40, 279, 280,
898 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
899 291, 292, 293, 123, 125, 294, 295, 296, 297, 298,
900 299, 300, 301, 302, 303, 304, 305, 306, 307, 308,
901 309, 310, 311, 312, 313, 314, 315, 316, 317, 318,
902 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
903 329, 330, 331, 332, 333, 334, 335, 336, 337, 338,
904 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
905 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
906 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
907 369, 370, 371, 372, 373, 374, 375, 376, 44, 59,
912 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
913 static const unsigned short int yyr1
[] =
915 0, 145, 146, 146, 146, 146, 146, 147, 149, 148,
916 151, 150, 152, 152, 153, 153, 153, 153, 153, 153,
917 153, 153, 153, 153, 153, 153, 153, 153, 153, 153,
918 153, 153, 153, 153, 153, 153, 153, 153, 153, 153,
919 154, 153, 153, 153, 155, 155, 155, 156, 156, 157,
920 157, 158, 158, 158, 160, 159, 161, 161, 161, 163,
921 162, 164, 164, 165, 165, 165, 165, 165, 165, 165,
922 165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
923 165, 165, 166, 165, 165, 167, 165, 165, 165, 168,
924 168, 168, 168, 168, 168, 169, 168, 170, 168, 171,
925 168, 172, 173, 173, 173, 174, 174, 175, 174, 176,
926 176, 176, 177, 177, 177, 177, 177, 177, 177, 177,
927 177, 178, 178, 179, 179, 180, 180, 180, 181, 182,
928 181, 183, 183, 183, 183, 183, 183, 183, 183, 184,
929 183, 185, 185, 186, 186, 187, 187, 187, 187, 187,
930 188, 189, 189, 190, 190, 190, 190, 190, 190, 190,
931 190, 191, 191, 192, 192, 192, 192, 193, 193, 194,
932 195, 195, 195, 197, 196, 198, 199, 200, 200, 201,
933 201, 202, 202, 203, 204, 204, 205, 205, 206, 207,
934 207, 208, 208, 209, 209, 209, 211, 210, 212, 212,
935 212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
936 212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
937 212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
938 212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
939 212, 212, 212, 212, 212, 212, 212, 213, 213, 214,
940 214, 215, 215, 216, 216, 217, 217, 217, 217, 219,
941 220, 221, 222, 223, 218, 224, 225, 226, 227, 228,
942 218, 229, 230, 218, 231, 231, 231, 231, 231, 232,
943 232, 232, 233, 233, 233, 233, 234, 234, 235, 235,
944 236, 236, 237, 237, 238, 239, 240, 241, 238, 242,
945 243, 243, 245, 246, 244, 247, 248, 248, 248, 249,
946 249, 251, 250, 252, 252, 253, 254, 256, 255, 258,
947 257, 259, 259, 260, 260, 260, 261, 261, 262, 262,
948 262, 262, 262, 263, 263, 263, 263, 264, 263, 265,
949 263, 263, 263, 263, 263, 263, 263, 266, 266
952 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
953 static const unsigned char yyr2
[] =
955 0, 2, 2, 2, 2, 2, 2, 1, 0, 4,
956 0, 2, 3, 0, 2, 4, 1, 1, 2, 1,
957 4, 4, 3, 2, 4, 3, 4, 4, 4, 4,
958 4, 2, 2, 2, 4, 4, 2, 2, 2, 2,
959 0, 5, 2, 0, 3, 2, 0, 1, 3, 1,
960 3, 0, 1, 3, 0, 2, 1, 2, 3, 0,
961 2, 2, 0, 1, 1, 1, 1, 1, 1, 1,
962 1, 1, 1, 4, 4, 4, 4, 8, 4, 1,
963 1, 4, 0, 5, 4, 0, 5, 4, 4, 1,
964 3, 2, 1, 3, 2, 0, 5, 0, 7, 0,
965 6, 4, 2, 2, 0, 4, 2, 0, 7, 1,
966 1, 1, 1, 5, 4, 4, 7, 7, 7, 7,
967 8, 2, 1, 3, 1, 1, 3, 4, 1, 0,
968 5, 2, 1, 1, 1, 4, 1, 4, 4, 0,
969 8, 2, 1, 0, 1, 1, 1, 1, 1, 1,
970 1, 2, 0, 1, 1, 1, 1, 1, 1, 1,
971 1, 1, 1, 3, 3, 6, 6, 1, 0, 5,
972 2, 3, 0, 0, 7, 3, 3, 0, 3, 1,
973 2, 1, 2, 4, 4, 3, 3, 1, 4, 3,
974 0, 1, 1, 0, 2, 3, 0, 2, 2, 3,
975 4, 2, 2, 2, 3, 3, 3, 3, 3, 3,
976 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
977 5, 3, 3, 4, 1, 1, 4, 4, 4, 4,
978 4, 4, 4, 6, 6, 6, 4, 6, 4, 1,
979 6, 6, 4, 4, 6, 4, 4, 3, 0, 4,
980 0, 4, 0, 4, 0, 1, 1, 1, 0, 0,
981 0, 0, 0, 0, 19, 0, 0, 0, 0, 0,
982 18, 0, 0, 7, 1, 1, 1, 1, 1, 3,
983 0, 2, 3, 2, 6, 10, 2, 1, 0, 1,
984 2, 0, 0, 3, 0, 0, 0, 0, 11, 4,
985 0, 2, 0, 0, 6, 1, 0, 3, 5, 0,
986 3, 0, 2, 1, 2, 4, 2, 0, 2, 0,
987 5, 1, 2, 4, 5, 6, 1, 2, 0, 2,
988 4, 4, 8, 1, 1, 3, 3, 0, 9, 0,
989 7, 1, 3, 1, 3, 1, 3, 0, 1
992 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
993 STATE-NUM when YYTABLE doesn't specify something else to do. Zero
994 means the default is an error. */
995 static const unsigned short int yydefact
[] =
997 0, 59, 10, 8, 317, 311, 0, 2, 62, 3,
998 13, 6, 0, 4, 0, 5, 0, 1, 60, 11,
999 0, 328, 0, 318, 321, 0, 312, 313, 0, 0,
1000 0, 0, 79, 0, 80, 0, 0, 0, 0, 0,
1001 0, 0, 0, 0, 191, 192, 0, 0, 82, 0,
1002 0, 0, 107, 0, 72, 61, 64, 70, 0, 63,
1003 66, 67, 68, 69, 65, 71, 0, 16, 0, 0,
1004 0, 0, 17, 0, 0, 0, 19, 46, 0, 0,
1005 0, 0, 0, 0, 51, 54, 0, 0, 0, 334,
1006 345, 333, 341, 343, 0, 0, 328, 322, 341, 343,
1007 0, 0, 314, 196, 160, 159, 158, 157, 156, 155,
1008 154, 153, 196, 104, 300, 0, 0, 7, 85, 0,
1009 0, 0, 0, 0, 0, 0, 190, 193, 0, 0,
1010 0, 0, 0, 0, 54, 162, 161, 106, 0, 0,
1011 40, 0, 224, 239, 0, 0, 0, 0, 0, 0,
1012 0, 0, 225, 0, 0, 0, 0, 0, 0, 0,
1013 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1014 0, 14, 0, 49, 31, 47, 32, 18, 33, 23,
1015 0, 36, 0, 37, 52, 38, 39, 0, 42, 12,
1016 9, 0, 0, 0, 0, 329, 0, 0, 316, 163,
1017 0, 164, 0, 0, 0, 0, 62, 173, 172, 0,
1018 0, 0, 0, 0, 185, 187, 168, 168, 193, 0,
1019 89, 92, 0, 0, 0, 0, 0, 0, 0, 0,
1020 0, 0, 0, 13, 0, 0, 202, 198, 0, 0,
1021 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1022 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1023 201, 203, 0, 0, 0, 0, 0, 0, 0, 0,
1024 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1025 0, 0, 0, 0, 25, 0, 0, 45, 0, 0,
1026 0, 22, 0, 0, 56, 55, 339, 0, 0, 323,
1027 336, 346, 335, 342, 344, 0, 315, 197, 259, 101,
1028 265, 271, 103, 102, 302, 299, 301, 0, 76, 78,
1029 319, 177, 0, 73, 74, 84, 105, 183, 167, 184,
1030 0, 188, 0, 193, 194, 87, 95, 91, 94, 0,
1031 0, 81, 0, 75, 196, 196, 0, 88, 0, 27,
1032 28, 43, 29, 30, 199, 0, 0, 0, 0, 0,
1033 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1034 0, 0, 0, 0, 0, 0, 0, 222, 221, 219,
1035 218, 217, 212, 211, 215, 216, 214, 213, 210, 209,
1036 207, 208, 204, 205, 206, 15, 26, 24, 50, 48,
1037 44, 20, 21, 35, 34, 53, 57, 0, 0, 330,
1038 331, 0, 326, 324, 0, 280, 0, 280, 0, 0,
1039 86, 0, 0, 169, 0, 170, 186, 189, 195, 0,
1040 99, 90, 93, 0, 83, 0, 0, 0, 320, 41,
1041 0, 232, 238, 0, 0, 236, 0, 223, 200, 227,
1042 226, 228, 229, 0, 0, 242, 243, 245, 246, 231,
1043 0, 230, 0, 58, 347, 344, 337, 327, 325, 0,
1044 0, 280, 0, 250, 287, 0, 288, 272, 305, 306,
1045 0, 181, 0, 0, 179, 0, 171, 0, 0, 97,
1046 165, 166, 0, 0, 0, 0, 0, 0, 0, 0,
1047 220, 348, 0, 0, 0, 274, 275, 276, 277, 278,
1048 281, 0, 0, 0, 0, 283, 0, 252, 286, 289,
1049 250, 0, 309, 0, 303, 0, 182, 178, 180, 0,
1050 168, 96, 0, 0, 108, 233, 234, 235, 237, 240,
1051 241, 244, 340, 0, 347, 279, 0, 282, 0, 0,
1052 254, 254, 104, 0, 306, 0, 0, 77, 196, 0,
1053 100, 0, 332, 0, 280, 0, 0, 0, 260, 266,
1054 0, 0, 307, 0, 304, 175, 0, 174, 98, 338,
1055 0, 0, 249, 0, 0, 258, 0, 273, 310, 306,
1056 196, 0, 284, 251, 0, 255, 256, 257, 0, 267,
1057 308, 176, 0, 253, 261, 294, 280, 143, 0, 0,
1058 125, 111, 110, 145, 146, 147, 148, 149, 0, 0,
1059 0, 132, 134, 139, 0, 0, 133, 0, 112, 0,
1060 128, 136, 142, 144, 0, 0, 0, 295, 268, 285,
1061 0, 0, 196, 0, 129, 0, 109, 0, 124, 168,
1062 0, 141, 262, 196, 131, 0, 291, 0, 0, 0,
1063 0, 0, 0, 0, 0, 0, 150, 0, 0, 122,
1064 0, 0, 126, 0, 168, 291, 0, 143, 0, 248,
1065 0, 0, 135, 0, 114, 0, 0, 115, 138, 0,
1066 109, 0, 0, 121, 123, 127, 248, 137, 0, 290,
1067 0, 292, 0, 0, 0, 0, 0, 0, 130, 113,
1068 292, 296, 0, 152, 0, 0, 0, 0, 0, 0,
1069 152, 292, 247, 196, 0, 269, 117, 116, 0, 118,
1070 119, 0, 263, 152, 151, 293, 168, 120, 140, 168,
1071 297, 270, 264, 168, 298
1074 /* YYDEFGOTO[NTERM-NUM]. */
1075 static const short int yydefgoto
[] =
1077 -1, 6, 118, 11, 12, 9, 10, 19, 87, 233,
1078 177, 176, 174, 185, 186, 187, 295, 7, 8, 18,
1079 55, 129, 206, 223, 429, 533, 488, 56, 202, 57,
1080 133, 628, 629, 670, 649, 630, 631, 668, 632, 643,
1081 633, 634, 635, 665, 725, 112, 137, 58, 673, 59,
1082 322, 208, 321, 530, 577, 422, 483, 484, 60, 61,
1083 216, 62, 217, 63, 219, 666, 200, 238, 701, 517,
1084 550, 568, 598, 313, 415, 585, 607, 675, 739, 416,
1085 586, 605, 656, 736, 417, 521, 511, 472, 473, 476,
1086 520, 679, 713, 608, 655, 721, 743, 64, 203, 316,
1087 418, 556, 479, 524, 554, 15, 16, 26, 27, 100,
1088 13, 14, 65, 66, 23, 24, 414, 94, 95, 504,
1092 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1094 #define YYPACT_NINF -673
1095 static const short int yypact
[] =
1097 185, -673, -673, -673, -673, -673, 43, -673, -673, -673,
1098 -673, -673, 46, -673, -11, -673, 19, -673, 789, 875,
1099 63, 119, 51, -11, -673, 128, 19, -673, 884, 66,
1100 71, 116, -673, 176, -673, 123, 125, 194, 201, 213,
1101 220, 221, 226, 237, -673, -673, 249, 250, -673, 251,
1102 252, 254, -673, 255, -673, -673, -673, -673, 96, -673,
1103 -673, -673, -673, -673, -673, -673, 164, -673, 304, 123,
1104 305, 646, -673, 309, 310, 312, -673, -673, 315, 316,
1105 319, 646, 320, 322, 325, -673, 328, 229, 646, -673,
1106 336, -673, 326, 327, 287, 209, 119, -673, -673, -673,
1107 295, 218, -673, -673, -673, -673, -673, -673, -673, -673,
1108 -673, -673, -673, -673, -673, 348, 352, -673, -673, 357,
1109 363, 123, 123, 367, 123, 22, -673, 372, 20, 343,
1110 123, 383, 384, 353, -673, -673, -673, -673, 340, 28,
1111 -673, 41, -673, -673, 646, 646, 646, 362, 364, 368,
1112 369, 376, -673, 379, 382, 393, 394, 395, 397, 399,
1113 402, 403, 406, 407, 408, 409, 411, 412, 413, 646,
1114 646, 1378, 222, -673, 256, -673, 262, 35, -673, -673,
1115 347, 1622, 265, -673, -673, 313, -673, 385, -673, -673,
1116 1622, 380, 128, 128, 314, 211, 401, 317, 211, -673,
1117 646, -673, 375, 33, -3, 324, -673, -673, -673, 329,
1118 333, 338, 339, 341, -673, -673, 76, 89, 36, 354,
1119 -673, -673, 428, 16, 20, 356, 460, 470, 646, 361,
1120 -11, 646, 646, -673, 646, 646, -673, -673, 798, 646,
1121 646, 646, 646, 646, 476, 488, 646, 498, 499, 504,
1122 505, 646, 646, 646, 646, 506, 508, 646, 646, 510,
1123 -673, -673, 646, 646, 646, 646, 646, 646, 646, 646,
1124 646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
1125 646, 646, 646, 646, 1622, 514, 515, -673, 517, 646,
1126 646, 1622, 138, 520, -673, 47, -673, 386, 389, -673,
1127 -673, 525, -673, -673, -673, -84, -673, 1622, 884, -673,
1128 -673, -673, -673, -673, -673, -673, -673, 527, -673, -673,
1129 863, 495, 82, -673, -673, -673, -673, -673, -673, -673,
1130 123, -673, 123, 372, -673, -673, -673, -673, -673, 496,
1131 24, -673, 27, -673, -673, -673, 1398, -673, -18, 1622,
1132 1622, 1571, 1622, 1622, -673, 746, 986, 1418, 1438, 1006,
1133 415, 398, 1026, 416, 418, 419, 429, 1458, 1500, 1046,
1134 1066, 433, 434, 1086, 1520, 435, 1681, 1559, 1480, 1716,
1135 637, 1729, 1740, 1740, 600, 600, 600, 600, 378, 378,
1136 156, 156, -673, -673, -673, 1622, 1622, 1622, -673, -673,
1137 -673, 1622, 1622, -673, -673, -673, -673, 530, 128, 236,
1138 211, 484, -673, -673, -28, 467, 567, 467, 646, 438,
1139 -673, 4, 523, -673, 357, -673, -673, -673, -673, 20,
1140 -673, -673, -673, 540, -673, 441, 442, 547, -673, -673,
1141 646, -673, -673, 646, 646, -673, 646, -673, -673, -673,
1142 -673, -673, -673, 646, 646, -673, -673, -673, -673, -673,
1143 580, -673, 646, -673, 446, 570, -673, -673, -673, 15,
1144 550, 1593, 572, 502, -673, 1701, 513, -673, 1622, 18,
1145 589, -673, 598, 3, -673, 519, -673, 129, 20, -673,
1146 -673, -673, 468, 1110, 1130, 1150, 1170, 1190, 1210, 469,
1147 1622, 211, 558, 128, 128, -673, -673, -673, -673, -673,
1148 -673, 474, 646, 396, 602, -673, 582, 583, -673, -673,
1149 502, 571, 586, 599, -673, 480, -673, -673, -673, 620,
1150 500, -673, 135, 20, -673, -673, -673, -673, -673, -673,
1151 -673, -673, -673, 512, 446, -673, 1234, -673, 646, 615,
1152 539, 539, -673, 646, 18, 646, 534, -673, -673, 549,
1153 -673, 140, 211, 621, 225, 1254, 646, 616, -673, -673,
1154 400, 1274, -673, 1294, -673, -673, 648, -673, -673, -673,
1155 619, 658, -673, 1314, 646, 90, 626, -673, -673, 18,
1156 -673, 646, -673, -673, 1334, -673, -673, -673, 627, -673,
1157 -673, -673, 1358, -673, -673, -673, 644, 703, 58, 666,
1158 554, -673, -673, -673, -673, -673, -673, -673, 649, 650,
1159 651, -673, -673, -673, 652, 653, -673, 279, -673, 654,
1160 -673, -673, -673, 703, 638, 656, 96, -673, -673, -673,
1161 233, 366, -673, 660, -673, 217, -673, 661, -673, -20,
1162 279, -673, -673, -673, -673, 647, 674, 665, 667, 565,
1163 671, 569, 675, 676, 575, 576, -673, 646, 98, -673,
1164 12, 303, -673, 279, 141, 674, 577, 703, 724, 632,
1165 217, 217, -673, 217, -673, 217, 217, -673, -673, 1540,
1166 590, 591, 217, -673, -673, -673, 632, -673, 678, -673,
1167 708, -673, 597, 601, 44, 603, 609, 734, -673, -673,
1168 -673, -673, 735, 61, 610, 612, 217, 613, 618, 622,
1169 61, -673, -673, -673, 736, -673, -673, -673, 641, -673,
1170 -673, 96, -673, 61, -673, -673, 500, -673, -673, 500,
1171 -673, -673, -673, 500, -673
1174 /* YYPGOTO[NTERM-NUM]. */
1175 static const short int yypgoto
[] =
1177 -673, -673, -64, -673, -673, -673, -673, 509, -673, -673,
1178 -673, -673, -673, -673, 625, -673, -673, -673, -673, 578,
1179 -673, -673, -673, -212, -673, -673, -673, -673, 204, -196,
1180 -673, -91, -542, 77, 133, 117, -673, -673, 153, -673,
1181 -673, 110, -673, 65, -649, -673, -621, -577, -213, -673,
1182 -673, -308, -673, -673, -673, -673, -673, 308, -673, -673,
1183 -673, -673, -673, -673, -195, -101, -673, -71, 99, 276,
1184 -673, 246, -673, -673, -673, -673, -673, -673, -673, -673,
1185 -673, -673, -673, -673, -673, -673, -673, -458, 387, -673,
1186 -673, 124, -672, -673, -673, -673, -673, -673, -673, -673,
1187 -673, -673, -673, -521, -673, -673, -673, -673, 774, -673,
1188 -673, -673, -673, -673, 579, -22, -673, 705, -16, -673,
1192 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
1193 positive, shift that token. If negative, reduce the rule which
1194 number is the opposite. If zero, do what YYDEFACT says.
1195 If YYTABLE_NINF, syntax error. */
1196 #define YYTABLE_NINF -320
1197 static const short int yytable
[] =
1199 171, 97, 199, 330, 332, 140, 312, 481, 481, 101,
1200 181, 201, 342, 514, 425, 654, 646, 190, 142, 143,
1201 337, 338, 522, 334, 220, 221, 117, 611, 431, 432,
1202 636, 337, 338, 572, 231, 21, 438, 314, 720, 287,
1203 218, 412, 21, 17, 612, 144, 145, 234, 646, 733,
1204 20, 406, 146, 147, 148, 413, 636, 210, 211, 611,
1205 213, 215, 637, 149, 150, 151, 225, 723, 600, 88,
1206 152, 732, 25, 236, 237, 153, 612, 724, 505, 506,
1207 507, 508, 509, 154, 740, 648, 207, 315, 155, 156,
1208 157, 158, 159, 160, 161, 162, 163, 467, 260, 261,
1209 636, 284, 690, 164, 96, 165, 581, 22, 648, 291,
1210 738, 468, 638, 611, 22, 523, 486, 339, 328, 113,
1211 166, 222, 672, 89, 114, 433, 167, 117, 339, 307,
1212 612, 694, 89, 337, 338, 317, 423, 318, 428, 337,
1213 338, 403, 404, 527, 337, 338, 482, 482, 609, 647,
1214 619, 168, 692, 115, 340, 510, 341, 346, 169, 170,
1215 349, 350, 214, 352, 353, 340, 232, 434, 355, 356,
1216 357, 358, 359, 288, 333, 362, 297, 298, 119, 235,
1217 367, 368, 369, 370, 716, 407, 373, 374, 278, 279,
1218 280, 376, 377, 378, 379, 380, 381, 382, 383, 384,
1219 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
1220 395, 396, 397, 116, 328, 300, 329, 487, 401, 402,
1221 424, 646, 595, 596, 597, 142, 143, 328, 282, 331,
1222 339, 120, 611, 625, 135, 136, 339, 646, 121, 627,
1223 300, 339, 90, 435, 436, 91, 92, 93, 611, 612,
1224 122, 90, 144, 145, 91, 98, 99, 123, 124, 146,
1225 147, 148, 513, 125, 580, 612, 426, 340, 427, 531,
1226 149, 150, 151, 340, 126, 560, 532, 152, 340, 328,
1227 578, 695, 153, 646, 657, 658, 127, 128, 130, 131,
1228 154, 132, 134, 138, 611, 155, 156, 157, 158, 159,
1229 160, 161, 162, 163, 1, 2, 3, 646, 139, 141,
1230 164, 612, 165, 172, 173, 4, 175, 559, 611, 178,
1231 179, 561, 5, 180, 182, 183, 97, 166, 659, 184,
1232 647, 619, 188, 167, 301, 612, 189, 302, 303, 304,
1233 191, 194, 192, 193, 471, 475, 471, 478, 195, 197,
1234 142, 143, 204, 289, 657, 658, 205, 198, 168, 301,
1235 283, 207, 302, 303, 465, 169, 170, 209, 660, 493,
1236 646, 212, 494, 495, 312, 496, 218, 144, 145, 308,
1237 224, 611, 497, 498, 146, 147, 148, 226, 227, 294,
1238 228, 500, 464, 230, 285, 149, 150, 151, 612, 239,
1239 286, 240, 152, 292, 308, 241, 242, 153, 276, 277,
1240 278, 279, 280, 243, 625, 154, 244, 662, 663, 245,
1241 155, 156, 157, 158, 159, 160, 161, 162, 163, 309,
1242 246, 247, 248, 296, 249, 164, 250, 165, 660, 251,
1243 252, 546, 310, 253, 254, 255, 256, 40, 257, 258,
1244 259, 293, 166, 299, 587, 305, 306, 575, 167, 505,
1245 506, 507, 508, 509, 319, 336, 344, 310, 311, 323,
1246 142, 143, 40, 324, 50, 51, 345, 565, 325, 326,
1247 360, 327, 571, 168, 573, 290, 52, 543, 544, 601,
1248 169, 170, 361, 311, 335, 583, 343, 144, 145, 50,
1249 51, 347, 363, 364, 469, 147, 148, 470, 365, 366,
1250 371, 52, 372, 594, 375, 149, 150, 151, 398, 399,
1251 602, 400, 152, 741, 405, 409, 742, 153, 410, 411,
1252 744, 419, 421, 430, 463, 154, 510, 466, 447, 485,
1253 155, 156, 157, 158, 159, 160, 161, 162, 163, 661,
1254 664, 492, 676, 446, 669, 164, 449, 165, 450, 451,
1255 103, 104, 105, 106, 107, 108, 109, 110, 111, 452,
1256 142, 143, 166, 457, 458, 461, 480, 489, 167, 693,
1257 661, 490, 491, 474, 499, 501, 503, 512, 515, 702,
1258 703, -109, 669, 525, 705, 706, 689, 144, 145, 516,
1259 519, 709, 526, 168, 146, 147, 148, 529, 534, 541,
1260 169, 170, 542, 693, 545, 149, 150, 151, 547, 548,
1261 557, 549, 152, 553, 552, 728, 558, 153, 274, 275,
1262 276, 277, 278, 279, 280, 154, 555, 567, 328, 576,
1263 155, 156, 157, 158, 159, 160, 161, 162, 163, 142,
1264 143, 562, 566, 584, 590, 164, 591, 165, 267, 268,
1265 269, 270, 271, 272, 273, 274, 275, 276, 277, 278,
1266 279, 280, 166, 574, 592, 579, 144, 145, 167, 599,
1267 604, 513, 639, 146, 147, 148, 640, 641, 642, 644,
1268 645, 650, 652, 653, 149, 150, 151, 667, 671, 678,
1269 677, 152, 680, 168, 681, 682, 153, 610, 683, 684,
1270 169, 170, 685, 686, 154, 687, 688, 697, 611, 155,
1271 156, 157, 158, 159, 160, 161, 162, 163, 699, 700,
1272 -125, 708, 711, 712, 164, 612, 165, 714, 719, 722,
1273 735, 715, 351, 717, 613, 614, 615, 616, 617, 718,
1274 726, 166, 727, 729, 618, 619, 570, 167, 730, 229,
1275 704, 262, 731, 263, 264, 265, 266, 267, 268, 269,
1276 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
1277 280, 737, 168, 674, 320, 691, 651, 698, 734, 169,
1278 170, 528, 620, 28, 621, 710, 551, 569, 622, 696,
1279 102, 196, 50, 51, 477, 563, 0, 0, 0, 348,
1280 0, 0, 0, 262, 623, 263, 264, 265, 266, 267,
1281 268, 269, 270, 271, 272, 273, 274, 275, 276, 277,
1282 278, 279, 280, 0, 624, 29, 30, 0, 625, 0,
1283 0, 0, 626, 0, 627, 31, 32, 33, 34, 0,
1284 35, 36, 0, 0, 0, 0, 0, 0, 37, 38,
1285 39, 40, 0, 0, 0, 0, 0, 28, 0, 0,
1286 0, 41, 42, 43, 44, 45, 46, 0, 0, 67,
1287 0, 47, 48, 49, 440, 0, 441, 0, 50, 51,
1288 103, 104, 105, 106, 107, 108, 109, 110, 111, 420,
1289 52, 0, 0, 0, 0, 0, 0, 0, 0, 29,
1290 30, 0, 53, 68, 0, 0, 0, 0, -319, 31,
1291 32, 33, 34, 0, 35, 36, 0, 0, 54, 0,
1292 0, 0, 37, 38, 39, 40, 69, 0, 354, 0,
1293 0, 0, 0, 0, 0, 41, 42, 43, 44, 45,
1294 46, 0, 0, 0, 0, 47, 48, 49, 0, 0,
1295 0, 0, 50, 51, 0, 0, 0, 0, 0, 0,
1296 0, 70, 0, 0, 52, 0, 0, 71, 72, 73,
1297 74, 75, -43, 76, 77, 78, 53, 79, 80, 0,
1298 81, 82, 83, 0, 0, 0, 0, 84, 85, 86,
1299 0, 262, 54, 263, 264, 265, 266, 267, 268, 269,
1300 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
1301 280, 262, 0, 263, 264, 265, 266, 267, 268, 269,
1302 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
1303 280, 262, 0, 263, 264, 265, 266, 267, 268, 269,
1304 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
1305 280, 262, 0, 263, 264, 265, 266, 267, 268, 269,
1306 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
1307 280, 262, 0, 263, 264, 265, 266, 267, 268, 269,
1308 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
1309 280, 262, 0, 263, 264, 265, 266, 267, 268, 269,
1310 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
1311 280, 0, 0, 0, 0, 262, 442, 263, 264, 265,
1312 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
1313 276, 277, 278, 279, 280, 262, 445, 263, 264, 265,
1314 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
1315 276, 277, 278, 279, 280, 262, 448, 263, 264, 265,
1316 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
1317 276, 277, 278, 279, 280, 262, 455, 263, 264, 265,
1318 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
1319 276, 277, 278, 279, 280, 262, 456, 263, 264, 265,
1320 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
1321 276, 277, 278, 279, 280, 262, 459, 263, 264, 265,
1322 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
1323 276, 277, 278, 279, 280, 0, 0, 0, 0, 262,
1324 535, 263, 264, 265, 266, 267, 268, 269, 270, 271,
1325 272, 273, 274, 275, 276, 277, 278, 279, 280, 262,
1326 536, 263, 264, 265, 266, 267, 268, 269, 270, 271,
1327 272, 273, 274, 275, 276, 277, 278, 279, 280, 262,
1328 537, 263, 264, 265, 266, 267, 268, 269, 270, 271,
1329 272, 273, 274, 275, 276, 277, 278, 279, 280, 262,
1330 538, 263, 264, 265, 266, 267, 268, 269, 270, 271,
1331 272, 273, 274, 275, 276, 277, 278, 279, 280, 262,
1332 539, 263, 264, 265, 266, 267, 268, 269, 270, 271,
1333 272, 273, 274, 275, 276, 277, 278, 279, 280, 262,
1334 540, 263, 264, 265, 266, 267, 268, 269, 270, 271,
1335 272, 273, 274, 275, 276, 277, 278, 279, 280, 0,
1336 0, 0, 0, 262, 564, 263, 264, 265, 266, 267,
1337 268, 269, 270, 271, 272, 273, 274, 275, 276, 277,
1338 278, 279, 280, 262, 582, 263, 264, 265, 266, 267,
1339 268, 269, 270, 271, 272, 273, 274, 275, 276, 277,
1340 278, 279, 280, 262, 588, 263, 264, 265, 266, 267,
1341 268, 269, 270, 271, 272, 273, 274, 275, 276, 277,
1342 278, 279, 280, 262, 589, 263, 264, 265, 266, 267,
1343 268, 269, 270, 271, 272, 273, 274, 275, 276, 277,
1344 278, 279, 280, 262, 593, 263, 264, 265, 266, 267,
1345 268, 269, 270, 271, 272, 273, 274, 275, 276, 277,
1346 278, 279, 280, 262, 603, 263, 264, 265, 266, 267,
1347 268, 269, 270, 271, 272, 273, 274, 275, 276, 277,
1348 278, 279, 280, 0, 0, 0, 0, 0, 606, 265,
1349 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
1350 276, 277, 278, 279, 280, 262, 281, 263, 264, 265,
1351 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
1352 276, 277, 278, 279, 280, 262, 437, 263, 264, 265,
1353 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
1354 276, 277, 278, 279, 280, 262, 443, 263, 264, 265,
1355 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
1356 276, 277, 278, 279, 280, 67, 444, 264, 265, 266,
1357 267, 268, 269, 270, 271, 272, 273, 274, 275, 276,
1358 277, 278, 279, 280, 0, 0, 453, 0, 0, 0,
1359 0, 0, 0, 0, 0, 0, 0, 439, 262, 68,
1360 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
1361 273, 274, 275, 276, 277, 278, 279, 280, 0, 0,
1362 513, 0, 69, 0, 0, 0, 0, 262, 454, 263,
1363 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
1364 274, 275, 276, 277, 278, 279, 280, 0, 460, 0,
1365 0, 0, 0, 0, 0, 0, 0, 70, 0, 0,
1366 0, 0, 0, 71, 72, 73, 74, 75, 707, 76,
1367 77, 78, 0, 79, 80, 0, 81, 82, 83, 0,
1368 0, 0, 0, 84, 85, 86, 262, 462, 263, 264,
1369 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
1370 275, 276, 277, 278, 279, 280, 262, 518, 263, 264,
1371 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
1372 275, 276, 277, 278, 279, 280, 266, 267, 268, 269,
1373 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
1374 280, 268, 269, 270, 271, 272, 273, 274, 275, 276,
1375 277, 278, 279, 280, 270, 271, 272, 273, 274, 275,
1376 276, 277, 278, 279, 280
1379 static const short int yycheck
[] =
1381 71, 23, 103, 216, 217, 69, 202, 4, 4, 25,
1382 81, 112, 224, 471, 322, 636, 4, 88, 3, 4,
1383 4, 5, 4, 218, 4, 5, 4, 15, 4, 5,
1384 607, 4, 5, 554, 6, 53, 54, 4, 710, 4,
1385 4, 125, 53, 0, 32, 30, 31, 6, 4, 721,
1386 4, 4, 37, 38, 39, 139, 633, 121, 122, 15,
1387 124, 125, 4, 48, 49, 50, 130, 6, 589, 6,
1388 55, 720, 53, 144, 145, 60, 32, 16, 63, 64,
1389 65, 66, 67, 68, 733, 627, 4, 54, 73, 74,
1390 75, 76, 77, 78, 79, 80, 81, 125, 169, 170,
1391 677, 172, 4, 88, 53, 90, 564, 125, 650, 180,
1392 731, 139, 54, 15, 125, 97, 424, 101, 138, 53,
1393 105, 101, 142, 4, 53, 101, 111, 4, 101, 200,
1394 32, 673, 4, 4, 5, 138, 54, 140, 333, 4,
1395 5, 3, 4, 140, 4, 5, 143, 143, 606, 51,
1396 52, 136, 140, 37, 138, 140, 140, 228, 143, 144,
1397 231, 232, 140, 234, 235, 138, 138, 140, 239, 240,
1398 241, 242, 243, 138, 138, 246, 192, 193, 53, 138,
1399 251, 252, 253, 254, 140, 138, 257, 258, 32, 33,
1400 34, 262, 263, 264, 265, 266, 267, 268, 269, 270,
1401 271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
1402 281, 282, 283, 37, 138, 4, 140, 429, 289, 290,
1403 138, 4, 132, 133, 134, 3, 4, 138, 6, 140,
1404 101, 37, 15, 135, 138, 139, 101, 4, 37, 141,
1405 4, 101, 123, 344, 345, 126, 127, 128, 15, 32,
1406 37, 123, 30, 31, 126, 127, 128, 37, 37, 37,
1407 38, 39, 37, 37, 39, 32, 330, 138, 332, 140,
1408 48, 49, 50, 138, 37, 140, 488, 55, 138, 138,
1409 140, 140, 60, 4, 51, 52, 37, 37, 37, 37,
1410 68, 37, 37, 129, 15, 73, 74, 75, 76, 77,
1411 78, 79, 80, 81, 119, 120, 121, 4, 4, 4,
1412 88, 32, 90, 4, 4, 130, 4, 530, 15, 4,
1413 4, 533, 137, 4, 4, 3, 348, 105, 95, 4,
1414 51, 52, 4, 111, 123, 32, 107, 126, 127, 128,
1415 4, 54, 16, 16, 415, 416, 417, 418, 139, 54,
1416 3, 4, 4, 6, 51, 52, 4, 139, 136, 123,
1417 138, 4, 126, 127, 128, 143, 144, 4, 135, 440,
1418 4, 4, 443, 444, 570, 446, 4, 30, 31, 4,
1419 37, 15, 453, 454, 37, 38, 39, 4, 4, 4,
1420 37, 462, 408, 53, 138, 48, 49, 50, 32, 37,
1421 138, 37, 55, 138, 4, 37, 37, 60, 30, 31,
1422 32, 33, 34, 37, 135, 68, 37, 51, 52, 37,
1423 73, 74, 75, 76, 77, 78, 79, 80, 81, 54,
1424 37, 37, 37, 53, 37, 88, 37, 90, 135, 37,
1425 37, 512, 67, 37, 37, 37, 37, 72, 37, 37,
1426 37, 138, 105, 139, 54, 54, 139, 558, 111, 63,
1427 64, 65, 66, 67, 140, 37, 6, 67, 93, 140,
1428 3, 4, 72, 140, 99, 100, 6, 548, 140, 140,
1429 4, 140, 553, 136, 555, 138, 111, 503, 504, 590,
1430 143, 144, 4, 93, 140, 566, 140, 30, 31, 99,
1431 100, 140, 4, 4, 37, 38, 39, 40, 4, 4,
1432 4, 111, 4, 584, 4, 48, 49, 50, 4, 4,
1433 591, 4, 55, 736, 4, 139, 739, 60, 139, 4,
1434 743, 4, 37, 37, 4, 68, 140, 53, 140, 16,
1435 73, 74, 75, 76, 77, 78, 79, 80, 81, 640,
1436 641, 4, 653, 138, 645, 88, 140, 90, 140, 140,
1437 6, 7, 8, 9, 10, 11, 12, 13, 14, 140,
1438 3, 4, 105, 140, 140, 140, 138, 37, 111, 670,
1439 671, 140, 140, 16, 4, 139, 16, 37, 16, 680,
1440 681, 37, 683, 4, 685, 686, 667, 30, 31, 97,
1441 87, 692, 4, 136, 37, 38, 39, 88, 140, 140,
1442 143, 144, 54, 704, 140, 48, 49, 50, 16, 37,
1443 140, 38, 55, 37, 53, 716, 6, 60, 28, 29,
1444 30, 31, 32, 33, 34, 68, 37, 98, 138, 90,
1445 73, 74, 75, 76, 77, 78, 79, 80, 81, 3,
1446 4, 139, 37, 37, 6, 88, 37, 90, 21, 22,
1447 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
1448 33, 34, 105, 139, 16, 54, 30, 31, 111, 53,
1449 53, 37, 16, 37, 38, 39, 37, 37, 37, 37,
1450 37, 37, 54, 37, 48, 49, 50, 37, 37, 25,
1451 53, 55, 37, 136, 37, 140, 60, 4, 37, 140,
1452 143, 144, 37, 37, 68, 140, 140, 140, 15, 73,
1453 74, 75, 76, 77, 78, 79, 80, 81, 4, 97,
1454 140, 140, 54, 25, 88, 32, 90, 140, 4, 4,
1455 4, 140, 233, 140, 41, 42, 43, 44, 45, 140,
1456 140, 105, 140, 140, 51, 52, 552, 111, 140, 134,
1457 683, 15, 140, 17, 18, 19, 20, 21, 22, 23,
1458 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1459 34, 140, 136, 650, 206, 668, 633, 677, 723, 143,
1460 144, 483, 89, 4, 91, 696, 520, 551, 95, 675,
1461 26, 96, 99, 100, 417, 544, -1, -1, -1, 230,
1462 -1, -1, -1, 15, 111, 17, 18, 19, 20, 21,
1463 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1464 32, 33, 34, -1, 131, 46, 47, -1, 135, -1,
1465 -1, -1, 139, -1, 141, 56, 57, 58, 59, -1,
1466 61, 62, -1, -1, -1, -1, -1, -1, 69, 70,
1467 71, 72, -1, -1, -1, -1, -1, 4, -1, -1,
1468 -1, 82, 83, 84, 85, 86, 87, -1, -1, 4,
1469 -1, 92, 93, 94, 138, -1, 140, -1, 99, 100,
1470 6, 7, 8, 9, 10, 11, 12, 13, 14, 36,
1471 111, -1, -1, -1, -1, -1, -1, -1, -1, 46,
1472 47, -1, 123, 38, -1, -1, -1, -1, 129, 56,
1473 57, 58, 59, -1, 61, 62, -1, -1, 139, -1,
1474 -1, -1, 69, 70, 71, 72, 61, -1, 140, -1,
1475 -1, -1, -1, -1, -1, 82, 83, 84, 85, 86,
1476 87, -1, -1, -1, -1, 92, 93, 94, -1, -1,
1477 -1, -1, 99, 100, -1, -1, -1, -1, -1, -1,
1478 -1, 96, -1, -1, 111, -1, -1, 102, 103, 104,
1479 105, 106, 107, 108, 109, 110, 123, 112, 113, -1,
1480 115, 116, 117, -1, -1, -1, -1, 122, 123, 124,
1481 -1, 15, 139, 17, 18, 19, 20, 21, 22, 23,
1482 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1483 34, 15, -1, 17, 18, 19, 20, 21, 22, 23,
1484 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1485 34, 15, -1, 17, 18, 19, 20, 21, 22, 23,
1486 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1487 34, 15, -1, 17, 18, 19, 20, 21, 22, 23,
1488 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1489 34, 15, -1, 17, 18, 19, 20, 21, 22, 23,
1490 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1491 34, 15, -1, 17, 18, 19, 20, 21, 22, 23,
1492 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1493 34, -1, -1, -1, -1, 15, 140, 17, 18, 19,
1494 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1495 30, 31, 32, 33, 34, 15, 140, 17, 18, 19,
1496 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1497 30, 31, 32, 33, 34, 15, 140, 17, 18, 19,
1498 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1499 30, 31, 32, 33, 34, 15, 140, 17, 18, 19,
1500 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1501 30, 31, 32, 33, 34, 15, 140, 17, 18, 19,
1502 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1503 30, 31, 32, 33, 34, 15, 140, 17, 18, 19,
1504 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1505 30, 31, 32, 33, 34, -1, -1, -1, -1, 15,
1506 140, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1507 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1508 140, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1509 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1510 140, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1511 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1512 140, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1513 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1514 140, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1515 26, 27, 28, 29, 30, 31, 32, 33, 34, 15,
1516 140, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1517 26, 27, 28, 29, 30, 31, 32, 33, 34, -1,
1518 -1, -1, -1, 15, 140, 17, 18, 19, 20, 21,
1519 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1520 32, 33, 34, 15, 140, 17, 18, 19, 20, 21,
1521 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1522 32, 33, 34, 15, 140, 17, 18, 19, 20, 21,
1523 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1524 32, 33, 34, 15, 140, 17, 18, 19, 20, 21,
1525 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1526 32, 33, 34, 15, 140, 17, 18, 19, 20, 21,
1527 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1528 32, 33, 34, 15, 140, 17, 18, 19, 20, 21,
1529 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1530 32, 33, 34, -1, -1, -1, -1, -1, 140, 19,
1531 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1532 30, 31, 32, 33, 34, 15, 138, 17, 18, 19,
1533 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1534 30, 31, 32, 33, 34, 15, 138, 17, 18, 19,
1535 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1536 30, 31, 32, 33, 34, 15, 138, 17, 18, 19,
1537 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1538 30, 31, 32, 33, 34, 4, 138, 18, 19, 20,
1539 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
1540 31, 32, 33, 34, -1, -1, 138, -1, -1, -1,
1541 -1, -1, -1, -1, -1, -1, -1, 36, 15, 38,
1542 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1543 27, 28, 29, 30, 31, 32, 33, 34, -1, -1,
1544 37, -1, 61, -1, -1, -1, -1, 15, 138, 17,
1545 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1546 28, 29, 30, 31, 32, 33, 34, -1, 138, -1,
1547 -1, -1, -1, -1, -1, -1, -1, 96, -1, -1,
1548 -1, -1, -1, 102, 103, 104, 105, 106, 138, 108,
1549 109, 110, -1, 112, 113, -1, 115, 116, 117, -1,
1550 -1, -1, -1, 122, 123, 124, 15, 16, 17, 18,
1551 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
1552 29, 30, 31, 32, 33, 34, 15, 16, 17, 18,
1553 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
1554 29, 30, 31, 32, 33, 34, 20, 21, 22, 23,
1555 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1556 34, 22, 23, 24, 25, 26, 27, 28, 29, 30,
1557 31, 32, 33, 34, 24, 25, 26, 27, 28, 29,
1561 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1562 symbol of state STATE-NUM. */
1563 static const unsigned short int yystos
[] =
1565 0, 119, 120, 121, 130, 137, 146, 162, 163, 150,
1566 151, 148, 149, 255, 256, 250, 251, 0, 164, 152,
1567 4, 53, 125, 259, 260, 53, 252, 253, 4, 46,
1568 47, 56, 57, 58, 59, 61, 62, 69, 70, 71,
1569 72, 82, 83, 84, 85, 86, 87, 92, 93, 94,
1570 99, 100, 111, 123, 139, 165, 172, 174, 192, 194,
1571 203, 204, 206, 208, 242, 257, 258, 4, 38, 61,
1572 96, 102, 103, 104, 105, 106, 108, 109, 110, 112,
1573 113, 115, 116, 117, 122, 123, 124, 153, 6, 4,
1574 123, 126, 127, 128, 262, 263, 53, 260, 127, 128,
1575 254, 263, 253, 6, 7, 8, 9, 10, 11, 12,
1576 13, 14, 190, 53, 53, 37, 37, 4, 147, 53,
1577 37, 37, 37, 37, 37, 37, 37, 37, 37, 166,
1578 37, 37, 37, 175, 37, 138, 139, 191, 129, 4,
1579 147, 4, 3, 4, 30, 31, 37, 38, 39, 48,
1580 49, 50, 55, 60, 68, 73, 74, 75, 76, 77,
1581 78, 79, 80, 81, 88, 90, 105, 111, 136, 143,
1582 144, 212, 4, 4, 157, 4, 156, 155, 4, 4,
1583 4, 212, 4, 3, 4, 158, 159, 160, 4, 107,
1584 212, 4, 16, 16, 54, 139, 262, 54, 139, 210,
1585 211, 210, 173, 243, 4, 4, 167, 4, 196, 4,
1586 147, 147, 4, 147, 140, 147, 205, 207, 4, 209,
1587 4, 5, 101, 168, 37, 147, 4, 4, 37, 159,
1588 53, 6, 138, 154, 6, 138, 212, 212, 212, 37,
1589 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1590 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1591 212, 212, 15, 17, 18, 19, 20, 21, 22, 23,
1592 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1593 34, 138, 6, 138, 212, 138, 138, 4, 138, 6,
1594 138, 212, 138, 138, 4, 161, 53, 263, 263, 139,
1595 4, 123, 126, 127, 128, 54, 139, 212, 4, 54,
1596 67, 93, 174, 218, 4, 54, 244, 138, 140, 140,
1597 164, 197, 195, 140, 140, 140, 140, 140, 138, 140,
1598 193, 140, 193, 138, 209, 140, 37, 4, 5, 101,
1599 138, 140, 168, 140, 6, 6, 212, 140, 259, 212,
1600 212, 152, 212, 212, 140, 212, 212, 212, 212, 212,
1601 4, 4, 212, 4, 4, 4, 4, 212, 212, 212,
1602 212, 4, 4, 212, 212, 4, 212, 212, 212, 212,
1603 212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
1604 212, 212, 212, 212, 212, 212, 212, 212, 4, 4,
1605 4, 212, 212, 3, 4, 4, 4, 138, 265, 139,
1606 139, 4, 125, 139, 261, 219, 224, 229, 245, 4,
1607 36, 37, 200, 54, 138, 196, 147, 147, 209, 169,
1608 37, 4, 5, 101, 140, 210, 210, 138, 54, 36,
1609 138, 140, 140, 138, 138, 140, 138, 140, 140, 140,
1610 140, 140, 140, 138, 138, 140, 140, 140, 140, 140,
1611 138, 140, 16, 4, 263, 128, 53, 125, 139, 37,
1612 40, 212, 232, 233, 16, 212, 234, 233, 212, 247,
1613 138, 4, 143, 201, 202, 16, 196, 168, 171, 37,
1614 140, 140, 4, 212, 212, 212, 212, 212, 212, 4,
1615 212, 139, 266, 16, 264, 63, 64, 65, 66, 67,
1616 140, 231, 37, 37, 232, 16, 97, 214, 16, 87,
1617 235, 230, 4, 97, 248, 4, 4, 140, 202, 88,
1618 198, 140, 168, 170, 140, 140, 140, 140, 140, 140,
1619 140, 140, 54, 263, 263, 140, 212, 16, 37, 38,
1620 215, 214, 53, 37, 249, 37, 246, 140, 6, 193,
1621 140, 168, 139, 266, 140, 212, 37, 98, 216, 216,
1622 173, 212, 248, 212, 139, 210, 90, 199, 140, 54,
1623 39, 232, 140, 212, 37, 220, 225, 54, 140, 140,
1624 6, 37, 16, 140, 212, 132, 133, 134, 217, 53,
1625 248, 210, 212, 140, 53, 226, 140, 221, 238, 232,
1626 4, 15, 32, 41, 42, 43, 44, 45, 51, 52,
1627 89, 91, 95, 111, 131, 135, 139, 141, 176, 177,
1628 180, 181, 183, 185, 186, 187, 192, 4, 54, 16,
1629 37, 37, 37, 184, 37, 37, 4, 51, 177, 179,
1630 37, 183, 54, 37, 191, 239, 227, 51, 52, 95,
1631 135, 176, 51, 52, 176, 188, 210, 37, 182, 176,
1632 178, 37, 142, 193, 179, 222, 210, 53, 25, 236,
1633 37, 37, 140, 37, 140, 37, 37, 140, 140, 212,
1634 4, 180, 140, 176, 177, 140, 236, 140, 186, 4,
1635 97, 213, 176, 176, 178, 176, 176, 138, 140, 176,
1636 213, 54, 25, 237, 140, 140, 140, 140, 140, 4,
1637 237, 240, 4, 6, 16, 189, 140, 140, 176, 140,
1638 140, 140, 189, 237, 188, 4, 228, 140, 191, 223,
1639 189, 193, 193, 241, 193
1642 #define yyerrok (yyerrstatus = 0)
1643 #define yyclearin (yychar = YYEMPTY)
1644 #define YYEMPTY (-2)
1647 #define YYACCEPT goto yyacceptlab
1648 #define YYABORT goto yyabortlab
1649 #define YYERROR goto yyerrorlab
1652 /* Like YYERROR except do call yyerror. This remains here temporarily
1653 to ease the transition to the new meaning of YYERROR, for GCC.
1654 Once GCC version 2 has supplanted version 1, this can go. */
1656 #define YYFAIL goto yyerrlab
1658 #define YYRECOVERING() (!!yyerrstatus)
1660 #define YYBACKUP(Token, Value) \
1662 if (yychar == YYEMPTY && yylen == 1) \
1666 yytoken = YYTRANSLATE (yychar); \
1672 yyerror (YY_("syntax error: cannot back up")); \
1679 #define YYERRCODE 256
1682 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
1683 If N is 0, then set CURRENT to the empty location which ends
1684 the previous symbol: RHS[0] (always defined). */
1686 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
1687 #ifndef YYLLOC_DEFAULT
1688 # define YYLLOC_DEFAULT(Current, Rhs, N) \
1692 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
1693 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
1694 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
1695 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
1699 (Current).first_line = (Current).last_line = \
1700 YYRHSLOC (Rhs, 0).last_line; \
1701 (Current).first_column = (Current).last_column = \
1702 YYRHSLOC (Rhs, 0).last_column; \
1708 /* YY_LOCATION_PRINT -- Print the location on the stream.
1709 This macro was not mandated originally: define only if we know
1710 we won't break user code: when these are the locations we know. */
1712 #ifndef YY_LOCATION_PRINT
1713 # if YYLTYPE_IS_TRIVIAL
1714 # define YY_LOCATION_PRINT(File, Loc) \
1715 fprintf (File, "%d.%d-%d.%d", \
1716 (Loc).first_line, (Loc).first_column, \
1717 (Loc).last_line, (Loc).last_column)
1719 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1724 /* YYLEX -- calling `yylex' with the right arguments. */
1727 # define YYLEX yylex (YYLEX_PARAM)
1729 # define YYLEX yylex ()
1732 /* Enable debugging if requested. */
1736 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
1737 # define YYFPRINTF fprintf
1740 # define YYDPRINTF(Args) \
1746 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
1750 YYFPRINTF (stderr, "%s ", Title); \
1751 yysymprint (stderr, \
1753 YYFPRINTF (stderr, "\n"); \
1757 /*------------------------------------------------------------------.
1758 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
1760 `------------------------------------------------------------------*/
1762 #if defined (__STDC__) || defined (__cplusplus)
1764 yy_stack_print (short int *bottom
, short int *top
)
1767 yy_stack_print (bottom
, top
)
1772 YYFPRINTF (stderr
, "Stack now");
1773 for (/* Nothing. */; bottom
<= top
; ++bottom
)
1774 YYFPRINTF (stderr
, " %d", *bottom
);
1775 YYFPRINTF (stderr
, "\n");
1778 # define YY_STACK_PRINT(Bottom, Top) \
1781 yy_stack_print ((Bottom), (Top)); \
1785 /*------------------------------------------------.
1786 | Report that the YYRULE is going to be reduced. |
1787 `------------------------------------------------*/
1789 #if defined (__STDC__) || defined (__cplusplus)
1791 yy_reduce_print (int yyrule
)
1794 yy_reduce_print (yyrule
)
1799 unsigned long int yylno
= yyrline
[yyrule
];
1800 YYFPRINTF (stderr
, "Reducing stack by rule %d (line %lu), ",
1802 /* Print the symbols being reduced, and their result. */
1803 for (yyi
= yyprhs
[yyrule
]; 0 <= yyrhs
[yyi
]; yyi
++)
1804 YYFPRINTF (stderr
, "%s ", yytname
[yyrhs
[yyi
]]);
1805 YYFPRINTF (stderr
, "-> %s\n", yytname
[yyr1
[yyrule
]]);
1808 # define YY_REDUCE_PRINT(Rule) \
1811 yy_reduce_print (Rule); \
1814 /* Nonzero means print parse trace. It is left uninitialized so that
1815 multiple parsers can coexist. */
1817 #else /* !YYDEBUG */
1818 # define YYDPRINTF(Args)
1819 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
1820 # define YY_STACK_PRINT(Bottom, Top)
1821 # define YY_REDUCE_PRINT(Rule)
1822 #endif /* !YYDEBUG */
1825 /* YYINITDEPTH -- initial size of the parser's stacks. */
1827 # define YYINITDEPTH 200
1830 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
1831 if the built-in stack extension method is used).
1833 Do not make this value too large; the results are undefined if
1834 YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
1835 evaluated with infinite-precision integer arithmetic. */
1838 # define YYMAXDEPTH 10000
1846 # if defined (__GLIBC__) && defined (_STRING_H)
1847 # define yystrlen strlen
1849 /* Return the length of YYSTR. */
1851 # if defined (__STDC__) || defined (__cplusplus)
1852 yystrlen (const char *yystr
)
1858 const char *yys
= yystr
;
1860 while (*yys
++ != '\0')
1863 return yys
- yystr
- 1;
1869 # if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
1870 # define yystpcpy stpcpy
1872 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
1875 # if defined (__STDC__) || defined (__cplusplus)
1876 yystpcpy (char *yydest
, const char *yysrc
)
1878 yystpcpy (yydest
, yysrc
)
1884 const char *yys
= yysrc
;
1886 while ((*yyd
++ = *yys
++) != '\0')
1895 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
1896 quotes and backslashes, so that it's suitable for yyerror. The
1897 heuristic is that double-quoting is unnecessary unless the string
1898 contains an apostrophe, a comma, or backslash (other than
1899 backslash-backslash). YYSTR is taken from yytname. If YYRES is
1900 null, do not copy; instead, return the length of what the result
1903 yytnamerr (char *yyres
, const char *yystr
)
1908 char const *yyp
= yystr
;
1915 goto do_not_strip_quotes
;
1919 goto do_not_strip_quotes
;
1932 do_not_strip_quotes
: ;
1936 return yystrlen (yystr
);
1938 return yystpcpy (yyres
, yystr
) - yyres
;
1942 #endif /* YYERROR_VERBOSE */
1947 /*--------------------------------.
1948 | Print this symbol on YYOUTPUT. |
1949 `--------------------------------*/
1951 #if defined (__STDC__) || defined (__cplusplus)
1953 yysymprint (FILE *yyoutput
, int yytype
, YYSTYPE
*yyvaluep
)
1956 yysymprint (yyoutput
, yytype
, yyvaluep
)
1962 /* Pacify ``unused variable'' warnings. */
1965 if (yytype
< YYNTOKENS
)
1966 YYFPRINTF (yyoutput
, "token %s (", yytname
[yytype
]);
1968 YYFPRINTF (yyoutput
, "nterm %s (", yytname
[yytype
]);
1972 if (yytype
< YYNTOKENS
)
1973 YYPRINT (yyoutput
, yytoknum
[yytype
], *yyvaluep
);
1980 YYFPRINTF (yyoutput
, ")");
1983 #endif /* ! YYDEBUG */
1984 /*-----------------------------------------------.
1985 | Release the memory associated to this symbol. |
1986 `-----------------------------------------------*/
1988 #if defined (__STDC__) || defined (__cplusplus)
1990 yydestruct (const char *yymsg
, int yytype
, YYSTYPE
*yyvaluep
)
1993 yydestruct (yymsg
, yytype
, yyvaluep
)
1999 /* Pacify ``unused variable'' warnings. */
2004 YY_SYMBOL_PRINT (yymsg
, yytype
, yyvaluep
, yylocationp
);
2015 /* Prevent warnings from -Wmissing-prototypes. */
2017 #ifdef YYPARSE_PARAM
2018 # if defined (__STDC__) || defined (__cplusplus)
2019 int yyparse (void *YYPARSE_PARAM
);
2023 #else /* ! YYPARSE_PARAM */
2024 #if defined (__STDC__) || defined (__cplusplus)
2029 #endif /* ! YYPARSE_PARAM */
2033 /* The look-ahead symbol. */
2036 /* The semantic value of the look-ahead symbol. */
2039 /* Number of syntax errors so far. */
2048 #ifdef YYPARSE_PARAM
2049 # if defined (__STDC__) || defined (__cplusplus)
2050 int yyparse (void *YYPARSE_PARAM
)
2052 int yyparse (YYPARSE_PARAM
)
2053 void *YYPARSE_PARAM
;
2055 #else /* ! YYPARSE_PARAM */
2056 #if defined (__STDC__) || defined (__cplusplus)
2070 /* Number of tokens to shift before error messages enabled. */
2072 /* Look-ahead token as an internal (translated) token number. */
2075 /* Three stacks and their tools:
2076 `yyss': related to states,
2077 `yyvs': related to semantic values,
2078 `yyls': related to locations.
2080 Refer to the stacks thru separate pointers, to allow yyoverflow
2081 to reallocate them elsewhere. */
2083 /* The state stack. */
2084 short int yyssa
[YYINITDEPTH
];
2085 short int *yyss
= yyssa
;
2088 /* The semantic value stack. */
2089 YYSTYPE yyvsa
[YYINITDEPTH
];
2090 YYSTYPE
*yyvs
= yyvsa
;
2095 #define YYPOPSTACK (yyvsp--, yyssp--)
2097 YYSIZE_T yystacksize
= YYINITDEPTH
;
2099 /* The variables used to return semantic value and location from the
2104 /* When reducing, the number of symbols on the RHS of the reduced
2108 YYDPRINTF ((stderr
, "Starting parse\n"));
2113 yychar
= YYEMPTY
; /* Cause a token to be read. */
2115 /* Initialize stack pointers.
2116 Waste one element of value and location stack
2117 so that they stay on the same level as the state stack.
2118 The wasted elements are never initialized. */
2125 /*------------------------------------------------------------.
2126 | yynewstate -- Push a new state, which is found in yystate. |
2127 `------------------------------------------------------------*/
2129 /* In all cases, when you get here, the value and location stacks
2130 have just been pushed. so pushing a state here evens the stacks.
2137 if (yyss
+ yystacksize
- 1 <= yyssp
)
2139 /* Get the current used size of the three stacks, in elements. */
2140 YYSIZE_T yysize
= yyssp
- yyss
+ 1;
2144 /* Give user a chance to reallocate the stack. Use copies of
2145 these so that the &'s don't force the real ones into
2147 YYSTYPE
*yyvs1
= yyvs
;
2148 short int *yyss1
= yyss
;
2151 /* Each stack pointer address is followed by the size of the
2152 data in use in that stack, in bytes. This used to be a
2153 conditional around just the two extra args, but that might
2154 be undefined if yyoverflow is a macro. */
2155 yyoverflow (YY_("memory exhausted"),
2156 &yyss1
, yysize
* sizeof (*yyssp
),
2157 &yyvs1
, yysize
* sizeof (*yyvsp
),
2164 #else /* no yyoverflow */
2165 # ifndef YYSTACK_RELOCATE
2166 goto yyexhaustedlab
;
2168 /* Extend the stack our own way. */
2169 if (YYMAXDEPTH
<= yystacksize
)
2170 goto yyexhaustedlab
;
2172 if (YYMAXDEPTH
< yystacksize
)
2173 yystacksize
= YYMAXDEPTH
;
2176 short int *yyss1
= yyss
;
2177 union yyalloc
*yyptr
=
2178 (union yyalloc
*) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize
));
2180 goto yyexhaustedlab
;
2181 YYSTACK_RELOCATE (yyss
);
2182 YYSTACK_RELOCATE (yyvs
);
2184 # undef YYSTACK_RELOCATE
2186 YYSTACK_FREE (yyss1
);
2189 #endif /* no yyoverflow */
2191 yyssp
= yyss
+ yysize
- 1;
2192 yyvsp
= yyvs
+ yysize
- 1;
2195 YYDPRINTF ((stderr
, "Stack size increased to %lu\n",
2196 (unsigned long int) yystacksize
));
2198 if (yyss
+ yystacksize
- 1 <= yyssp
)
2202 YYDPRINTF ((stderr
, "Entering state %d\n", yystate
));
2211 /* Do appropriate processing given the current state. */
2212 /* Read a look-ahead token if we need one and don't already have one. */
2215 /* First try to decide what to do without reference to look-ahead token. */
2217 yyn
= yypact
[yystate
];
2218 if (yyn
== YYPACT_NINF
)
2221 /* Not known => get a look-ahead token if don't already have one. */
2223 /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
2224 if (yychar
== YYEMPTY
)
2226 YYDPRINTF ((stderr
, "Reading a token: "));
2230 if (yychar
<= YYEOF
)
2232 yychar
= yytoken
= YYEOF
;
2233 YYDPRINTF ((stderr
, "Now at end of input.\n"));
2237 yytoken
= YYTRANSLATE (yychar
);
2238 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
2241 /* If the proper action on seeing token YYTOKEN is to reduce or to
2242 detect an error, take that action. */
2244 if (yyn
< 0 || YYLAST
< yyn
|| yycheck
[yyn
] != yytoken
)
2249 if (yyn
== 0 || yyn
== YYTABLE_NINF
)
2258 /* Shift the look-ahead token. */
2259 YY_SYMBOL_PRINT ("Shifting", yytoken
, &yylval
, &yylloc
);
2261 /* Discard the token being shifted unless it is eof. */
2262 if (yychar
!= YYEOF
)
2268 /* Count tokens shifted since error; after three, turn off error
2277 /*-----------------------------------------------------------.
2278 | yydefault -- do the default action for the current state. |
2279 `-----------------------------------------------------------*/
2281 yyn
= yydefact
[yystate
];
2287 /*-----------------------------.
2288 | yyreduce -- Do a reduction. |
2289 `-----------------------------*/
2291 /* yyn is the number of a rule to reduce with. */
2294 /* If YYLEN is nonzero, implement the default value of the action:
2297 Otherwise, the following line sets YYVAL to garbage.
2298 This behavior is undocumented and Bison
2299 users should not rely upon it. Assigning to YYVAL
2300 unconditionally makes the parser a bit smaller, and it avoids a
2301 GCC warning that YYVAL may be used uninitialized. */
2302 yyval
= yyvsp
[1-yylen
];
2305 YY_REDUCE_PRINT (yyn
);
2309 #line 176 "ldgram.y"
2314 #line 178 "ldgram.y"
2317 lang_add_assignment(exp_assop((yyvsp
[-1].token
),(yyvsp
[-2].name
),(yyvsp
[0].etree
)));
2322 #line 186 "ldgram.y"
2324 ldlex_mri_script ();
2325 PUSH_ERROR (_("MRI style script"));
2330 #line 191 "ldgram.y"
2339 #line 206 "ldgram.y"
2341 einfo(_("%P%F: unrecognised keyword in MRI style script '%s'\n"),(yyvsp
[0].name
));
2346 #line 209 "ldgram.y"
2348 config
.map_filename
= "-";
2353 #line 215 "ldgram.y"
2354 { mri_public((yyvsp
[-2].name
), (yyvsp
[0].etree
)); }
2358 #line 217 "ldgram.y"
2359 { mri_public((yyvsp
[-2].name
), (yyvsp
[0].etree
)); }
2363 #line 219 "ldgram.y"
2364 { mri_public((yyvsp
[-1].name
), (yyvsp
[0].etree
)); }
2368 #line 221 "ldgram.y"
2369 { mri_format((yyvsp
[0].name
)); }
2373 #line 223 "ldgram.y"
2374 { mri_output_section((yyvsp
[-2].name
), (yyvsp
[0].etree
));}
2378 #line 225 "ldgram.y"
2379 { mri_output_section((yyvsp
[-1].name
), (yyvsp
[0].etree
));}
2383 #line 227 "ldgram.y"
2384 { mri_output_section((yyvsp
[-2].name
), (yyvsp
[0].etree
));}
2388 #line 229 "ldgram.y"
2389 { mri_align((yyvsp
[-2].name
),(yyvsp
[0].etree
)); }
2393 #line 231 "ldgram.y"
2394 { mri_align((yyvsp
[-2].name
),(yyvsp
[0].etree
)); }
2398 #line 233 "ldgram.y"
2399 { mri_alignmod((yyvsp
[-2].name
),(yyvsp
[0].etree
)); }
2403 #line 235 "ldgram.y"
2404 { mri_alignmod((yyvsp
[-2].name
),(yyvsp
[0].etree
)); }
2408 #line 239 "ldgram.y"
2409 { mri_name((yyvsp
[0].name
)); }
2413 #line 241 "ldgram.y"
2414 { mri_alias((yyvsp
[-2].name
),(yyvsp
[0].name
),0);}
2418 #line 243 "ldgram.y"
2419 { mri_alias ((yyvsp
[-2].name
), 0, (int) (yyvsp
[0].bigint
).integer
); }
2423 #line 245 "ldgram.y"
2424 { mri_base((yyvsp
[0].etree
)); }
2428 #line 247 "ldgram.y"
2429 { mri_truncate ((unsigned int) (yyvsp
[0].bigint
).integer
); }
2433 #line 251 "ldgram.y"
2434 { ldlex_script (); ldfile_open_command_file((yyvsp
[0].name
)); }
2438 #line 253 "ldgram.y"
2439 { ldlex_popstate (); }
2443 #line 255 "ldgram.y"
2444 { lang_add_entry ((yyvsp
[0].name
), FALSE
); }
2448 #line 260 "ldgram.y"
2449 { mri_order((yyvsp
[0].name
)); }
2453 #line 261 "ldgram.y"
2454 { mri_order((yyvsp
[0].name
)); }
2458 #line 267 "ldgram.y"
2459 { mri_load((yyvsp
[0].name
)); }
2463 #line 268 "ldgram.y"
2464 { mri_load((yyvsp
[0].name
)); }
2468 #line 273 "ldgram.y"
2469 { mri_only_load((yyvsp
[0].name
)); }
2473 #line 275 "ldgram.y"
2474 { mri_only_load((yyvsp
[0].name
)); }
2478 #line 279 "ldgram.y"
2479 { (yyval
.name
) = NULL
; }
2483 #line 286 "ldgram.y"
2484 { ldlex_expression (); }
2488 #line 288 "ldgram.y"
2489 { ldlex_popstate (); }
2493 #line 292 "ldgram.y"
2494 { ldlang_add_undef ((yyvsp
[0].name
)); }
2498 #line 294 "ldgram.y"
2499 { ldlang_add_undef ((yyvsp
[0].name
)); }
2503 #line 296 "ldgram.y"
2504 { ldlang_add_undef ((yyvsp
[0].name
)); }
2508 #line 300 "ldgram.y"
2513 #line 302 "ldgram.y"
2514 { ldlex_popstate(); }
2518 #line 323 "ldgram.y"
2519 { lang_add_target((yyvsp
[-1].name
)); }
2523 #line 325 "ldgram.y"
2524 { ldfile_add_library_path ((yyvsp
[-1].name
), FALSE
); }
2528 #line 327 "ldgram.y"
2529 { lang_add_output((yyvsp
[-1].name
), 1); }
2533 #line 329 "ldgram.y"
2534 { lang_add_output_format ((yyvsp
[-1].name
), (char *) NULL
,
2535 (char *) NULL
, 1); }
2539 #line 332 "ldgram.y"
2540 { lang_add_output_format ((yyvsp
[-5].name
), (yyvsp
[-3].name
), (yyvsp
[-1].name
), 1); }
2544 #line 334 "ldgram.y"
2545 { ldfile_set_output_arch ((yyvsp
[-1].name
), bfd_arch_unknown
); }
2549 #line 336 "ldgram.y"
2550 { command_line
.force_common_definition
= TRUE
; }
2554 #line 338 "ldgram.y"
2555 { command_line
.inhibit_common_definition
= TRUE
; }
2559 #line 341 "ldgram.y"
2560 { lang_enter_group (); }
2564 #line 343 "ldgram.y"
2565 { lang_leave_group (); }
2569 #line 345 "ldgram.y"
2570 { lang_add_map((yyvsp
[-1].name
)); }
2574 #line 347 "ldgram.y"
2575 { ldlex_script (); ldfile_open_command_file((yyvsp
[0].name
)); }
2579 #line 349 "ldgram.y"
2580 { ldlex_popstate (); }
2584 #line 351 "ldgram.y"
2586 lang_add_nocrossref ((yyvsp
[-1].nocrossref
));
2591 #line 359 "ldgram.y"
2592 { lang_add_input_file((yyvsp
[0].name
),lang_input_file_is_search_file_enum
,
2597 #line 362 "ldgram.y"
2598 { lang_add_input_file((yyvsp
[0].name
),lang_input_file_is_search_file_enum
,
2603 #line 365 "ldgram.y"
2604 { lang_add_input_file((yyvsp
[0].name
),lang_input_file_is_search_file_enum
,
2609 #line 368 "ldgram.y"
2610 { lang_add_input_file((yyvsp
[0].name
),lang_input_file_is_l_enum
,
2615 #line 371 "ldgram.y"
2616 { lang_add_input_file((yyvsp
[0].name
),lang_input_file_is_l_enum
,
2621 #line 374 "ldgram.y"
2622 { lang_add_input_file((yyvsp
[0].name
),lang_input_file_is_l_enum
,
2627 #line 377 "ldgram.y"
2628 { (yyval
.integer
) = as_needed
; as_needed
= TRUE
; }
2632 #line 379 "ldgram.y"
2633 { as_needed
= (yyvsp
[-2].integer
); }
2637 #line 381 "ldgram.y"
2638 { (yyval
.integer
) = as_needed
; as_needed
= TRUE
; }
2642 #line 383 "ldgram.y"
2643 { as_needed
= (yyvsp
[-2].integer
); }
2647 #line 385 "ldgram.y"
2648 { (yyval
.integer
) = as_needed
; as_needed
= TRUE
; }
2652 #line 387 "ldgram.y"
2653 { as_needed
= (yyvsp
[-2].integer
); }
2657 #line 402 "ldgram.y"
2658 { lang_add_entry ((yyvsp
[-1].name
), FALSE
); }
2662 #line 404 "ldgram.y"
2663 {ldlex_expression ();}
2667 #line 405 "ldgram.y"
2668 { ldlex_popstate ();
2669 lang_add_assignment (exp_assert ((yyvsp
[-3].etree
), (yyvsp
[-1].name
))); }
2673 #line 413 "ldgram.y"
2675 (yyval
.cname
) = (yyvsp
[0].name
);
2680 #line 417 "ldgram.y"
2682 (yyval
.cname
) = "*";
2687 #line 421 "ldgram.y"
2689 (yyval
.cname
) = "?";
2694 #line 428 "ldgram.y"
2696 (yyval
.wildcard
).name
= (yyvsp
[0].cname
);
2697 (yyval
.wildcard
).sorted
= none
;
2698 (yyval
.wildcard
).exclude_name_list
= NULL
;
2703 #line 434 "ldgram.y"
2705 (yyval
.wildcard
).name
= (yyvsp
[0].cname
);
2706 (yyval
.wildcard
).sorted
= none
;
2707 (yyval
.wildcard
).exclude_name_list
= (yyvsp
[-2].name_list
);
2712 #line 440 "ldgram.y"
2714 (yyval
.wildcard
).name
= (yyvsp
[-1].cname
);
2715 (yyval
.wildcard
).sorted
= by_name
;
2716 (yyval
.wildcard
).exclude_name_list
= NULL
;
2721 #line 446 "ldgram.y"
2723 (yyval
.wildcard
).name
= (yyvsp
[-1].cname
);
2724 (yyval
.wildcard
).sorted
= by_alignment
;
2725 (yyval
.wildcard
).exclude_name_list
= NULL
;
2730 #line 452 "ldgram.y"
2732 (yyval
.wildcard
).name
= (yyvsp
[-2].cname
);
2733 (yyval
.wildcard
).sorted
= by_name_alignment
;
2734 (yyval
.wildcard
).exclude_name_list
= NULL
;
2739 #line 458 "ldgram.y"
2741 (yyval
.wildcard
).name
= (yyvsp
[-2].cname
);
2742 (yyval
.wildcard
).sorted
= by_name
;
2743 (yyval
.wildcard
).exclude_name_list
= NULL
;
2748 #line 464 "ldgram.y"
2750 (yyval
.wildcard
).name
= (yyvsp
[-2].cname
);
2751 (yyval
.wildcard
).sorted
= by_alignment_name
;
2752 (yyval
.wildcard
).exclude_name_list
= NULL
;
2757 #line 470 "ldgram.y"
2759 (yyval
.wildcard
).name
= (yyvsp
[-2].cname
);
2760 (yyval
.wildcard
).sorted
= by_alignment
;
2761 (yyval
.wildcard
).exclude_name_list
= NULL
;
2766 #line 476 "ldgram.y"
2768 (yyval
.wildcard
).name
= (yyvsp
[-1].cname
);
2769 (yyval
.wildcard
).sorted
= by_name
;
2770 (yyval
.wildcard
).exclude_name_list
= (yyvsp
[-3].name_list
);
2775 #line 485 "ldgram.y"
2777 struct name_list
*tmp
;
2778 tmp
= (struct name_list
*) xmalloc (sizeof *tmp
);
2779 tmp
->name
= (yyvsp
[0].cname
);
2780 tmp
->next
= (yyvsp
[-1].name_list
);
2781 (yyval
.name_list
) = tmp
;
2786 #line 494 "ldgram.y"
2788 struct name_list
*tmp
;
2789 tmp
= (struct name_list
*) xmalloc (sizeof *tmp
);
2790 tmp
->name
= (yyvsp
[0].cname
);
2792 (yyval
.name_list
) = tmp
;
2797 #line 505 "ldgram.y"
2799 struct wildcard_list
*tmp
;
2800 tmp
= (struct wildcard_list
*) xmalloc (sizeof *tmp
);
2801 tmp
->next
= (yyvsp
[-2].wildcard_list
);
2802 tmp
->spec
= (yyvsp
[0].wildcard
);
2803 (yyval
.wildcard_list
) = tmp
;
2808 #line 514 "ldgram.y"
2810 struct wildcard_list
*tmp
;
2811 tmp
= (struct wildcard_list
*) xmalloc (sizeof *tmp
);
2813 tmp
->spec
= (yyvsp
[0].wildcard
);
2814 (yyval
.wildcard_list
) = tmp
;
2819 #line 525 "ldgram.y"
2821 struct wildcard_spec tmp
;
2822 tmp
.name
= (yyvsp
[0].name
);
2823 tmp
.exclude_name_list
= NULL
;
2825 lang_add_wild (&tmp
, NULL
, ldgram_had_keep
);
2830 #line 533 "ldgram.y"
2832 lang_add_wild (NULL
, (yyvsp
[-1].wildcard_list
), ldgram_had_keep
);
2837 #line 537 "ldgram.y"
2839 lang_add_wild (&(yyvsp
[-3].wildcard
), (yyvsp
[-1].wildcard_list
), ldgram_had_keep
);
2844 #line 545 "ldgram.y"
2845 { ldgram_had_keep
= TRUE
; }
2849 #line 547 "ldgram.y"
2850 { ldgram_had_keep
= FALSE
; }
2854 #line 553 "ldgram.y"
2856 lang_add_attribute(lang_object_symbols_statement_enum
);
2861 #line 558 "ldgram.y"
2864 lang_add_attribute(lang_constructors_statement_enum
);
2869 #line 563 "ldgram.y"
2871 constructors_sorted
= TRUE
;
2872 lang_add_attribute (lang_constructors_statement_enum
);
2877 #line 569 "ldgram.y"
2879 lang_add_data ((int) (yyvsp
[-3].integer
), (yyvsp
[-1].etree
));
2884 #line 574 "ldgram.y"
2886 lang_add_fill ((yyvsp
[-1].fill
));
2891 #line 577 "ldgram.y"
2892 {ldlex_expression ();}
2896 #line 578 "ldgram.y"
2897 { ldlex_popstate ();
2898 lang_add_assignment (exp_assert ((yyvsp
[-4].etree
), (yyvsp
[-2].name
))); }
2902 #line 594 "ldgram.y"
2903 { (yyval
.integer
) = (yyvsp
[0].token
); }
2907 #line 596 "ldgram.y"
2908 { (yyval
.integer
) = (yyvsp
[0].token
); }
2912 #line 598 "ldgram.y"
2913 { (yyval
.integer
) = (yyvsp
[0].token
); }
2917 #line 600 "ldgram.y"
2918 { (yyval
.integer
) = (yyvsp
[0].token
); }
2922 #line 602 "ldgram.y"
2923 { (yyval
.integer
) = (yyvsp
[0].token
); }
2927 #line 607 "ldgram.y"
2929 (yyval
.fill
) = exp_get_fill ((yyvsp
[0].etree
), 0, "fill value");
2934 #line 614 "ldgram.y"
2935 { (yyval
.fill
) = (yyvsp
[0].fill
); }
2939 #line 615 "ldgram.y"
2940 { (yyval
.fill
) = (fill_type
*) 0; }
2944 #line 620 "ldgram.y"
2945 { (yyval
.token
) = '+'; }
2949 #line 622 "ldgram.y"
2950 { (yyval
.token
) = '-'; }
2954 #line 624 "ldgram.y"
2955 { (yyval
.token
) = '*'; }
2959 #line 626 "ldgram.y"
2960 { (yyval
.token
) = '/'; }
2964 #line 628 "ldgram.y"
2965 { (yyval
.token
) = LSHIFT
; }
2969 #line 630 "ldgram.y"
2970 { (yyval
.token
) = RSHIFT
; }
2974 #line 632 "ldgram.y"
2975 { (yyval
.token
) = '&'; }
2979 #line 634 "ldgram.y"
2980 { (yyval
.token
) = '|'; }
2984 #line 644 "ldgram.y"
2986 lang_add_assignment (exp_assop ((yyvsp
[-1].token
), (yyvsp
[-2].name
), (yyvsp
[0].etree
)));
2991 #line 648 "ldgram.y"
2993 lang_add_assignment (exp_assop ('=', (yyvsp
[-2].name
),
2994 exp_binop ((yyvsp
[-1].token
),
2997 (yyvsp
[0].etree
))));
3002 #line 656 "ldgram.y"
3004 lang_add_assignment (exp_provide ((yyvsp
[-3].name
), (yyvsp
[-1].etree
), FALSE
));
3009 #line 660 "ldgram.y"
3011 lang_add_assignment (exp_provide ((yyvsp
[-3].name
), (yyvsp
[-1].etree
), TRUE
));
3016 #line 682 "ldgram.y"
3017 { region
= lang_memory_region_lookup ((yyvsp
[0].name
), TRUE
); }
3021 #line 685 "ldgram.y"
3026 #line 690 "ldgram.y"
3028 region
->origin
= exp_get_vma ((yyvsp
[0].etree
), 0, "origin");
3029 region
->current
= region
->origin
;
3034 #line 698 "ldgram.y"
3036 region
->length
= exp_get_vma ((yyvsp
[0].etree
), -1, "length");
3041 #line 705 "ldgram.y"
3042 { /* dummy action to avoid bison 1.25 error message */ }
3046 #line 716 "ldgram.y"
3047 { lang_set_flags (region
, (yyvsp
[0].name
), 0); }
3051 #line 718 "ldgram.y"
3052 { lang_set_flags (region
, (yyvsp
[0].name
), 1); }
3056 #line 723 "ldgram.y"
3057 { lang_startup((yyvsp
[-1].name
)); }
3061 #line 729 "ldgram.y"
3062 { ldemul_hll((char *)NULL
); }
3066 #line 734 "ldgram.y"
3067 { ldemul_hll((yyvsp
[0].name
)); }
3071 #line 736 "ldgram.y"
3072 { ldemul_hll((yyvsp
[0].name
)); }
3076 #line 744 "ldgram.y"
3077 { ldemul_syslib((yyvsp
[0].name
)); }
3081 #line 750 "ldgram.y"
3082 { lang_float(TRUE
); }
3086 #line 752 "ldgram.y"
3087 { lang_float(FALSE
); }
3091 #line 757 "ldgram.y"
3093 (yyval
.nocrossref
) = NULL
;
3098 #line 761 "ldgram.y"
3100 struct lang_nocrossref
*n
;
3102 n
= (struct lang_nocrossref
*) xmalloc (sizeof *n
);
3103 n
->name
= (yyvsp
[-1].name
);
3104 n
->next
= (yyvsp
[0].nocrossref
);
3105 (yyval
.nocrossref
) = n
;
3110 #line 770 "ldgram.y"
3112 struct lang_nocrossref
*n
;
3114 n
= (struct lang_nocrossref
*) xmalloc (sizeof *n
);
3115 n
->name
= (yyvsp
[-2].name
);
3116 n
->next
= (yyvsp
[0].nocrossref
);
3117 (yyval
.nocrossref
) = n
;
3122 #line 780 "ldgram.y"
3123 { ldlex_expression (); }
3127 #line 782 "ldgram.y"
3128 { ldlex_popstate (); (yyval
.etree
)=(yyvsp
[0].etree
);}
3132 #line 787 "ldgram.y"
3133 { (yyval
.etree
) = exp_unop ('-', (yyvsp
[0].etree
)); }
3137 #line 789 "ldgram.y"
3138 { (yyval
.etree
) = (yyvsp
[-1].etree
); }
3142 #line 791 "ldgram.y"
3143 { (yyval
.etree
) = exp_unop ((int) (yyvsp
[-3].integer
),(yyvsp
[-1].etree
)); }
3147 #line 793 "ldgram.y"
3148 { (yyval
.etree
) = exp_unop ('!', (yyvsp
[0].etree
)); }
3152 #line 795 "ldgram.y"
3153 { (yyval
.etree
) = (yyvsp
[0].etree
); }
3157 #line 797 "ldgram.y"
3158 { (yyval
.etree
) = exp_unop ('~', (yyvsp
[0].etree
));}
3162 #line 800 "ldgram.y"
3163 { (yyval
.etree
) = exp_binop ('*', (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3167 #line 802 "ldgram.y"
3168 { (yyval
.etree
) = exp_binop ('/', (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3172 #line 804 "ldgram.y"
3173 { (yyval
.etree
) = exp_binop ('%', (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3177 #line 806 "ldgram.y"
3178 { (yyval
.etree
) = exp_binop ('+', (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3182 #line 808 "ldgram.y"
3183 { (yyval
.etree
) = exp_binop ('-' , (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3187 #line 810 "ldgram.y"
3188 { (yyval
.etree
) = exp_binop (LSHIFT
, (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3192 #line 812 "ldgram.y"
3193 { (yyval
.etree
) = exp_binop (RSHIFT
, (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3197 #line 814 "ldgram.y"
3198 { (yyval
.etree
) = exp_binop (EQ
, (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3202 #line 816 "ldgram.y"
3203 { (yyval
.etree
) = exp_binop (NE
, (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3207 #line 818 "ldgram.y"
3208 { (yyval
.etree
) = exp_binop (LE
, (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3212 #line 820 "ldgram.y"
3213 { (yyval
.etree
) = exp_binop (GE
, (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3217 #line 822 "ldgram.y"
3218 { (yyval
.etree
) = exp_binop ('<' , (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3222 #line 824 "ldgram.y"
3223 { (yyval
.etree
) = exp_binop ('>' , (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3227 #line 826 "ldgram.y"
3228 { (yyval
.etree
) = exp_binop ('&' , (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3232 #line 828 "ldgram.y"
3233 { (yyval
.etree
) = exp_binop ('^' , (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3237 #line 830 "ldgram.y"
3238 { (yyval
.etree
) = exp_binop ('|' , (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3242 #line 832 "ldgram.y"
3243 { (yyval
.etree
) = exp_trinop ('?' , (yyvsp
[-4].etree
), (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3247 #line 834 "ldgram.y"
3248 { (yyval
.etree
) = exp_binop (ANDAND
, (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3252 #line 836 "ldgram.y"
3253 { (yyval
.etree
) = exp_binop (OROR
, (yyvsp
[-2].etree
), (yyvsp
[0].etree
)); }
3257 #line 838 "ldgram.y"
3258 { (yyval
.etree
) = exp_nameop (DEFINED
, (yyvsp
[-1].name
)); }
3262 #line 840 "ldgram.y"
3263 { (yyval
.etree
) = exp_bigintop ((yyvsp
[0].bigint
).integer
, (yyvsp
[0].bigint
).str
); }
3267 #line 842 "ldgram.y"
3268 { (yyval
.etree
) = exp_nameop (SIZEOF_HEADERS
,0); }
3272 #line 845 "ldgram.y"
3273 { (yyval
.etree
) = exp_nameop (ALIGNOF
,(yyvsp
[-1].name
)); }
3277 #line 847 "ldgram.y"
3278 { (yyval
.etree
) = exp_nameop (SIZEOF
,(yyvsp
[-1].name
)); }
3282 #line 849 "ldgram.y"
3283 { (yyval
.etree
) = exp_nameop (ADDR
,(yyvsp
[-1].name
)); }
3287 #line 851 "ldgram.y"
3288 { (yyval
.etree
) = exp_nameop (LOADADDR
,(yyvsp
[-1].name
)); }
3292 #line 853 "ldgram.y"
3293 { (yyval
.etree
) = exp_nameop (CONSTANT
,(yyvsp
[-1].name
)); }
3297 #line 855 "ldgram.y"
3298 { (yyval
.etree
) = exp_unop (ABSOLUTE
, (yyvsp
[-1].etree
)); }
3302 #line 857 "ldgram.y"
3303 { (yyval
.etree
) = exp_unop (ALIGN_K
,(yyvsp
[-1].etree
)); }
3307 #line 859 "ldgram.y"
3308 { (yyval
.etree
) = exp_binop (ALIGN_K
,(yyvsp
[-3].etree
),(yyvsp
[-1].etree
)); }
3312 #line 861 "ldgram.y"
3313 { (yyval
.etree
) = exp_binop (DATA_SEGMENT_ALIGN
, (yyvsp
[-3].etree
), (yyvsp
[-1].etree
)); }
3317 #line 863 "ldgram.y"
3318 { (yyval
.etree
) = exp_binop (DATA_SEGMENT_RELRO_END
, (yyvsp
[-1].etree
), (yyvsp
[-3].etree
)); }
3322 #line 865 "ldgram.y"
3323 { (yyval
.etree
) = exp_unop (DATA_SEGMENT_END
, (yyvsp
[-1].etree
)); }
3327 #line 867 "ldgram.y"
3328 { /* The operands to the expression node are
3329 placed in the opposite order from the way
3330 in which they appear in the script as
3331 that allows us to reuse more code in
3333 (yyval
.etree
) = exp_binop (SEGMENT_START
,
3335 exp_nameop (NAME
, (yyvsp
[-3].name
))); }
3339 #line 876 "ldgram.y"
3340 { (yyval
.etree
) = exp_unop (ALIGN_K
,(yyvsp
[-1].etree
)); }
3344 #line 878 "ldgram.y"
3345 { (yyval
.etree
) = exp_nameop (NAME
,(yyvsp
[0].name
)); }
3349 #line 880 "ldgram.y"
3350 { (yyval
.etree
) = exp_binop (MAX_K
, (yyvsp
[-3].etree
), (yyvsp
[-1].etree
) ); }
3354 #line 882 "ldgram.y"
3355 { (yyval
.etree
) = exp_binop (MIN_K
, (yyvsp
[-3].etree
), (yyvsp
[-1].etree
) ); }
3359 #line 884 "ldgram.y"
3360 { (yyval
.etree
) = exp_unop (CEILP2
, (yyvsp
[-1].etree
)); }
3364 #line 886 "ldgram.y"
3365 { (yyval
.etree
) = exp_unop (NACL_MASK
, (yyvsp
[-1].etree
)); }
3369 #line 888 "ldgram.y"
3370 { (yyval
.etree
) = exp_assert ((yyvsp
[-3].etree
), (yyvsp
[-1].name
)); }
3374 #line 890 "ldgram.y"
3375 { (yyval
.etree
) = exp_nameop (ORIGIN
, (yyvsp
[-1].name
)); }
3379 #line 892 "ldgram.y"
3380 { (yyval
.etree
) = exp_nameop (LENGTH
, (yyvsp
[-1].name
)); }
3384 #line 897 "ldgram.y"
3385 { (yyval
.name
) = (yyvsp
[0].name
); }
3389 #line 898 "ldgram.y"
3390 { (yyval
.name
) = 0; }
3394 #line 902 "ldgram.y"
3395 { (yyval
.etree
) = (yyvsp
[-1].etree
); }
3399 #line 903 "ldgram.y"
3400 { (yyval
.etree
) = 0; }
3404 #line 907 "ldgram.y"
3405 { (yyval
.etree
) = (yyvsp
[-1].etree
); }
3409 #line 908 "ldgram.y"
3410 { (yyval
.etree
) = 0; }
3414 #line 912 "ldgram.y"
3415 { (yyval
.etree
) = (yyvsp
[-1].etree
); }
3419 #line 913 "ldgram.y"
3420 { (yyval
.etree
) = 0; }
3424 #line 917 "ldgram.y"
3425 { (yyval
.token
) = ONLY_IF_RO
; }
3429 #line 918 "ldgram.y"
3430 { (yyval
.token
) = ONLY_IF_RW
; }
3434 #line 919 "ldgram.y"
3435 { (yyval
.token
) = SPECIAL
; }
3439 #line 920 "ldgram.y"
3440 { (yyval
.token
) = 0; }
3444 #line 923 "ldgram.y"
3445 { ldlex_expression(); }
3449 #line 927 "ldgram.y"
3450 { ldlex_popstate (); ldlex_script (); }
3454 #line 930 "ldgram.y"
3456 lang_enter_output_section_statement((yyvsp
[-8].name
), (yyvsp
[-6].etree
),
3458 (yyvsp
[-4].etree
), (yyvsp
[-3].etree
), (yyvsp
[-5].etree
), (yyvsp
[-1].token
));
3463 #line 936 "ldgram.y"
3464 { ldlex_popstate (); ldlex_expression (); }
3468 #line 938 "ldgram.y"
3471 lang_leave_output_section_statement ((yyvsp
[0].fill
), (yyvsp
[-3].name
), (yyvsp
[-1].section_phdr
), (yyvsp
[-2].name
));
3476 #line 943 "ldgram.y"
3481 #line 945 "ldgram.y"
3482 { ldlex_expression (); }
3486 #line 947 "ldgram.y"
3487 { ldlex_popstate (); ldlex_script (); }
3491 #line 949 "ldgram.y"
3493 lang_enter_overlay ((yyvsp
[-5].etree
), (yyvsp
[-2].etree
));
3498 #line 954 "ldgram.y"
3499 { ldlex_popstate (); ldlex_expression (); }
3503 #line 956 "ldgram.y"
3506 lang_leave_overlay ((yyvsp
[-11].etree
), (int) (yyvsp
[-12].integer
),
3507 (yyvsp
[0].fill
), (yyvsp
[-3].name
), (yyvsp
[-1].section_phdr
), (yyvsp
[-2].name
));
3512 #line 966 "ldgram.y"
3513 { ldlex_expression (); }
3517 #line 968 "ldgram.y"
3520 lang_add_assignment (exp_assop ('=', ".", (yyvsp
[0].etree
)));
3525 #line 976 "ldgram.y"
3526 { sectype
= noload_section
; }
3530 #line 977 "ldgram.y"
3531 { sectype
= noalloc_section
; }
3535 #line 978 "ldgram.y"
3536 { sectype
= noalloc_section
; }
3540 #line 979 "ldgram.y"
3541 { sectype
= noalloc_section
; }
3545 #line 980 "ldgram.y"
3546 { sectype
= noalloc_section
; }
3550 #line 985 "ldgram.y"
3551 { sectype
= normal_section
; }
3555 #line 986 "ldgram.y"
3556 { sectype
= normal_section
; }
3560 #line 990 "ldgram.y"
3561 { (yyval
.etree
) = (yyvsp
[-2].etree
); }
3565 #line 991 "ldgram.y"
3566 { (yyval
.etree
) = (etree_type
*)NULL
; }
3570 #line 996 "ldgram.y"
3571 { (yyval
.etree
) = (yyvsp
[-3].etree
); }
3575 #line 998 "ldgram.y"
3576 { (yyval
.etree
) = (yyvsp
[-7].etree
); }
3580 #line 1002 "ldgram.y"
3581 { (yyval
.etree
) = (yyvsp
[-1].etree
); }
3585 #line 1003 "ldgram.y"
3586 { (yyval
.etree
) = (etree_type
*) NULL
; }
3590 #line 1008 "ldgram.y"
3591 { (yyval
.integer
) = 0; }
3595 #line 1010 "ldgram.y"
3596 { (yyval
.integer
) = 1; }
3600 #line 1015 "ldgram.y"
3601 { (yyval
.name
) = (yyvsp
[0].name
); }
3605 #line 1016 "ldgram.y"
3606 { (yyval
.name
) = DEFAULT_MEMORY_REGION
; }
3610 #line 1021 "ldgram.y"
3612 (yyval
.section_phdr
) = NULL
;
3617 #line 1025 "ldgram.y"
3619 struct lang_output_section_phdr_list
*n
;
3621 n
= ((struct lang_output_section_phdr_list
*)
3622 xmalloc (sizeof *n
));
3623 n
->name
= (yyvsp
[0].name
);
3625 n
->next
= (yyvsp
[-2].section_phdr
);
3626 (yyval
.section_phdr
) = n
;
3631 #line 1041 "ldgram.y"
3634 lang_enter_overlay_section ((yyvsp
[0].name
));
3639 #line 1046 "ldgram.y"
3640 { ldlex_popstate (); ldlex_expression (); }
3644 #line 1048 "ldgram.y"
3647 lang_leave_overlay_section ((yyvsp
[0].fill
), (yyvsp
[-1].section_phdr
));
3652 #line 1065 "ldgram.y"
3653 { ldlex_expression (); }
3657 #line 1066 "ldgram.y"
3658 { ldlex_popstate (); }
3662 #line 1068 "ldgram.y"
3664 lang_new_phdr ((yyvsp
[-5].name
), (yyvsp
[-3].etree
), (yyvsp
[-2].phdr
).filehdr
, (yyvsp
[-2].phdr
).phdrs
, (yyvsp
[-2].phdr
).at
,
3665 (yyvsp
[-2].phdr
).flags
);
3670 #line 1076 "ldgram.y"
3672 (yyval
.etree
) = (yyvsp
[0].etree
);
3674 if ((yyvsp
[0].etree
)->type
.node_class
== etree_name
3675 && (yyvsp
[0].etree
)->type
.node_code
== NAME
)
3679 static const char * const phdr_types
[] =
3681 "PT_NULL", "PT_LOAD", "PT_DYNAMIC",
3682 "PT_INTERP", "PT_NOTE", "PT_SHLIB",
3686 s
= (yyvsp
[0].etree
)->name
.name
;
3688 i
< sizeof phdr_types
/ sizeof phdr_types
[0];
3690 if (strcmp (s
, phdr_types
[i
]) == 0)
3692 (yyval
.etree
) = exp_intop (i
);
3695 if (i
== sizeof phdr_types
/ sizeof phdr_types
[0])
3697 if (strcmp (s
, "PT_GNU_EH_FRAME") == 0)
3698 (yyval
.etree
) = exp_intop (0x6474e550);
3699 else if (strcmp (s
, "PT_GNU_STACK") == 0)
3700 (yyval
.etree
) = exp_intop (0x6474e551);
3704 %X%P:%S: unknown phdr type `%s' (try integer literal)\n"),
3706 (yyval
.etree
) = exp_intop (0);
3714 #line 1120 "ldgram.y"
3716 memset (&(yyval
.phdr
), 0, sizeof (struct phdr_info
));
3721 #line 1124 "ldgram.y"
3723 (yyval
.phdr
) = (yyvsp
[0].phdr
);
3724 if (strcmp ((yyvsp
[-2].name
), "FILEHDR") == 0 && (yyvsp
[-1].etree
) == NULL
)
3725 (yyval
.phdr
).filehdr
= TRUE
;
3726 else if (strcmp ((yyvsp
[-2].name
), "PHDRS") == 0 && (yyvsp
[-1].etree
) == NULL
)
3727 (yyval
.phdr
).phdrs
= TRUE
;
3728 else if (strcmp ((yyvsp
[-2].name
), "FLAGS") == 0 && (yyvsp
[-1].etree
) != NULL
)
3729 (yyval
.phdr
).flags
= (yyvsp
[-1].etree
);
3731 einfo (_("%X%P:%S: PHDRS syntax error at `%s'\n"), (yyvsp
[-2].name
));
3736 #line 1136 "ldgram.y"
3738 (yyval
.phdr
) = (yyvsp
[0].phdr
);
3739 (yyval
.phdr
).at
= (yyvsp
[-2].etree
);
3744 #line 1144 "ldgram.y"
3746 (yyval
.etree
) = NULL
;
3751 #line 1148 "ldgram.y"
3753 (yyval
.etree
) = (yyvsp
[-1].etree
);
3758 #line 1154 "ldgram.y"
3760 ldlex_version_file ();
3761 PUSH_ERROR (_("dynamic list"));
3766 #line 1159 "ldgram.y"
3774 #line 1176 "ldgram.y"
3776 lang_append_dynamic_list ((yyvsp
[-1].versyms
));
3781 #line 1184 "ldgram.y"
3783 ldlex_version_file ();
3784 PUSH_ERROR (_("VERSION script"));
3789 #line 1189 "ldgram.y"
3797 #line 1198 "ldgram.y"
3799 ldlex_version_script ();
3804 #line 1202 "ldgram.y"
3811 #line 1214 "ldgram.y"
3813 lang_register_vers_node (NULL
, (yyvsp
[-2].versnode
), NULL
);
3818 #line 1218 "ldgram.y"
3820 lang_register_vers_node ((yyvsp
[-4].name
), (yyvsp
[-2].versnode
), NULL
);
3825 #line 1222 "ldgram.y"
3827 lang_register_vers_node ((yyvsp
[-5].name
), (yyvsp
[-3].versnode
), (yyvsp
[-1].deflist
));
3832 #line 1229 "ldgram.y"
3834 (yyval
.deflist
) = lang_add_vers_depend (NULL
, (yyvsp
[0].name
));
3839 #line 1233 "ldgram.y"
3841 (yyval
.deflist
) = lang_add_vers_depend ((yyvsp
[-1].deflist
), (yyvsp
[0].name
));
3846 #line 1240 "ldgram.y"
3848 (yyval
.versnode
) = lang_new_vers_node (NULL
, NULL
);
3853 #line 1244 "ldgram.y"
3855 (yyval
.versnode
) = lang_new_vers_node ((yyvsp
[-1].versyms
), NULL
);
3860 #line 1248 "ldgram.y"
3862 (yyval
.versnode
) = lang_new_vers_node ((yyvsp
[-1].versyms
), NULL
);
3867 #line 1252 "ldgram.y"
3869 (yyval
.versnode
) = lang_new_vers_node (NULL
, (yyvsp
[-1].versyms
));
3874 #line 1256 "ldgram.y"
3876 (yyval
.versnode
) = lang_new_vers_node ((yyvsp
[-5].versyms
), (yyvsp
[-1].versyms
));
3881 #line 1263 "ldgram.y"
3883 (yyval
.versyms
) = lang_new_vers_pattern (NULL
, (yyvsp
[0].name
), ldgram_vers_current_lang
, FALSE
);
3888 #line 1267 "ldgram.y"
3890 (yyval
.versyms
) = lang_new_vers_pattern (NULL
, (yyvsp
[0].name
), ldgram_vers_current_lang
, TRUE
);
3895 #line 1271 "ldgram.y"
3897 (yyval
.versyms
) = lang_new_vers_pattern ((yyvsp
[-2].versyms
), (yyvsp
[0].name
), ldgram_vers_current_lang
, FALSE
);
3902 #line 1275 "ldgram.y"
3904 (yyval
.versyms
) = lang_new_vers_pattern ((yyvsp
[-2].versyms
), (yyvsp
[0].name
), ldgram_vers_current_lang
, TRUE
);
3909 #line 1279 "ldgram.y"
3911 (yyval
.name
) = ldgram_vers_current_lang
;
3912 ldgram_vers_current_lang
= (yyvsp
[-1].name
);
3917 #line 1284 "ldgram.y"
3919 struct bfd_elf_version_expr
*pat
;
3920 for (pat
= (yyvsp
[-2].versyms
); pat
->next
!= NULL
; pat
= pat
->next
);
3921 pat
->next
= (yyvsp
[-8].versyms
);
3922 (yyval
.versyms
) = (yyvsp
[-2].versyms
);
3923 ldgram_vers_current_lang
= (yyvsp
[-3].name
);
3928 #line 1292 "ldgram.y"
3930 (yyval
.name
) = ldgram_vers_current_lang
;
3931 ldgram_vers_current_lang
= (yyvsp
[-1].name
);
3936 #line 1297 "ldgram.y"
3938 (yyval
.versyms
) = (yyvsp
[-2].versyms
);
3939 ldgram_vers_current_lang
= (yyvsp
[-3].name
);
3944 #line 1302 "ldgram.y"
3946 (yyval
.versyms
) = lang_new_vers_pattern (NULL
, "global", ldgram_vers_current_lang
, FALSE
);
3951 #line 1306 "ldgram.y"
3953 (yyval
.versyms
) = lang_new_vers_pattern ((yyvsp
[-2].versyms
), "global", ldgram_vers_current_lang
, FALSE
);
3958 #line 1310 "ldgram.y"
3960 (yyval
.versyms
) = lang_new_vers_pattern (NULL
, "local", ldgram_vers_current_lang
, FALSE
);
3965 #line 1314 "ldgram.y"
3967 (yyval
.versyms
) = lang_new_vers_pattern ((yyvsp
[-2].versyms
), "local", ldgram_vers_current_lang
, FALSE
);
3972 #line 1318 "ldgram.y"
3974 (yyval
.versyms
) = lang_new_vers_pattern (NULL
, "extern", ldgram_vers_current_lang
, FALSE
);
3979 #line 1322 "ldgram.y"
3981 (yyval
.versyms
) = lang_new_vers_pattern ((yyvsp
[-2].versyms
), "extern", ldgram_vers_current_lang
, FALSE
);
3989 /* Line 1126 of yacc.c. */
3990 #line 3991 "ldgram.c"
3996 YY_STACK_PRINT (yyss
, yyssp
);
4001 /* Now `shift' the result of the reduction. Determine what state
4002 that goes to, based on the state we popped back to and the rule
4003 number reduced by. */
4007 yystate
= yypgoto
[yyn
- YYNTOKENS
] + *yyssp
;
4008 if (0 <= yystate
&& yystate
<= YYLAST
&& yycheck
[yystate
] == *yyssp
)
4009 yystate
= yytable
[yystate
];
4011 yystate
= yydefgoto
[yyn
- YYNTOKENS
];
4016 /*------------------------------------.
4017 | yyerrlab -- here on detecting error |
4018 `------------------------------------*/
4020 /* If not already recovering from an error, report this error. */
4025 yyn
= yypact
[yystate
];
4027 if (YYPACT_NINF
< yyn
&& yyn
< YYLAST
)
4029 int yytype
= YYTRANSLATE (yychar
);
4030 YYSIZE_T yysize0
= yytnamerr (0, yytname
[yytype
]);
4031 YYSIZE_T yysize
= yysize0
;
4033 int yysize_overflow
= 0;
4035 # define YYERROR_VERBOSE_ARGS_MAXIMUM 5
4036 char const *yyarg
[YYERROR_VERBOSE_ARGS_MAXIMUM
];
4040 /* This is so xgettext sees the translatable formats that are
4041 constructed on the fly. */
4042 YY_("syntax error, unexpected %s");
4043 YY_("syntax error, unexpected %s, expecting %s");
4044 YY_("syntax error, unexpected %s, expecting %s or %s");
4045 YY_("syntax error, unexpected %s, expecting %s or %s or %s");
4046 YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
4050 static char const yyunexpected
[] = "syntax error, unexpected %s";
4051 static char const yyexpecting
[] = ", expecting %s";
4052 static char const yyor
[] = " or %s";
4053 char yyformat
[sizeof yyunexpected
4054 + sizeof yyexpecting
- 1
4055 + ((YYERROR_VERBOSE_ARGS_MAXIMUM
- 2)
4056 * (sizeof yyor
- 1))];
4057 char const *yyprefix
= yyexpecting
;
4059 /* Start YYX at -YYN if negative to avoid negative indexes in
4061 int yyxbegin
= yyn
< 0 ? -yyn
: 0;
4063 /* Stay within bounds of both yycheck and yytname. */
4064 int yychecklim
= YYLAST
- yyn
;
4065 int yyxend
= yychecklim
< YYNTOKENS
? yychecklim
: YYNTOKENS
;
4068 yyarg
[0] = yytname
[yytype
];
4069 yyfmt
= yystpcpy (yyformat
, yyunexpected
);
4071 for (yyx
= yyxbegin
; yyx
< yyxend
; ++yyx
)
4072 if (yycheck
[yyx
+ yyn
] == yyx
&& yyx
!= YYTERROR
)
4074 if (yycount
== YYERROR_VERBOSE_ARGS_MAXIMUM
)
4078 yyformat
[sizeof yyunexpected
- 1] = '\0';
4081 yyarg
[yycount
++] = yytname
[yyx
];
4082 yysize1
= yysize
+ yytnamerr (0, yytname
[yyx
]);
4083 yysize_overflow
|= yysize1
< yysize
;
4085 yyfmt
= yystpcpy (yyfmt
, yyprefix
);
4089 yyf
= YY_(yyformat
);
4090 yysize1
= yysize
+ yystrlen (yyf
);
4091 yysize_overflow
|= yysize1
< yysize
;
4094 if (!yysize_overflow
&& yysize
<= YYSTACK_ALLOC_MAXIMUM
)
4095 yymsg
= (char *) YYSTACK_ALLOC (yysize
);
4098 /* Avoid sprintf, as that infringes on the user's name space.
4099 Don't have undefined behavior even if the translation
4100 produced a string with the wrong number of "%s"s. */
4103 while ((*yyp
= *yyf
))
4105 if (*yyp
== '%' && yyf
[1] == 's' && yyi
< yycount
)
4107 yyp
+= yytnamerr (yyp
, yyarg
[yyi
++]);
4117 YYSTACK_FREE (yymsg
);
4121 yyerror (YY_("syntax error"));
4122 goto yyexhaustedlab
;
4126 #endif /* YYERROR_VERBOSE */
4127 yyerror (YY_("syntax error"));
4132 if (yyerrstatus
== 3)
4134 /* If just tried and failed to reuse look-ahead token after an
4135 error, discard it. */
4137 if (yychar
<= YYEOF
)
4139 /* Return failure if at end of input. */
4140 if (yychar
== YYEOF
)
4145 yydestruct ("Error: discarding", yytoken
, &yylval
);
4150 /* Else will try to reuse look-ahead token after shifting the error
4155 /*---------------------------------------------------.
4156 | yyerrorlab -- error raised explicitly by YYERROR. |
4157 `---------------------------------------------------*/
4160 /* Pacify compilers like GCC when the user code never invokes
4161 YYERROR and the label yyerrorlab therefore never appears in user
4172 /*-------------------------------------------------------------.
4173 | yyerrlab1 -- common code for both syntax error and YYERROR. |
4174 `-------------------------------------------------------------*/
4176 yyerrstatus
= 3; /* Each real token shifted decrements this. */
4180 yyn
= yypact
[yystate
];
4181 if (yyn
!= YYPACT_NINF
)
4184 if (0 <= yyn
&& yyn
<= YYLAST
&& yycheck
[yyn
] == YYTERROR
)
4192 /* Pop the current state because it cannot handle the error token. */
4197 yydestruct ("Error: popping", yystos
[yystate
], yyvsp
);
4200 YY_STACK_PRINT (yyss
, yyssp
);
4209 /* Shift the error token. */
4210 YY_SYMBOL_PRINT ("Shifting", yystos
[yyn
], yyvsp
, yylsp
);
4216 /*-------------------------------------.
4217 | yyacceptlab -- YYACCEPT comes here. |
4218 `-------------------------------------*/
4223 /*-----------------------------------.
4224 | yyabortlab -- YYABORT comes here. |
4225 `-----------------------------------*/
4231 /*-------------------------------------------------.
4232 | yyexhaustedlab -- memory exhaustion comes here. |
4233 `-------------------------------------------------*/
4235 yyerror (YY_("memory exhausted"));
4241 if (yychar
!= YYEOF
&& yychar
!= YYEMPTY
)
4242 yydestruct ("Cleanup: discarding lookahead",
4244 while (yyssp
!= yyss
)
4246 yydestruct ("Cleanup: popping",
4247 yystos
[*yyssp
], yyvsp
);
4252 YYSTACK_FREE (yyss
);
4258 #line 1332 "ldgram.y"
4264 if (ldfile_assumed_script
)
4265 einfo (_("%P:%s: file format not recognized; treating as linker script\n"),
4266 ldfile_input_filename
);
4267 if (error_index
> 0 && error_index
< ERROR_NAME_MAX
)
4268 einfo ("%P%F:%S: %s in %s\n", arg
, error_names
[error_index
-1]);
4270 einfo ("%P%F:%S: %s\n", arg
);