47 #define YYBISON_VERSION "3.0.4" 50 #define YYSKELETON_NAME "yacc.c" 81 #define parse_type(ps) builtin_type (parse_gdbarch (ps)) 85 #define GDB_YY_REMAP_PREFIX ada_ 108 static int yylex (
void);
115 const struct block *,
const char *,
int,
131 const struct block *,
char *,
int);
148 #line 149 "ada-exp.c" 150 # ifndef YY_NULLPTRPTR 151 # if defined __cplusplus && 201103L <= __cplusplus 152 # define YY_NULLPTRPTR nullptr 154 # define YY_NULLPTRPTR 0 159 #ifdef YYERROR_VERBOSE 160 # undef YYERROR_VERBOSE 161 # define YYERROR_VERBOSE 1 163 # define YYERROR_VERBOSE 0 233 #define TRUEKEYWORD 262 234 #define FALSEKEYWORD 263 235 #define COLONCOLON 264 240 #define SPECIAL_VARIABLE 269 260 #define TICK_ACCESS 289 261 #define TICK_ADDRESS 290 262 #define TICK_FIRST 291 263 #define TICK_LAST 292 264 #define TICK_LENGTH 293 267 #define TICK_MODULUS 296 269 #define TICK_RANGE 298 270 #define TICK_SIZE 299 277 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 281 #line 120 "ada-exp.y" 298 #line 299 "ada-exp.c" 302 # define YYSTYPE_IS_TRIVIAL 1 303 # define YYSTYPE_IS_DECLARED 1 315 #line 316 "ada-exp.c" 346 # ifdef __SIZE_TYPE__ 347 # define YYSIZE_T __SIZE_TYPE__ 348 # elif defined size_t 349 # define YYSIZE_T size_t 350 # elif ! defined YYSIZE_T 352 # define YYSIZE_T size_t 354 # define YYSIZE_T unsigned int 358 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) 361 # if defined YYENABLE_NLS && YYENABLE_NLS 363 # include <libintl.h> 364 # define YY_(Msgid) dgettext ("bison-runtime", Msgid) 368 # define YY_(Msgid) Msgid 373 # if (defined __GNUC__ \ 374 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \ 375 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C 376 # define YY_ATTRIBUTE(Spec) __attribute__(Spec) 378 # define YY_ATTRIBUTE(Spec) 382 #ifndef YY_ATTRIBUTE_PURE 383 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__)) 386 #ifndef YY_ATTRIBUTE_UNUSED 387 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) 390 #if !defined _Noreturn \ 391 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112) 392 # if defined _MSC_VER && 1200 <= _MSC_VER 393 # define _Noreturn __declspec (noreturn) 395 # define _Noreturn YY_ATTRIBUTE ((__noreturn__)) 400 #if ! defined lint || defined __GNUC__ 401 # define YYUSE(E) ((void) (E)) 406 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ 408 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ 409 _Pragma ("GCC diagnostic push") \ 410 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ 411 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") 412 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \ 413 _Pragma ("GCC diagnostic pop") 415 # define YY_INITIAL_VALUE(Value) Value 417 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 418 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 419 # define YY_IGNORE_MAYBE_UNINITIALIZED_END 421 #ifndef YY_INITIAL_VALUE 422 # define YY_INITIAL_VALUE(Value) 426 #if ! defined yyoverflow || YYERROR_VERBOSE 430 # ifdef YYSTACK_USE_ALLOCA 431 # if YYSTACK_USE_ALLOCA 433 # define YYSTACK_ALLOC __builtin_alloca 434 # elif defined __BUILTIN_VA_ARG_INCR 437 # define YYSTACK_ALLOC __alloca 438 # elif defined _MSC_VER 439 # define alloca _alloca 441 # define YYSTACK_ALLOC alloca 442 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS 445 # ifndef EXIT_SUCCESS 446 # define EXIT_SUCCESS 0 453 # ifdef YYSTACK_ALLOC 455 # define YYSTACK_FREE(Ptr) do { ; } while (0) 456 # ifndef YYSTACK_ALLOC_MAXIMUM 461 # define YYSTACK_ALLOC_MAXIMUM 4032 464 # define YYSTACK_ALLOC YYMALLOC 465 # define YYSTACK_FREE YYFREE 466 # ifndef YYSTACK_ALLOC_MAXIMUM 467 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM 469 # if (defined __cplusplus && ! defined EXIT_SUCCESS \ 470 && ! ((defined YYMALLOC || defined xmalloc) \ 471 && (defined YYFREE || defined xfree))) 473 # ifndef EXIT_SUCCESS 474 # define EXIT_SUCCESS 0 478 # define YYMALLOC xmalloc 479 # if ! defined xmalloc && ! defined EXIT_SUCCESS 484 # define YYFREE xfree 485 # if ! defined xfree && ! defined EXIT_SUCCESS 493 #if (! defined yyoverflow \ 494 && (! defined __cplusplus \ 495 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 505 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) 509 # define YYSTACK_BYTES(N) \ 510 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ 511 + YYSTACK_GAP_MAXIMUM) 513 # define YYCOPY_NEEDED 1 520 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \ 523 YYSIZE_T yynewbytes; \ 524 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ 525 Stack = &yyptr->Stack_alloc; \ 526 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 527 yyptr += yynewbytes / sizeof (*yyptr); \ 533 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED 537 # if defined __GNUC__ && 1 < __GNUC__ 538 # define YYCOPY(Dst, Src, Count) \ 539 __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) 541 # define YYCOPY(Dst, Src, Count) \ 545 for (yyi = 0; yyi < (Count); yyi++) \ 546 (Dst)[yyi] = (Src)[yyi]; \ 565 #define YYNSTATES 233 570 #define YYMAXUTOK 303 572 #define YYTRANSLATE(YYX) \ 573 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 579 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
580 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
581 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
582 2, 2, 2, 2, 2, 2, 2, 2, 32, 64,
583 58, 63, 34, 30, 65, 31, 57, 35, 2, 2,
584 2, 2, 2, 2, 2, 2, 2, 2, 2, 62,
585 23, 21, 24, 2, 29, 2, 2, 2, 2, 2,
586 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
587 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
588 2, 59, 2, 68, 2, 2, 2, 2, 2, 2,
589 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
590 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
591 2, 2, 2, 66, 43, 67, 2, 2, 2, 2,
592 2, 2, 2, 2, 2, 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, 2, 2, 2, 2, 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, 1, 2, 3, 4,
605 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
606 15, 16, 17, 18, 19, 20, 22, 25, 26, 27,
607 28, 33, 36, 37, 38, 39, 40, 41, 42, 44,
608 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
616 0, 185, 185, 189, 190, 192, 197, 201, 206, 212,
617 231, 231, 243, 247, 249, 257, 268, 278, 282, 285,
618 288, 292, 296, 300, 304, 307, 309, 311, 313, 317,
619 330, 334, 338, 342, 346, 350, 354, 358, 362, 366,
620 369, 373, 377, 381, 383, 388, 396, 400, 406, 417,
621 421, 425, 429, 430, 431, 432, 433, 434, 438, 440,
622 445, 447, 452, 454, 459, 461, 465, 467, 479, 481,
623 488, 491, 494, 497, 499, 501, 503, 505, 507, 509,
624 513, 515, 520, 530, 532, 539, 543, 551, 559, 563,
625 569, 571, 575, 579, 581, 583, 591, 602, 604, 609,
626 618, 619, 625, 630, 636, 645, 646, 647, 651, 656,
627 671, 670, 673, 676, 675, 682, 681, 684, 687, 686,
632 #if YYDEBUG || YYERROR_VERBOSE || 0 637 "$end",
"error",
"$undefined",
"INT",
"NULL_PTR",
"CHARLIT",
"FLOAT",
638 "TRUEKEYWORD",
"FALSEKEYWORD",
"COLONCOLON",
"STRING",
"NAME",
"DOT_ID",
639 "DOT_ALL",
"SPECIAL_VARIABLE",
"ASSIGN",
"_AND_",
"OR",
"XOR",
"THEN",
640 "ELSE",
"'='",
"NOTEQUAL",
"'<'",
"'>'",
"LEQ",
"GEQ",
"IN",
"DOTDOT",
641 "'@'",
"'+'",
"'-'",
"'&'",
"UNARY",
"'*'",
"'/'",
"MOD",
"REM",
642 "STARSTAR",
"ABS",
"NOT",
"VAR",
"ARROW",
"'|'",
"TICK_ACCESS",
643 "TICK_ADDRESS",
"TICK_FIRST",
"TICK_LAST",
"TICK_LENGTH",
"TICK_MAX",
644 "TICK_MIN",
"TICK_MODULUS",
"TICK_POS",
"TICK_RANGE",
"TICK_SIZE",
645 "TICK_TAG",
"TICK_VAL",
"'.'",
"'('",
"'['",
"NEW",
"OTHERS",
"';'",
646 "')'",
"'\\''",
"','",
"'{'",
"'}'",
"']'",
"$accept",
"start",
"exp1",
647 "primary",
"$@1",
"save_qualifier",
"simple_exp",
"arglist",
"relation",
648 "exp",
"and_exp",
"and_then_exp",
"or_exp",
"or_else_exp",
"xor_exp",
649 "tick_arglist",
"type_prefix",
"opt_type_prefix",
"var_or_type",
"block",
650 "aggregate",
"aggregate_component_list",
"positional_list",
651 "component_groups",
"others",
"component_group",
652 "component_associations",
"$@2",
"$@3",
"$@4",
"$@5",
YY_NULLPTRPTR 661 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
662 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
663 275, 61, 276, 60, 62, 277, 278, 279, 280, 64,
664 43, 45, 38, 281, 42, 47, 282, 283, 284, 285,
665 286, 287, 288, 124, 289, 290, 291, 292, 293, 294,
666 295, 296, 297, 298, 299, 300, 301, 46, 40, 91,
667 302, 303, 59, 41, 39, 44, 123, 125, 93
671 #define YYPACT_NINF -104 673 #define yypact_value_is_default(Yystate) \ 674 (!!((Yystate) == (-104))) 676 #define YYTABLE_NINF -83 678 #define yytable_value_is_error(Yytable_value) \ 685 430, -104, -104, -104, -104, -104, -104, -104, 3, -104,
686 430, 430, 544, 544, 430, 430, 289, 44, 49, 26,
687 -53, -2, 679, 86, -104, 50, 55, 48, 57, 74,
688 -28, -1, 275, 61, -104, -104, -104, 577, 219, 219,
689 9, 9, 219, 219, 54, 58, -31, 616, 42, 45,
690 289, -104, -104, 46, -104, -104, 43, -104, 430, -104,
691 -104, 430, -104, -104, 59, 59, 59, -104, -104, 277,
692 430, 430, 430, 430, 430, 430, 430, 430, 430, 430,
693 430, 430, 430, 430, 430, 430, 430, 89, 353, 392,
694 430, 430, 94, 430, 100, 430, -104, 63, 64, 65,
695 67, 277, -104, 15, -104, -104, 430, -104, 430, 430,
696 468, -104, -104, 62, -104, 289, 544, -104, -104, 125,
697 -104, -104, -104, -4, 639, -57, -104, 70, 117, 117,
698 117, 117, 117, 117, 149, 563, 174, 549, 219, 219,
699 219, 91, 91, 91, 91, 91, 430, 430, -104, 430,
700 -104, -104, -104, 430, -104, 430, -104, 430, 430, 430,
701 430, 659, -38, -104, -104, -104, 430, 468, -104, 339,
702 -104, 692, -104, -104, -104, 9, 69, 430, 430, -104,
703 506, -104, 59, 430, 561, 708, 211, -104, -104, -104,
704 -104, 81, 99, 102, 93, 430, -104, 72, -104, -104,
705 -104, -104, -104, -104, 105, 82, -104, -104, 117, 59,
706 430, -104, 430, 430, -104, 214, 430, 430, 468, -104,
707 430, -104, 117, 106, 107, -104, 109, -104, -104, -104,
716 84, 85, 88, 86, 87, 90, 91, 89, 93, 17,
717 84, 84, 84, 84, 84, 84, 84, 0, 0, 0,
718 2, 19, 39, 52, 3, 53, 54, 55, 56, 57,
719 83, 0, 16, 0, 18, 97, 95, 19, 21, 20,
720 121, 120, 23, 22, 93, 0, 0, 39, 3, 0,
721 84, 100, 105, 106, 109, 92, 0, 1, 84, 7,
722 6, 84, 68, 69, 80, 80, 80, 73, 74, 84,
723 84, 84, 84, 84, 84, 84, 84, 84, 84, 84,
724 84, 84, 84, 84, 84, 84, 84, 0, 84, 84,
725 84, 84, 0, 84, 0, 84, 79, 0, 0, 0,
726 0, 84, 12, 94, 110, 115, 84, 15, 84, 84,
727 84, 103, 99, 101, 102, 84, 84, 4, 5, 0,
728 70, 71, 72, 93, 39, 0, 25, 0, 40, 41,
729 50, 51, 42, 49, 19, 0, 16, 35, 36, 38,
730 37, 31, 32, 34, 33, 30, 84, 84, 58, 84,
731 62, 66, 59, 84, 63, 84, 67, 84, 84, 84,
732 84, 39, 0, 10, 98, 96, 84, 84, 108, 0,
733 112, 0, 117, 104, 107, 29, 0, 84, 84, 8,
734 84, 122, 80, 84, 19, 0, 16, 60, 64, 61,
735 65, 0, 0, 0, 0, 84, 9, 0, 111, 116,
736 113, 118, 81, 26, 0, 93, 27, 44, 43, 80,
737 84, 78, 84, 84, 77, 0, 84, 84, 84, 13,
738 84, 47, 46, 0, 0, 14, 0, 114, 119, 28,
745 -104, -104, 157, 17, -104, -104, 4, 75, -54, 0,
746 -104, -104, -104, -104, -104, -64, -104, -104, -15, -104,
747 -104, -104, -104, -46, -104, -104, -103, -104, -104, -104,
754 -1, 19, 20, 37, 197, 163, 22, 125, 23, 126,
755 25, 26, 27, 28, 29, 120, 30, 31, 32, 33,
756 34, 49, 50, 51, 52, 53, 54, 166, 217, 167,
765 24, 121, 122, 56, 114, 35, 179, 172, 180, 58,
766 59, 60, 35, 61, 38, 39, 48, 21, 42, 43,
767 47, 59, 60, 96, 164, 196, 57, 180, 97, 40,
768 41, 58, 107, 21, 148, 150, 151, 152, 177, 154,
769 36, 156, 62, 63, 64, 65, 66, 36, 98, 99,
770 113, 100, 67, 68, 47, 55, 69, 70, 117, 165,
771 8, 118, 136, 35, 199, 93, 91, 69, 70, 174,
772 127, 92, 103, 124, 94, 128, 129, 130, 131, 132,
773 133, 135, 137, 138, 139, 140, 141, 142, 143, 144,
774 145, 35, 95, 187, 134, 188, 104, 105, 36, 189,
775 106, 190, 88, 89, 90, 161, 168, 111, 112, 170,
776 116, 115, 169, 153, 171, 228, 146, 119, 207, 171,
777 155, 157, 158, 159, 220, 160, 36, 173, 176, 86,
778 216, 186, 202, 175, 78, 79, 80, 81, 181, 82,
779 83, 84, 85, 86, 211, 221, 78, 79, 80, 81,
780 185, 82, 83, 84, 85, 86, 214, 191, 192, 193,
781 194, 59, 60, 184, 212, 0, 198, 213, 219, 230,
782 231, 171, 232, 46, -45, 0, 162, 203, 0, 0,
783 206, 0, 204, 0, 0, 0, 0, 208, 0, 0,
784 -45, -45, -45, 62, 63, 64, 65, 66, 0, 215,
785 0, 0, 182, 67, 68, 0, 0, 69, 70, 0,
786 0, -48, 223, 224, 222, 0, 226, 227, 0, 0,
787 229, 0, 171, -82, -82, -82, -82, -48, -48, -48,
788 -82, 0, 101, 0, 0, 0, -45, -45, 102, -45,
789 0, 0, -45, 78, 79, 80, 81, 0, 82, 83,
790 84, 85, 86, 82, 83, 84, 85, 86, 0, 0,
791 -82, -82, -82, -82, 0, 0, 0, -82, 0, 101,
792 0, 0, 0, -48, -48, 102, -48, 225, 0, -48,
793 1, 2, 3, 4, 5, 6, 0, 7, 123, 0,
794 0, 9, 1, 2, 3, 4, 5, 6, 0, 7,
795 44, 0, 0, 9, 0, 0, 0, 10, 11, 12,
796 0, 13, 0, 0, 0, 0, 14, 15, 0, 10,
797 11, 12, 0, 13, -82, -82, -82, -82, 14, 15,
798 0, -82, 0, 101, 0, 16, 0, 17, 0, 102,
799 -24, 0, -24, 18, 0, 0, 0, 16, 0, 17,
800 45, 0, 0, 0, 0, 18, 1, 2, 3, 4,
801 5, 6, 0, 7, 8, 0, 0, 9, 78, 79,
802 80, 81, 147, 82, 83, 84, 85, 86, 0, 0,
803 0, 200, 201, 10, 11, 12, 0, 13, 0, 0,
804 0, 0, 14, 15, 0, 1, 2, 3, 4, 5,
805 6, 0, 7, 8, 0, 0, 9, 0, 0, 0,
806 0, 16, 149, 17, 0, 0, 0, 0, 0, 18,
807 0, 0, 10, 11, 12, 0, 13, 0, 0, 0,
808 0, 14, 15, 1, 2, 3, 4, 5, 6, 0,
809 7, 8, 0, 0, 9, 0, 0, 0, 0, 0,
810 16, 0, 17, 0, 0, 0, 0, 0, 18, 0,
811 10, 11, 12, 0, 13, 0, 0, 0, 0, 14,
812 15, 1, 2, 3, 4, 5, 6, 0, 7, 44,
813 0, 0, 9, 0, 0, 0, 0, 0, 16, 0,
814 17, 0, 0, 0, 0, 0, 18, 0, 10, 11,
815 12, 0, 13, 0, 0, 0, 0, 14, 15, 1,
816 2, 3, 4, 5, 6, 0, 7, 205, 0, 0,
817 9, 0, 0, 0, 0, 0, 16, 0, 17, 0,
818 0, 0, 0, 0, 18, 0, 10, 11, 12, 0,
819 13, 0, 0, 0, 0, 14, 15, 1, 2, 3,
820 4, 5, 6, 0, 7, 8, 0, 0, 9, 0,
821 0, 0, 0, 0, 16, 0, 17, 0, 0, 0,
822 0, 0, 18, 59, 60, 0, 12, 0, 13, 79,
823 80, 81, 0, 82, 83, 84, 85, 86, 0, 59,
824 60, 183, 78, 79, 80, 81, 0, 82, 83, 84,
825 85, 86, 16, 0, 17, 62, 63, 64, 65, 66,
826 18, 0, 0, 0, 209, 67, 68, 0, 0, 69,
827 70, 62, 63, 64, 65, 66, 0, 0, 0, 0,
828 0, 67, 68, 0, 0, 69, 70, 71, 72, 73,
829 74, 75, 76, 77, 108, 78, 79, 80, 81, 0,
830 82, 83, 84, 85, 86, 0, 87, 0, 109, 110,
831 71, 72, 73, 74, 75, 76, 77, 178, 78, 79,
832 80, 81, 0, 82, 83, 84, 85, 86, 0, 87,
833 71, 72, 73, 74, 75, 76, 77, 195, 78, 79,
834 80, 81, 0, 82, 83, 84, 85, 86, 0, 87,
835 71, 72, 73, 74, 75, 76, 77, 0, 78, 79,
836 80, 81, 0, 82, 83, 84, 85, 86, 0, 87,
837 108, 78, 79, 80, 81, 0, 82, 83, 84, 85,
838 86, 0, 0, 0, 109, 110, 210, 78, 79, 80,
839 81, 0, 82, 83, 84, 85, 86
844 0, 65, 66, 18, 50, 9, 63, 110, 65, 62,
845 12, 13, 9, 15, 10, 11, 16, 0, 14, 15,
846 16, 12, 13, 51, 9, 63, 0, 65, 56, 12,
847 13, 62, 63, 16, 88, 89, 90, 91, 42, 93,
848 44, 95, 44, 45, 46, 47, 48, 44, 49, 50,
849 50, 52, 54, 55, 50, 11, 58, 59, 58, 44,
850 11, 61, 77, 9, 167, 17, 16, 58, 59, 115,
851 70, 16, 11, 69, 17, 71, 72, 73, 74, 75,
852 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
853 86, 9, 18, 147, 77, 149, 42, 43, 44, 153,
854 42, 155, 16, 17, 18, 101, 106, 65, 63, 109,
855 67, 65, 108, 19, 110, 218, 27, 58, 182, 115,
856 20, 58, 58, 58, 42, 58, 44, 65, 3, 38,
857 58, 146, 63, 116, 29, 30, 31, 32, 68, 34,
858 35, 36, 37, 38, 63, 209, 29, 30, 31, 32,
859 146, 34, 35, 36, 37, 38, 63, 157, 158, 159,
860 160, 12, 13, 146, 65, -1, 166, 65, 63, 63,
861 63, 167, 63, 16, 0, -1, 101, 177, -1, -1,
862 180, -1, 178, -1, -1, -1, -1, 183, -1, -1,
863 16, 17, 18, 44, 45, 46, 47, 48, -1, 195,
864 -1, -1, 53, 54, 55, -1, -1, 58, 59, -1,
865 -1, 0, 212, 213, 210, -1, 216, 217, -1, -1,
866 220, -1, 218, 49, 50, 51, 52, 16, 17, 18,
867 56, -1, 58, -1, -1, -1, 62, 63, 64, 65,
868 -1, -1, 68, 29, 30, 31, 32, -1, 34, 35,
869 36, 37, 38, 34, 35, 36, 37, 38, -1, -1,
870 49, 50, 51, 52, -1, -1, -1, 56, -1, 58,
871 -1, -1, -1, 62, 63, 64, 65, 63, -1, 68,
872 3, 4, 5, 6, 7, 8, -1, 10, 11, -1,
873 -1, 14, 3, 4, 5, 6, 7, 8, -1, 10,
874 11, -1, -1, 14, -1, -1, -1, 30, 31, 32,
875 -1, 34, -1, -1, -1, -1, 39, 40, -1, 30,
876 31, 32, -1, 34, 49, 50, 51, 52, 39, 40,
877 -1, 56, -1, 58, -1, 58, -1, 60, -1, 64,
878 63, -1, 65, 66, -1, -1, -1, 58, -1, 60,
879 61, -1, -1, -1, -1, 66, 3, 4, 5, 6,
880 7, 8, -1, 10, 11, -1, -1, 14, 29, 30,
881 31, 32, 19, 34, 35, 36, 37, 38, -1, -1,
882 -1, 42, 43, 30, 31, 32, -1, 34, -1, -1,
883 -1, -1, 39, 40, -1, 3, 4, 5, 6, 7,
884 8, -1, 10, 11, -1, -1, 14, -1, -1, -1,
885 -1, 58, 20, 60, -1, -1, -1, -1, -1, 66,
886 -1, -1, 30, 31, 32, -1, 34, -1, -1, -1,
887 -1, 39, 40, 3, 4, 5, 6, 7, 8, -1,
888 10, 11, -1, -1, 14, -1, -1, -1, -1, -1,
889 58, -1, 60, -1, -1, -1, -1, -1, 66, -1,
890 30, 31, 32, -1, 34, -1, -1, -1, -1, 39,
891 40, 3, 4, 5, 6, 7, 8, -1, 10, 11,
892 -1, -1, 14, -1, -1, -1, -1, -1, 58, -1,
893 60, -1, -1, -1, -1, -1, 66, -1, 30, 31,
894 32, -1, 34, -1, -1, -1, -1, 39, 40, 3,
895 4, 5, 6, 7, 8, -1, 10, 11, -1, -1,
896 14, -1, -1, -1, -1, -1, 58, -1, 60, -1,
897 -1, -1, -1, -1, 66, -1, 30, 31, 32, -1,
898 34, -1, -1, -1, -1, 39, 40, 3, 4, 5,
899 6, 7, 8, -1, 10, 11, -1, -1, 14, -1,
900 -1, -1, -1, -1, 58, -1, 60, -1, -1, -1,
901 -1, -1, 66, 12, 13, -1, 32, -1, 34, 30,
902 31, 32, -1, 34, 35, 36, 37, 38, -1, 12,
903 13, 28, 29, 30, 31, 32, -1, 34, 35, 36,
904 37, 38, 58, -1, 60, 44, 45, 46, 47, 48,
905 66, -1, -1, -1, 53, 54, 55, -1, -1, 58,
906 59, 44, 45, 46, 47, 48, -1, -1, -1, -1,
907 -1, 54, 55, -1, -1, 58, 59, 21, 22, 23,
908 24, 25, 26, 27, 28, 29, 30, 31, 32, -1,
909 34, 35, 36, 37, 38, -1, 40, -1, 42, 43,
910 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
911 31, 32, -1, 34, 35, 36, 37, 38, -1, 40,
912 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
913 31, 32, -1, 34, 35, 36, 37, 38, -1, 40,
914 21, 22, 23, 24, 25, 26, 27, -1, 29, 30,
915 31, 32, -1, 34, 35, 36, 37, 38, -1, 40,
916 28, 29, 30, 31, 32, -1, 34, 35, 36, 37,
917 38, -1, -1, -1, 42, 43, 28, 29, 30, 31,
918 32, -1, 34, 35, 36, 37, 38
925 0, 3, 4, 5, 6, 7, 8, 10, 11, 14,
926 30, 31, 32, 34, 39, 40, 58, 60, 66, 70,
927 71, 72, 75, 77, 78, 79, 80, 81, 82, 83,
928 85, 86, 87, 88, 89, 9, 44, 72, 75, 75,
929 72, 72, 75, 75, 11, 61, 71, 75, 78, 90,
930 91, 92, 93, 94, 95, 11, 87, 0, 62, 12,
931 13, 15, 44, 45, 46, 47, 48, 54, 55, 58,
932 59, 21, 22, 23, 24, 25, 26, 27, 29, 30,
933 31, 32, 34, 35, 36, 37, 38, 40, 16, 17,
934 18, 16, 16, 17, 17, 18, 51, 56, 49, 50,
935 52, 58, 64, 11, 42, 43, 42, 63, 28, 42,
936 43, 65, 63, 78, 92, 65, 67, 78, 78, 58,
937 84, 84, 84, 11, 75, 76, 78, 78, 75, 75,
938 75, 75, 75, 75, 72, 75, 87, 75, 75, 75,
939 75, 75, 75, 75, 75, 75, 27, 19, 77, 20,
940 77, 77, 77, 19, 77, 20, 77, 58, 58, 58,
941 58, 75, 76, 74, 9, 44, 96, 98, 78, 75,
942 78, 75, 95, 65, 92, 72, 3, 42, 28, 63,
943 65, 68, 53, 28, 72, 75, 87, 77, 77, 77,
944 77, 78, 78, 78, 78, 28, 63, 73, 78, 95,
945 42, 43, 63, 78, 75, 11, 78, 84, 75, 53,
946 28, 63, 65, 65, 63, 75, 58, 97, 99, 63,
947 42, 84, 75, 78, 78, 63, 78, 78, 95, 78,
954 0, 69, 70, 71, 71, 71, 72, 72, 72, 72,
955 73, 72, 74, 72, 72, 72, 72, 72, 72, 75,
956 75, 75, 75, 75, 76, 76, 76, 76, 76, 72,
957 75, 75, 75, 75, 75, 75, 75, 75, 75, 77,
958 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
959 77, 77, 78, 78, 78, 78, 78, 78, 79, 79,
960 80, 80, 81, 81, 82, 82, 83, 83, 72, 72,
961 72, 72, 72, 72, 72, 72, 72, 72, 72, 72,
962 84, 84, 85, 86, 86, 72, 72, 72, 72, 72,
963 72, 72, 72, 87, 87, 87, 87, 88, 88, 89,
964 90, 90, 90, 91, 91, 92, 92, 92, 93, 94,
965 96, 95, 95, 97, 95, 98, 95, 95, 99, 95,
972 0, 2, 1, 1, 3, 3, 2, 2, 4, 4,
973 0, 7, 0, 6, 6, 3, 1, 1, 1, 1,
974 2, 2, 2, 2, 0, 1, 3, 3, 5, 4,
975 3, 3, 3, 3, 3, 3, 3, 3, 3, 1,
976 3, 3, 3, 5, 5, 3, 6, 6, 4, 3,
977 3, 3, 1, 1, 1, 1, 1, 1, 3, 3,
978 4, 4, 3, 3, 4, 4, 3, 3, 2, 2,
979 3, 3, 3, 2, 2, 7, 7, 5, 5, 2,
980 0, 3, 1, 1, 0, 1, 1, 1, 1, 1,
981 1, 1, 2, 1, 2, 2, 3, 2, 3, 3,
982 1, 2, 2, 2, 3, 1, 1, 3, 3, 1,
983 0, 4, 3, 0, 6, 0, 4, 3, 0, 6,
988 #define yyerrok (yyerrstatus = 0) 989 #define yyclearin (yychar = YYEMPTY) 993 #define YYACCEPT goto yyacceptlab 994 #define YYABORT goto yyabortlab 995 #define YYERROR goto yyerrorlab 998 #define YYRECOVERING() (!!yyerrstatus) 1000 #define YYBACKUP(Token, Value) \ 1002 if (yychar == YYEMPTY) \ 1006 YYPOPSTACK (yylen); \ 1012 yyerror (YY_("syntax error: cannot back up")); \ 1019 #define YYERRCODE 256 1028 # define YYFPRINTF fprintf 1031 # define YYDPRINTF(Args) \ 1038 #ifndef YY_LOCATION_PRINT 1039 # define YY_LOCATION_PRINT(File, Loc) ((void) 0) 1043 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ 1047 YYFPRINTF (stderr, "%s ", Title); \ 1048 yy_symbol_print (stderr, \ 1050 YYFPRINTF (stderr, "\n"); \ 1062 FILE *yyo = yyoutput;
1097 for (; yybottom <= yytop; yybottom++)
1099 int yybot = *yybottom;
1105 # define YY_STACK_PRINT(Bottom, Top) \ 1108 yy_stack_print ((Bottom), (Top)); \ 1122 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %lu):\n",
1125 for (yyi = 0; yyi < yynrhs; yyi++)
1130 &(
yyvsp[(yyi + 1) - (yynrhs)])
1136 # define YY_REDUCE_PRINT(Rule) \ 1139 yy_reduce_print (yyssp, yyvsp, Rule); \ 1146 # define YYDPRINTF(Args) 1147 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) 1148 # define YY_STACK_PRINT(Bottom, Top) 1149 # define YY_REDUCE_PRINT(Rule) 1155 # define YYINITDEPTH 200 1166 # define YYMAXDEPTH 10000 1173 # if defined __GLIBC__ && defined _STRING_H 1174 # define yystrlen strlen 1178 yystrlen (
const char *yystr)
1189 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE 1190 # define yystpcpy stpcpy 1195 yystpcpy (
char *yydest,
const char *yysrc)
1198 const char *
yys = yysrc;
1200 while ((*yyd++ = *
yys++) !=
'\0')
1217 yytnamerr (
char *yyres,
const char *yystr)
1222 char const *yyp = yystr;
1229 goto do_not_strip_quotes;
1233 goto do_not_strip_quotes;
1246 do_not_strip_quotes: ;
1250 return yystrlen (yystr);
1252 return yystpcpy (yyres, yystr) - yyres;
1265 yysyntax_error (
YYSIZE_T *yymsg_alloc,
char **yymsg,
1270 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1274 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1305 yyarg[yycount++] =
yytname[yytoken];
1311 int yyxbegin = yyn < 0 ? -yyn : 0;
1313 int yychecklim =
YYLAST - yyn + 1;
1317 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1321 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1327 yyarg[yycount++] =
yytname[yyx];
1330 if (! (yysize <= yysize1
1341 # define YYCASE_(N, S) \ 1345 YYCASE_(0,
YY_(
"syntax error"));
1346 YYCASE_(1,
YY_(
"syntax error, unexpected %s"));
1347 YYCASE_(2,
YY_(
"syntax error, unexpected %s, expecting %s"));
1348 YYCASE_(3,
YY_(
"syntax error, unexpected %s, expecting %s or %s"));
1349 YYCASE_(4,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s"));
1350 YYCASE_(5,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s"));
1355 YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
1361 if (*yymsg_alloc < yysize)
1363 *yymsg_alloc = 2 * yysize;
1364 if (! (yysize <= *yymsg_alloc
1376 while ((*yyp = *yyformat) !=
'\0')
1377 if (*yyp ==
'%' && yyformat[1] ==
's' && yyi < yycount)
1379 yyp += yytnamerr (yyp, yyarg[yyi++]);
1462 char *yymsg = yymsgbuf;
1463 YYSIZE_T yymsg_alloc =
sizeof yymsgbuf;
1466 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) 1476 YYDPRINTF ((stderr,
"Starting parse\n"));
1512 yyoverflow (
YY_(
"memory exhausted"),
1513 &yyss1, yysize *
sizeof (*
yyssp),
1514 &yyvs1, yysize *
sizeof (*
yyvsp),
1521 # ifndef YYSTACK_RELOCATE 1522 goto yyexhaustedlab;
1526 goto yyexhaustedlab;
1536 goto yyexhaustedlab;
1539 # undef YYSTACK_RELOCATE 1549 YYDPRINTF ((stderr,
"Stack size increased to %lu\n",
1581 YYDPRINTF ((stderr,
"Reading a token: "));
1588 YYDPRINTF ((stderr,
"Now at end of input.\n"));
1661 #line 191 "ada-exp.y" 1663 #line 1665 "ada-exp.c" 1667 #line 193 "ada-exp.y" 1669 #line 1671 "ada-exp.c" 1673 #line 198 "ada-exp.y" 1675 #line 1677 "ada-exp.c" 1679 #line 202 "ada-exp.y" 1682 #line 1684 "ada-exp.c" 1686 #line 207 "ada-exp.y" 1692 #line 1694 "ada-exp.c" 1696 #line 213 "ada-exp.y" 1698 if ((
yyvsp[-3].tval) != NULL)
1700 if ((
yyvsp[-1].lval) != 1)
1701 error (
_(
"Invalid conversion"));
1713 #line 1715 "ada-exp.c" 1717 #line 231 "ada-exp.y" 1719 #line 1721 "ada-exp.c" 1723 #line 233 "ada-exp.y" 1725 if ((
yyvsp[-6].tval) == NULL)
1726 error (
_(
"Type required for qualification"));
1732 #line 1734 "ada-exp.c" 1736 #line 243 "ada-exp.y" 1738 #line 1740 "ada-exp.c" 1742 #line 248 "ada-exp.y" 1744 #line 1746 "ada-exp.c" 1748 #line 250 "ada-exp.y" 1749 {
if ((
yyvsp[-5].tval) == NULL)
1752 error (
_(
"Cannot slice a type"));
1754 #line 1756 "ada-exp.c" 1758 #line 257 "ada-exp.y" 1760 #line 1762 "ada-exp.c" 1764 #line 269 "ada-exp.y" 1765 {
if ((
yyvsp[0].tval) != NULL)
1772 #line 1774 "ada-exp.c" 1776 #line 279 "ada-exp.y" 1778 #line 1780 "ada-exp.c" 1782 #line 289 "ada-exp.y" 1784 #line 1786 "ada-exp.c" 1788 #line 293 "ada-exp.y" 1790 #line 1792 "ada-exp.c" 1794 #line 297 "ada-exp.y" 1796 #line 1798 "ada-exp.c" 1800 #line 301 "ada-exp.y" 1802 #line 1804 "ada-exp.c" 1806 #line 304 "ada-exp.y" 1807 { (
yyval.lval) = 0; }
1808 #line 1810 "ada-exp.c" 1812 #line 308 "ada-exp.y" 1813 { (
yyval.lval) = 1; }
1814 #line 1816 "ada-exp.c" 1818 #line 310 "ada-exp.y" 1819 { (
yyval.lval) = 1; }
1820 #line 1822 "ada-exp.c" 1824 #line 312 "ada-exp.y" 1826 #line 1828 "ada-exp.c" 1830 #line 314 "ada-exp.y" 1832 #line 1834 "ada-exp.c" 1836 #line 319 "ada-exp.y" 1838 if ((
yyvsp[-2].tval) == NULL)
1839 error (
_(
"Type required within braces in coercion"));
1844 #line 1846 "ada-exp.c" 1848 #line 331 "ada-exp.y" 1850 #line 1852 "ada-exp.c" 1854 #line 335 "ada-exp.y" 1856 #line 1858 "ada-exp.c" 1860 #line 339 "ada-exp.y" 1862 #line 1864 "ada-exp.c" 1866 #line 343 "ada-exp.y" 1868 #line 1870 "ada-exp.c" 1872 #line 347 "ada-exp.y" 1874 #line 1876 "ada-exp.c" 1878 #line 351 "ada-exp.y" 1880 #line 1882 "ada-exp.c" 1884 #line 355 "ada-exp.y" 1886 #line 1888 "ada-exp.c" 1890 #line 359 "ada-exp.y" 1892 #line 1894 "ada-exp.c" 1896 #line 363 "ada-exp.y" 1898 #line 1900 "ada-exp.c" 1902 #line 370 "ada-exp.y" 1904 #line 1906 "ada-exp.c" 1908 #line 374 "ada-exp.y" 1910 #line 1912 "ada-exp.c" 1914 #line 378 "ada-exp.y" 1916 #line 1918 "ada-exp.c" 1920 #line 382 "ada-exp.y" 1922 #line 1924 "ada-exp.c" 1926 #line 384 "ada-exp.y" 1931 #line 1933 "ada-exp.c" 1935 #line 389 "ada-exp.y" 1937 if ((
yyvsp[0].tval) == NULL)
1938 error (
_(
"Right operand of 'in' must be type"));
1943 #line 1945 "ada-exp.c" 1947 #line 397 "ada-exp.y" 1951 #line 1953 "ada-exp.c" 1955 #line 401 "ada-exp.y" 1961 #line 1963 "ada-exp.c" 1965 #line 407 "ada-exp.y" 1967 if ((
yyvsp[0].tval) == NULL)
1968 error (
_(
"Right operand of 'in' must be type"));
1974 #line 1976 "ada-exp.c" 1978 #line 418 "ada-exp.y" 1980 #line 1982 "ada-exp.c" 1984 #line 422 "ada-exp.y" 1986 #line 1988 "ada-exp.c" 1990 #line 426 "ada-exp.y" 1992 #line 1994 "ada-exp.c" 1996 #line 439 "ada-exp.y" 1998 #line 2000 "ada-exp.c" 2002 #line 441 "ada-exp.y" 2004 #line 2006 "ada-exp.c" 2008 #line 446 "ada-exp.y" 2010 #line 2012 "ada-exp.c" 2014 #line 448 "ada-exp.y" 2016 #line 2018 "ada-exp.c" 2020 #line 453 "ada-exp.y" 2022 #line 2024 "ada-exp.c" 2026 #line 455 "ada-exp.y" 2028 #line 2030 "ada-exp.c" 2032 #line 460 "ada-exp.y" 2034 #line 2036 "ada-exp.c" 2038 #line 462 "ada-exp.y" 2040 #line 2042 "ada-exp.c" 2044 #line 466 "ada-exp.y" 2046 #line 2048 "ada-exp.c" 2050 #line 468 "ada-exp.y" 2052 #line 2054 "ada-exp.c" 2056 #line 480 "ada-exp.y" 2058 #line 2060 "ada-exp.c" 2062 #line 482 "ada-exp.y" 2069 #line 2071 "ada-exp.c" 2073 #line 489 "ada-exp.y" 2076 #line 2078 "ada-exp.c" 2080 #line 492 "ada-exp.y" 2083 #line 2085 "ada-exp.c" 2087 #line 495 "ada-exp.y" 2090 #line 2092 "ada-exp.c" 2094 #line 498 "ada-exp.y" 2096 #line 2098 "ada-exp.c" 2100 #line 500 "ada-exp.y" 2102 #line 2104 "ada-exp.c" 2106 #line 502 "ada-exp.y" 2108 #line 2110 "ada-exp.c" 2112 #line 504 "ada-exp.y" 2114 #line 2116 "ada-exp.c" 2118 #line 506 "ada-exp.y" 2120 #line 2122 "ada-exp.c" 2124 #line 508 "ada-exp.y" 2126 #line 2128 "ada-exp.c" 2130 #line 510 "ada-exp.y" 2132 #line 2134 "ada-exp.c" 2136 #line 514 "ada-exp.y" 2137 { (
yyval.lval) = 1; }
2138 #line 2140 "ada-exp.c" 2142 #line 516 "ada-exp.y" 2143 { (
yyval.lval) = (
yyvsp[-1].typed_val).val; }
2144 #line 2146 "ada-exp.c" 2148 #line 521 "ada-exp.y" 2150 if ((
yyvsp[0].tval) == NULL)
2151 error (
_(
"Prefix must be type"));
2155 #line 2157 "ada-exp.c" 2159 #line 532 "ada-exp.y" 2164 #line 2166 "ada-exp.c" 2168 #line 540 "ada-exp.y" 2170 #line 2172 "ada-exp.c" 2174 #line 544 "ada-exp.y" 2180 #line 2182 "ada-exp.c" 2184 #line 552 "ada-exp.y" 2190 #line 2192 "ada-exp.c" 2194 #line 560 "ada-exp.y" 2196 #line 2198 "ada-exp.c" 2200 #line 564 "ada-exp.y" 2204 #line 2206 "ada-exp.c" 2208 #line 570 "ada-exp.y" 2210 #line 2212 "ada-exp.c" 2214 #line 572 "ada-exp.y" 2216 #line 2218 "ada-exp.c" 2220 #line 576 "ada-exp.y" 2221 {
error (
_(
"NEW not implemented.")); }
2222 #line 2224 "ada-exp.c" 2226 #line 580 "ada-exp.y" 2228 #line 2230 "ada-exp.c" 2232 #line 582 "ada-exp.y" 2234 #line 2236 "ada-exp.c" 2238 #line 584 "ada-exp.y" 2241 if ((
yyval.tval) == NULL)
2246 #line 2248 "ada-exp.c" 2250 #line 592 "ada-exp.y" 2253 if ((
yyval.tval) == NULL)
2258 #line 2260 "ada-exp.c" 2262 #line 603 "ada-exp.y" 2264 #line 2266 "ada-exp.c" 2268 #line 605 "ada-exp.y" 2270 #line 2272 "ada-exp.c" 2274 #line 610 "ada-exp.y" 2280 #line 2282 "ada-exp.c" 2284 #line 618 "ada-exp.y" 2286 #line 2288 "ada-exp.c" 2290 #line 620 "ada-exp.y" 2296 #line 2298 "ada-exp.c" 2300 #line 626 "ada-exp.y" 2302 #line 2304 "ada-exp.c" 2306 #line 631 "ada-exp.y" 2312 #line 2314 "ada-exp.c" 2316 #line 637 "ada-exp.y" 2322 #line 2324 "ada-exp.c" 2326 #line 645 "ada-exp.y" 2327 { (
yyval.lval) = 1; }
2328 #line 2330 "ada-exp.c" 2332 #line 646 "ada-exp.y" 2333 { (
yyval.lval) = 1; }
2334 #line 2336 "ada-exp.c" 2338 #line 648 "ada-exp.y" 2340 #line 2342 "ada-exp.c" 2344 #line 652 "ada-exp.y" 2346 #line 2348 "ada-exp.c" 2350 #line 657 "ada-exp.y" 2356 #line 2358 "ada-exp.c" 2360 #line 671 "ada-exp.y" 2362 #line 2364 "ada-exp.c" 2366 #line 672 "ada-exp.y" 2367 { (
yyval.lval) = 1; }
2368 #line 2370 "ada-exp.c" 2372 #line 674 "ada-exp.y" 2373 { (
yyval.lval) = 1; }
2374 #line 2376 "ada-exp.c" 2378 #line 676 "ada-exp.y" 2383 #line 2385 "ada-exp.c" 2387 #line 680 "ada-exp.y" 2388 { (
yyval.lval) = 1; }
2389 #line 2391 "ada-exp.c" 2393 #line 682 "ada-exp.y" 2395 #line 2397 "ada-exp.c" 2399 #line 683 "ada-exp.y" 2401 #line 2403 "ada-exp.c" 2405 #line 685 "ada-exp.y" 2407 #line 2409 "ada-exp.c" 2411 #line 687 "ada-exp.y" 2413 #line 2415 "ada-exp.c" 2417 #line 688 "ada-exp.y" 2419 #line 2421 "ada-exp.c" 2423 #line 695 "ada-exp.y" 2425 #line 2427 "ada-exp.c" 2429 #line 697 "ada-exp.y" 2431 #line 2433 "ada-exp.c" 2435 #line 699 "ada-exp.y" 2437 #line 2439 "ada-exp.c" 2441 #line 2443 "ada-exp.c" 2490 #if ! YYERROR_VERBOSE 2493 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ 2496 char const *yymsgp =
YY_(
"syntax error");
2497 int yysyntax_error_status;
2498 yysyntax_error_status = YYSYNTAX_ERROR;
2499 if (yysyntax_error_status == 0)
2501 else if (yysyntax_error_status == 1)
2503 if (yymsg != yymsgbuf)
2509 yymsg_alloc =
sizeof yymsgbuf;
2510 yysyntax_error_status = 2;
2514 yysyntax_error_status = YYSYNTAX_ERROR;
2519 if (yysyntax_error_status == 2)
2520 goto yyexhaustedlab;
2522 # undef YYSYNTAX_ERROR 2528 if (yyerrstatus == 3)
2630 #if !defined yyoverflow || YYERROR_VERBOSE 2664 if (yymsg != yymsgbuf)
2669 #line 702 "ada-exp.y" 2681 #define yy_create_buffer ada_yy_create_buffer 2682 #define yy_delete_buffer ada_yy_delete_buffer 2683 #define yy_init_buffer ada_yy_init_buffer 2684 #define yy_load_buffer_state ada_yy_load_buffer_state 2685 #define yy_switch_to_buffer ada_yy_switch_to_buffer 2686 #define yyrestart ada_yyrestart 2687 #define yytext ada_yytext 2688 #define yywrap ada_yywrap 2694 #define qsort __qsort__dummy 2774 const struct block *orig_left_context,
2775 const char *renamed_entity,
int renamed_entity_len,
2776 const char *renaming_expr,
int max_depth)
2779 enum { SIMPLE_INDEX, LOWER_BOUND, UPPER_BOUND } slice_state;
2783 error (
_(
"Could not find renamed symbol"));
2785 if (orig_left_context == NULL)
2789 renamed_entity_len);
2791 if (sym_info.
symbol == NULL)
2796 sym_info.
block = orig_left_context;
2799 const char *inner_renamed_entity;
2800 int inner_renamed_entity_len;
2801 const char *inner_renaming_expr;
2804 &inner_renamed_entity_len,
2805 &inner_renaming_expr))
2812 inner_renamed_entity, inner_renamed_entity_len,
2813 inner_renaming_expr, max_depth - 1);
2820 slice_state = SIMPLE_INDEX;
2821 while (*renaming_expr ==
'X')
2825 switch (*renaming_expr) {
2831 slice_state = LOWER_BOUND;
2835 if (isdigit (*renaming_expr))
2838 long val = strtol (renaming_expr, &next, 10);
2839 if (next == renaming_expr)
2841 renaming_expr = next;
2853 end = strchr (renaming_expr,
'X');
2855 end = renaming_expr + strlen (renaming_expr);
2859 end - renaming_expr);
2860 renaming_expr = end;
2864 if (index_sym_info.
symbol == NULL)
2865 error (
_(
"Could not find %s"), index_name);
2868 index_sym_info.
block = orig_left_context;
2872 if (slice_state == SIMPLE_INDEX)
2878 else if (slice_state == LOWER_BOUND)
2879 slice_state = UPPER_BOUND;
2880 else if (slice_state == UPPER_BOUND)
2883 slice_state = SIMPLE_INDEX;
2895 if (slice_state != SIMPLE_INDEX)
2897 end = strchr (renaming_expr,
'X');
2899 end = renaming_expr + strlen (renaming_expr);
2901 buf = (
char *)
xmalloc (end - renaming_expr + 1);
2903 strncpy (buf, renaming_expr, end - renaming_expr);
2904 buf[end - renaming_expr] =
'\000';
2905 renaming_expr = end;
2914 if (slice_state == SIMPLE_INDEX)
2918 error (
_(
"Internal error in encoding of renaming declaration"));
2921 static const struct block*
2929 const struct block *result = NULL;
2931 if (raw_name[0] ==
'\'')
2952 if (context == NULL)
2953 error (
_(
"No file or function \"%s\"."), raw_name);
2955 error (
_(
"No function \"%s\" in specified context."), raw_name);
2960 warning (
_(
"Function name \"%s\" ambiguous here"), raw_name);
2972 int preferred_index;
2973 struct type *preferred_type;
2975 preferred_index = -1; preferred_type = NULL;
2976 for (i = 0; i < nsyms; i += 1)
2982 preferred_index = i;
2996 if (preferred_type == NULL)
2998 return syms[preferred_index].
symbol;
3008 if (
type == NULL && strcmp (
"system__address",
name) == 0)
3016 char *expanded_name =
3017 (
char *) alloca (strlen (
name) +
sizeof (
"standard__"));
3018 strcpy (expanded_name,
"standard__");
3019 strcat (expanded_name,
name);
3032 for (i = end - 1; i > 0; i -= 1)
3033 if (
name[i] ==
'.' || (
name[i] ==
'_' &&
name[i+1] ==
'_'))
3048 if (
name[0] ==
'_' &&
name[1] ==
'_')
3060 while (*sels !=
'\0')
3065 while (*sels !=
'\0' && *sels !=
'.' 3066 && (sels[0] !=
'_' || sels[1] !=
'_'))
3102 int field_name_len,
int maybe_missing)
3104 char *
field_name = (
char *) alloca ((field_name_len + 1) *
sizeof (char));
3106 strncpy (
field_name, field_name0, field_name_len);
3122 static struct type *
3126 char *subfield_name;
3143 while (*subfield_name !=
'\0' && *subfield_name !=
'.' 3144 && (subfield_name[0] !=
'_' || subfield_name[1] !=
'_'))
3147 if (subfield_name[0] ==
'\0')
3185 name_len = strlen (encoded_name);
3192 tail_index = name_len;
3193 while (tail_index > 0)
3198 struct symbol *renaming_sym;
3199 const char* renaming;
3201 const char* renaming_expr;
3202 int terminator = encoded_name[tail_index];
3204 encoded_name[tail_index] =
'\0';
3208 encoded_name[tail_index] = terminator;
3219 if (ren_sym != NULL)
3220 syms[0].
symbol = ren_sym;
3225 if (type_sym != NULL)
3226 renaming_sym = type_sym;
3227 else if (nsyms == 1)
3228 renaming_sym = syms[0].
symbol;
3230 renaming_sym = NULL;
3233 &renaming_len, &renaming_expr))
3241 int alloc_len = renaming_len + name_len - tail_index + 1;
3244 strncpy (new_name, renaming, renaming_len);
3245 strcpy (new_name + renaming_len, encoded_name + tail_index);
3246 encoded_name = new_name;
3247 name_len = renaming_len + name_len - tail_index;
3248 goto TryAfterRenaming;
3258 _(
"impossible value from ada_parse_renaming"));
3261 if (type_sym != NULL)
3263 struct type *field_type;
3265 if (tail_index == name_len)
3276 if (field_type != NULL)
3282 error (
_(
"Invalid attempt to select from type: \"%s\"."),
3285 else if (tail_index == name_len && nsyms == 0)
3304 else if (nsyms == 0)
3317 if (tail_index == name_len
3318 && strncmp (encoded_name,
"standard__",
3319 sizeof (
"standard__") - 1) == 0)
3320 error (
_(
"No definition of \"%s\" found."), name0.
ptr);
3335 error (
_(
"No symbol table is loaded. Use the \"file\" command."));
3337 error (
_(
"No definition of \"%s\" in current context."), name0.
ptr);
3339 error (
_(
"No definition of \"%s\" in specified context."), name0.
ptr);
3344 error (
_(
"Could not find renamed symbol \"%s\""), name0.
ptr);
3366 if (strchr (
name.ptr,
'.') == NULL)
3382 error (
_(
"Invalid use of type."));
3411 static struct type *
3417 static struct type *
3423 static struct type *
3426 return parse_type (par_state)->builtin_long_long;
3429 static struct type *
3432 return parse_type (par_state)->builtin_long_double;
3435 static struct type *
3442 static struct type *
3448 static struct type *
void yyerror(const char *)
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
static const yytype_uint16 yyrline[]
struct internalvar * ivar
static char * chop_separator(char *name)
static const yytype_int16 yypgoto[]
static void write_int(struct parser_state *, LONGEST, struct type *)
static struct type * write_var_or_type(struct parser_state *, const struct block *, struct stoken)
static const yytype_int16 yypact[]
int ada_get_field_index(const struct type *type, const char *field_name, int maybe_missing)
#define yypact_value_is_default(Yystate)
void write_exp_elt_sym(struct parser_state *ps, struct symbol *expelt)
#define parse_language(ps)
#define parse_gdbarch(ps)
#define TYPE_FIELD_NAME(thistype, n)
#define MAX_RENAMING_CHAIN_LENGTH
char * ada_encode(const char *decoded)
static void write_name_assoc(struct parser_state *, struct stoken)
void warning(const char *fmt,...)
static const yytype_int16 yydefgoto[]
struct type * language_string_char_type(const struct language_defn *la, struct gdbarch *gdbarch)
struct symtab * lookup_symtab(const char *name)
#define SYMBOL_CLASS(symbol)
void * memset(T *s, int c, size_t n)=delete
void internal_error(const char *file, int line, const char *fmt,...)
const char * ada_decode(const char *encoded)
const struct block * innermost_block
int have_partial_symbols(void)
static int ada_nget_field_index(const struct type *type, const char *field_name0, int field_name_len, int maybe_missing)
#define BLOCKVECTOR_BLOCK(blocklist, n)
static void yydestruct(const char *yymsg, int yytype, YYSTYPE *yyvaluep)
static const char *const yytname[]
static const yytype_int16 yycheck[]
#define YYPRINT(FILE, TYPE, VALUE)
#define TYPE_FIELD_ENUMVAL(thistype, n)
#define TYPE_FIELD_TYPE(thistype, n)
static void write_exp_op_with_string(struct parser_state *, enum exp_opcode, struct stoken)
static struct type * get_symbol_field_type(struct symbol *sym, char *encoded_field_name)
int ada_lookup_symbol_list(const char *name, const struct block *block, domain_enum domain, struct block_symbol **results)
scoped_restore_tmpl< T > make_scoped_restore(T *var)
#define YYSTACK_ALLOC_MAXIMUM
void null_cleanup(void *arg)
void write_exp_elt_block(struct parser_state *ps, const struct block *b)
#define SYMTAB_BLOCKVECTOR(symtab)
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
void write_exp_elt_longcst(struct parser_state *ps, LONGEST expelt)
struct type * check_typedef(struct type *type)
int contained_in(const struct block *a, const struct block *b)
static struct type * find_primitive_type(struct parser_state *par_state, char *name)
static const yytype_uint8 yyr1[]
static void yy_symbol_value_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
static struct parser_state * pstate
#define SYMBOL_DOMAIN(symbol)
int ada_prefer_type(struct type *type0, struct type *type1)
static void yy_symbol_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
const struct block * block
struct YYSTYPE::@2 typed_val_float
struct YYSTYPE::@1 typed_val
int symbol_read_needs_frame(struct symbol *sym)
static const yytype_uint8 yystos[]
struct cleanup * make_cleanup(make_cleanup_ftype *function, void *arg)
#define YY_STACK_PRINT(Bottom, Top)
static const yytype_uint8 yydefact[]
static struct obstack temp_parse_space
static const yytype_uint16 yytoknum[]
void write_dollar_variable(struct parser_state *ps, struct stoken str)
const struct block * block
#define SYMBOL_LINKAGE_NAME(symbol)
static struct type * type_boolean(struct parser_state *)
static struct symbol * select_possible_type_sym(struct block_symbol *syms, int nsyms)
unsigned short int yytype_uint16
const struct block * bval
void write_exp_msymbol(struct parser_state *ps, struct bound_minimal_symbol bound_msym)
enum ada_renaming_category ada_parse_renaming(struct symbol *sym, const char **renamed_entity, int *len, const char **renaming_expr)
#define YY_REDUCE_PRINT(Rule)
static struct type * type_long_double(struct parser_state *)
void write_exp_elt_opcode(struct parser_state *ps, enum exp_opcode expelt)
static void write_ambiguous_var(struct parser_state *, const struct block *, char *, int)
static const char * lexptr
static const yytype_uint8 yytranslate[]
unsigned char yytype_uint8
void _initialize_ada_exp(void)
static int chop_selector(char *name, int end)
int xsnprintf(char *str, size_t size, const char *format,...)
#define SYMBOL_BLOCK_VALUE(symbol)
static const yytype_int16 yytable[]
#define TYPE_CODE(thistype)
static struct stoken empty_stoken
struct minimal_symbol * minsym
int ada_parse(struct parser_state *par_state)
#define TYPE_NFIELDS(thistype)
static struct type * type_int(struct parser_state *)
#define SYMBOL_LANGUAGE(symbol)
struct minimal_symbol * msym
struct block_symbol ada_lookup_symbol(const char *name, const struct block *block0, domain_enum domain, int *is_a_field_of_this)
static struct type * type_long(struct parser_state *)
int have_full_symbols(void)
static struct type * type_qualifier
struct bound_minimal_symbol ada_lookup_simple_minsym(const char *name)
const struct block * get_selected_block(CORE_ADDR *addr_in_block)
static struct type * type_system_address(struct parser_state *)
const struct block * expression_context_block
static PyObject * field_name(struct type *type, int field)
static const yytype_uint8 yyr2[]
#define SYMBOL_TYPE(symbol)
struct symbol * ada_find_renaming_symbol(struct symbol *name_sym, const struct block *block)
static struct type * type_char(struct parser_state *)
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
static const struct block * block_lookup(const struct block *, const char *)
void ada_lookup_encoded_symbol(const char *name, const struct block *block, domain_enum domain, struct block_symbol *info)
struct type * language_lookup_primitive_type(const struct language_defn *la, struct gdbarch *gdbarch, const char *name)
static LONGEST convert_char_literal(struct type *, LONGEST)
void write_exp_elt_floatcst(struct parser_state *ps, const gdb_byte expelt[16])
static void write_selectors(struct parser_state *par_state, char *sels)
void write_exp_string(struct parser_state *ps, struct stoken str)
void write_exp_elt_type(struct parser_state *ps, struct type *expelt)
void error(const char *fmt,...)
static void yy_stack_print(yytype_int16 *yybottom, yytype_int16 *yytop)
struct type * lookup_pointer_type(struct type *type)
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
void do_cleanups(struct cleanup *old_chain)
static struct type * type_long_long(struct parser_state *)
#define yytable_value_is_error(Yytable_value)
static void write_var_from_sym(struct parser_state *par_state, const struct block *block, struct symbol *sym)
static void write_object_renaming(struct parser_state *, const struct block *, const char *, int, const char *, int)
static void yy_reduce_print(yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule)