47 #define YYBISON_VERSION "3.0.4" 50 #define YYSKELETON_NAME "yacc.c" 81 #define parse_type(ps) builtin_type (parse_gdbarch (ps)) 82 #define parse_f_type(ps) builtin_f_type (parse_gdbarch (ps)) 86 #define GDB_YY_REMAP_PREFIX f_ 96 static int yylex (
void);
107 # ifndef YY_NULLPTRPTR 108 # if defined __cplusplus && 201103L <= __cplusplus 109 # define YY_NULLPTRPTR nullptr 111 # define YY_NULLPTRPTR 0 116 #ifdef YYERROR_VERBOSE 117 # undef YYERROR_VERBOSE 118 # define YYERROR_VERBOSE 1 120 # define YYERROR_VERBOSE 0 180 #define STRING_LITERAL 260 181 #define BOOLEAN_LITERAL 261 184 #define NAME_OR_INT 264 187 #define INT_KEYWORD 267 188 #define INT_S2_KEYWORD 268 189 #define LOGICAL_S1_KEYWORD 269 190 #define LOGICAL_S2_KEYWORD 270 191 #define LOGICAL_S8_KEYWORD 271 192 #define LOGICAL_KEYWORD 272 193 #define REAL_KEYWORD 273 194 #define REAL_S8_KEYWORD 274 195 #define REAL_S16_KEYWORD 275 196 #define COMPLEX_S8_KEYWORD 276 197 #define COMPLEX_S16_KEYWORD 277 198 #define COMPLEX_S32_KEYWORD 278 202 #define CHARACTER 282 204 #define ASSIGN_MODIFY 284 205 #define ABOVE_COMMA 285 209 #define GREATERTHAN 289 218 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 251 # define YYSTYPE_IS_TRIVIAL 1 252 # define YYSTYPE_IS_DECLARED 1 300 # ifdef __SIZE_TYPE__ 301 # define YYSIZE_T __SIZE_TYPE__ 302 # elif defined size_t 303 # define YYSIZE_T size_t 304 # elif ! defined YYSIZE_T 306 # define YYSIZE_T size_t 308 # define YYSIZE_T unsigned int 312 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) 315 # if defined YYENABLE_NLS && YYENABLE_NLS 317 # include <libintl.h> 318 # define YY_(Msgid) dgettext ("bison-runtime", Msgid) 322 # define YY_(Msgid) Msgid 327 # if (defined __GNUC__ \ 328 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \ 329 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C 330 # define YY_ATTRIBUTE(Spec) __attribute__(Spec) 332 # define YY_ATTRIBUTE(Spec) 336 #ifndef YY_ATTRIBUTE_PURE 337 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__)) 340 #ifndef YY_ATTRIBUTE_UNUSED 341 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) 344 #if !defined _Noreturn \ 345 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112) 346 # if defined _MSC_VER && 1200 <= _MSC_VER 347 # define _Noreturn __declspec (noreturn) 349 # define _Noreturn YY_ATTRIBUTE ((__noreturn__)) 354 #if ! defined lint || defined __GNUC__ 355 # define YYUSE(E) ((void) (E)) 360 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ 362 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ 363 _Pragma ("GCC diagnostic push") \ 364 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ 365 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") 366 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \ 367 _Pragma ("GCC diagnostic pop") 369 # define YY_INITIAL_VALUE(Value) Value 371 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 372 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 373 # define YY_IGNORE_MAYBE_UNINITIALIZED_END 375 #ifndef YY_INITIAL_VALUE 376 # define YY_INITIAL_VALUE(Value) 380 #if ! defined yyoverflow || YYERROR_VERBOSE 384 # ifdef YYSTACK_USE_ALLOCA 385 # if YYSTACK_USE_ALLOCA 387 # define YYSTACK_ALLOC __builtin_alloca 388 # elif defined __BUILTIN_VA_ARG_INCR 391 # define YYSTACK_ALLOC __alloca 392 # elif defined _MSC_VER 393 # define alloca _alloca 395 # define YYSTACK_ALLOC alloca 396 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS 399 # ifndef EXIT_SUCCESS 400 # define EXIT_SUCCESS 0 407 # ifdef YYSTACK_ALLOC 409 # define YYSTACK_FREE(Ptr) do { ; } while (0) 410 # ifndef YYSTACK_ALLOC_MAXIMUM 415 # define YYSTACK_ALLOC_MAXIMUM 4032 418 # define YYSTACK_ALLOC YYMALLOC 419 # define YYSTACK_FREE YYFREE 420 # ifndef YYSTACK_ALLOC_MAXIMUM 421 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM 423 # if (defined __cplusplus && ! defined EXIT_SUCCESS \ 424 && ! ((defined YYMALLOC || defined xmalloc) \ 425 && (defined YYFREE || defined xfree))) 427 # ifndef EXIT_SUCCESS 428 # define EXIT_SUCCESS 0 432 # define YYMALLOC xmalloc 433 # if ! defined xmalloc && ! defined EXIT_SUCCESS 438 # define YYFREE xfree 439 # if ! defined xfree && ! defined EXIT_SUCCESS 447 #if (! defined yyoverflow \ 448 && (! defined __cplusplus \ 449 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 459 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) 463 # define YYSTACK_BYTES(N) \ 464 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ 465 + YYSTACK_GAP_MAXIMUM) 467 # define YYCOPY_NEEDED 1 474 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \ 477 YYSIZE_T yynewbytes; \ 478 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ 479 Stack = &yyptr->Stack_alloc; \ 480 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 481 yyptr += yynewbytes / sizeof (*yyptr); \ 487 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED 491 # if defined __GNUC__ && 1 < __GNUC__ 492 # define YYCOPY(Dst, Src, Count) \ 493 __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) 495 # define YYCOPY(Dst, Src, Count) \ 499 for (yyi = 0; yyi < (Count); yyi++) \ 500 (Dst)[yyi] = (Src)[yyi]; \ 519 #define YYNSTATES 131 524 #define YYMAXUTOK 295 526 #define YYTRANSLATE(YYX) \ 527 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 533 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
534 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
535 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
536 2, 2, 2, 2, 2, 2, 2, 51, 36, 2,
537 53, 54, 48, 46, 30, 47, 2, 49, 2, 2,
538 2, 2, 2, 2, 2, 2, 2, 2, 56, 2,
539 2, 32, 2, 33, 45, 2, 2, 2, 2, 2,
540 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
541 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
542 2, 2, 2, 2, 35, 2, 2, 2, 2, 2,
543 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
544 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
545 2, 2, 2, 2, 34, 2, 55, 2, 2, 2,
546 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
547 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
548 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
549 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
550 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
551 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
552 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
553 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
554 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
555 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
556 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
557 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
558 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
559 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
560 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
561 25, 26, 27, 28, 29, 31, 37, 38, 39, 40,
562 41, 42, 43, 44, 50, 52
569 0, 192, 192, 193, 196, 202, 207, 211, 215, 219,
570 223, 227, 237, 236, 247, 250, 254, 258, 264, 270,
571 276, 282, 288, 292, 300, 306, 314, 318, 322, 326,
572 330, 334, 338, 342, 346, 350, 354, 358, 362, 366,
573 370, 374, 378, 382, 387, 391, 395, 401, 408, 419,
574 426, 429, 432, 443, 450, 458, 495, 498, 499, 543,
575 545, 547, 549, 551, 554, 556, 558, 562, 564, 569,
576 571, 573, 575, 577, 579, 581, 583, 585, 587, 589,
577 591, 593, 595, 600, 605, 612, 616
581 #if YYDEBUG || YYERROR_VERBOSE || 0 586 "$end",
"error",
"$undefined",
"INT",
"FLOAT",
"STRING_LITERAL",
587 "BOOLEAN_LITERAL",
"NAME",
"TYPENAME",
"NAME_OR_INT",
"SIZEOF",
"ERROR",
588 "INT_KEYWORD",
"INT_S2_KEYWORD",
"LOGICAL_S1_KEYWORD",
589 "LOGICAL_S2_KEYWORD",
"LOGICAL_S8_KEYWORD",
"LOGICAL_KEYWORD",
590 "REAL_KEYWORD",
"REAL_S8_KEYWORD",
"REAL_S16_KEYWORD",
591 "COMPLEX_S8_KEYWORD",
"COMPLEX_S16_KEYWORD",
"COMPLEX_S32_KEYWORD",
592 "BOOL_AND",
"BOOL_OR",
"BOOL_NOT",
"CHARACTER",
"VARIABLE",
593 "ASSIGN_MODIFY",
"','",
"ABOVE_COMMA",
"'='",
"'?'",
"'|'",
"'^'",
"'&'",
594 "EQUAL",
"NOTEQUAL",
"LESSTHAN",
"GREATERTHAN",
"LEQ",
"GEQ",
"LSH",
595 "RSH",
"'@'",
"'+'",
"'-'",
"'*'",
"'/'",
"STARSTAR",
"'%'",
"UNARY",
596 "'('",
"')'",
"'~'",
"':'",
"$accept",
"start",
"type_exp",
"exp",
"$@1",
597 "arglist",
"subrange",
"complexnum",
"variable",
"type",
"ptype",
598 "abs_decl",
"direct_abs_decl",
"func_mod",
"typebase",
599 "nonempty_typelist",
"name",
"name_not_typename",
YY_NULLPTRPTR 608 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
609 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
610 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
611 44, 285, 61, 63, 124, 94, 38, 286, 287, 288,
612 289, 290, 291, 292, 293, 64, 43, 45, 42, 47,
613 294, 37, 295, 40, 41, 126, 58
617 #define YYPACT_NINF -57 619 #define yypact_value_is_default(Yystate) \ 620 (!!((Yystate) == (-57))) 622 #define YYTABLE_NINF -1 624 #define yytable_value_is_error(Yytable_value) \ 631 134, -57, -57, -57, -57, -57, -57, -57, 162, -57,
632 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57,
633 -57, 190, -57, -57, 190, 190, 190, 134, 190, 19,
634 -57, 359, -57, -57, -57, -35, -57, 134, -33, -33,
635 -33, -33, -33, 328, -32, -31, -33, -57, 190, 190,
636 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
637 190, 190, 190, 190, 190, 190, 190, 190, 190, 24,
638 -57, -35, -35, 234, -57, -12, -57, -11, 190, -57,
639 -57, 190, 407, 387, 359, 359, 426, 444, 461, 476,
640 476, 228, 228, 228, 228, -13, -13, 49, -39, -39,
641 -46, -46, -46, -57, -57, 80, -57, -57, -57, -57,
642 -10, -27, 277, -57, 66, 359, -33, 190, 298, -24,
643 -57, -57, 293, -57, 359, 190, 190, -57, -57, 359,
652 0, 47, 49, 54, 53, 86, 69, 48, 0, 70,
653 71, 76, 75, 73, 74, 77, 78, 79, 80, 81,
654 82, 0, 72, 51, 0, 0, 0, 0, 0, 0,
655 3, 2, 50, 4, 56, 57, 55, 0, 11, 9,
656 7, 8, 6, 0, 0, 0, 10, 1, 0, 0,
657 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
658 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
659 12, 61, 59, 0, 58, 63, 66, 0, 0, 5,
660 23, 0, 43, 44, 46, 45, 42, 41, 40, 34,
661 35, 38, 39, 36, 37, 32, 33, 26, 30, 31,
662 28, 29, 27, 85, 25, 14, 62, 60, 67, 83,
663 0, 0, 0, 65, 52, 22, 24, 21, 15, 0,
664 16, 64, 0, 68, 20, 19, 0, 13, 84, 18,
671 -57, -57, -57, 0, -57, -57, -57, -57, -57, 2,
672 -57, -56, -57, -30, -57, -57, -57, -57
678 -1, 29, 30, 43, 105, 119, 120, 44, 32, 109,
679 34, 74, 75, 76, 35, 111, 104, 36
687 31, 71, 33, 122, 68, 69, 126, 70, 38, 66,
688 67, 68, 69, 72, 70, 106, 107, 110, 73, 47,
689 70, 39, 80, 81, 40, 41, 42, 123, 46, 45,
690 127, 103, 63, 64, 65, 66, 67, 68, 69, 77,
691 70, 112, 0, 114, 121, 113, 0, 0, 82, 83,
692 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
693 94, 95, 96, 97, 98, 99, 100, 101, 102, 1,
694 2, 3, 4, 5, 0, 7, 8, 0, 115, 0,
695 0, 116, 0, 1, 2, 3, 4, 5, 0, 7,
696 8, 0, 21, 0, 23, 64, 65, 66, 67, 68,
697 69, 0, 70, 0, 0, 118, 21, 0, 23, 0,
698 0, 0, 0, 0, 116, 0, 24, 124, 0, 27,
699 0, 28, 0, 0, 128, 129, 130, 25, 26, 0,
700 0, 0, 0, 27, 0, 28, 117, 1, 2, 3,
701 4, 5, 6, 7, 8, 0, 9, 10, 11, 12,
702 13, 14, 15, 16, 17, 18, 19, 20, 0, 0,
703 21, 22, 23, 0, 0, 1, 2, 3, 4, 5,
704 24, 7, 8, 0, 0, 0, 0, 0, 0, 0,
705 0, 25, 26, 0, 0, 0, 0, 27, 21, 28,
706 23, 0, 0, 1, 2, 3, 4, 5, 24, 7,
707 8, 0, 0, 0, 0, 0, 0, 0, 0, 25,
708 26, 0, 0, 0, 0, 37, 21, 28, 23, 0,
709 0, 0, 0, 0, 0, 0, 24, 0, 0, 0,
710 0, 0, 0, 0, 0, 0, 0, 25, 26, 0,
711 0, 0, 6, 27, 0, 28, 9, 10, 11, 12,
712 13, 14, 15, 16, 17, 18, 19, 20, 0, 0,
713 0, 22, 0, 0, 0, 0, 0, 0, 0, 0,
714 71, 61, 62, 63, 64, 65, 66, 67, 68, 69,
715 0, 70, 72, 0, 0, 6, 0, 73, 108, 9,
716 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
717 20, 6, 0, 0, 22, 9, 10, 11, 12, 13,
718 14, 15, 16, 17, 18, 19, 20, 0, 0, 0,
719 22, 0, 48, 49, 0, 0, 0, 50, 0, 0,
720 51, 108, 52, 53, 54, 55, 56, 57, 58, 59,
721 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
722 0, 70, 48, 49, 125, 0, 0, 50, 78, 0,
723 51, 0, 52, 53, 54, 55, 56, 57, 58, 59,
724 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
725 0, 70, 79, 48, 49, 0, 0, 0, 50, 0,
726 0, 51, 0, 52, 53, 54, 55, 56, 57, 58,
727 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
728 69, 48, 70, 0, 0, 0, 0, 0, 0, 0,
729 0, 52, 53, 54, 55, 56, 57, 58, 59, 60,
730 61, 62, 63, 64, 65, 66, 67, 68, 69, 0,
731 70, 52, 53, 54, 55, 56, 57, 58, 59, 60,
732 61, 62, 63, 64, 65, 66, 67, 68, 69, 0,
733 70, 53, 54, 55, 56, 57, 58, 59, 60, 61,
734 62, 63, 64, 65, 66, 67, 68, 69, 0, 70,
735 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
736 64, 65, 66, 67, 68, 69, 0, 70, 55, 56,
737 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
738 67, 68, 69, 0, 70, 57, 58, 59, 60, 61,
739 62, 63, 64, 65, 66, 67, 68, 69, 0, 70
744 0, 36, 0, 30, 50, 51, 30, 53, 8, 48,
745 49, 50, 51, 48, 53, 71, 72, 73, 53, 0,
746 53, 21, 54, 54, 24, 25, 26, 54, 28, 27,
747 54, 7, 45, 46, 47, 48, 49, 50, 51, 37,
748 53, 53, -1, 54, 54, 75, -1, -1, 48, 49,
749 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
750 60, 61, 62, 63, 64, 65, 66, 67, 68, 3,
751 4, 5, 6, 7, -1, 9, 10, -1, 78, -1,
752 -1, 81, -1, 3, 4, 5, 6, 7, -1, 9,
753 10, -1, 26, -1, 28, 46, 47, 48, 49, 50,
754 51, -1, 53, -1, -1, 105, 26, -1, 28, -1,
755 -1, -1, -1, -1, 114, -1, 36, 117, -1, 53,
756 -1, 55, -1, -1, 122, 125, 126, 47, 48, -1,
757 -1, -1, -1, 53, -1, 55, 56, 3, 4, 5,
758 6, 7, 8, 9, 10, -1, 12, 13, 14, 15,
759 16, 17, 18, 19, 20, 21, 22, 23, -1, -1,
760 26, 27, 28, -1, -1, 3, 4, 5, 6, 7,
761 36, 9, 10, -1, -1, -1, -1, -1, -1, -1,
762 -1, 47, 48, -1, -1, -1, -1, 53, 26, 55,
763 28, -1, -1, 3, 4, 5, 6, 7, 36, 9,
764 10, -1, -1, -1, -1, -1, -1, -1, -1, 47,
765 48, -1, -1, -1, -1, 53, 26, 55, 28, -1,
766 -1, -1, -1, -1, -1, -1, 36, -1, -1, -1,
767 -1, -1, -1, -1, -1, -1, -1, 47, 48, -1,
768 -1, -1, 8, 53, -1, 55, 12, 13, 14, 15,
769 16, 17, 18, 19, 20, 21, 22, 23, -1, -1,
770 -1, 27, -1, -1, -1, -1, -1, -1, -1, -1,
771 36, 43, 44, 45, 46, 47, 48, 49, 50, 51,
772 -1, 53, 48, -1, -1, 8, -1, 53, 54, 12,
773 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
774 23, 8, -1, -1, 27, 12, 13, 14, 15, 16,
775 17, 18, 19, 20, 21, 22, 23, -1, -1, -1,
776 27, -1, 24, 25, -1, -1, -1, 29, -1, -1,
777 32, 54, 34, 35, 36, 37, 38, 39, 40, 41,
778 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
779 -1, 53, 24, 25, 56, -1, -1, 29, 30, -1,
780 32, -1, 34, 35, 36, 37, 38, 39, 40, 41,
781 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
782 -1, 53, 54, 24, 25, -1, -1, -1, 29, -1,
783 -1, 32, -1, 34, 35, 36, 37, 38, 39, 40,
784 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
785 51, 24, 53, -1, -1, -1, -1, -1, -1, -1,
786 -1, 34, 35, 36, 37, 38, 39, 40, 41, 42,
787 43, 44, 45, 46, 47, 48, 49, 50, 51, -1,
788 53, 34, 35, 36, 37, 38, 39, 40, 41, 42,
789 43, 44, 45, 46, 47, 48, 49, 50, 51, -1,
790 53, 35, 36, 37, 38, 39, 40, 41, 42, 43,
791 44, 45, 46, 47, 48, 49, 50, 51, -1, 53,
792 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
793 46, 47, 48, 49, 50, 51, -1, 53, 37, 38,
794 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
795 49, 50, 51, -1, 53, 39, 40, 41, 42, 43,
796 44, 45, 46, 47, 48, 49, 50, 51, -1, 53
803 0, 3, 4, 5, 6, 7, 8, 9, 10, 12,
804 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
805 23, 26, 27, 28, 36, 47, 48, 53, 55, 58,
806 59, 60, 65, 66, 67, 71, 74, 53, 60, 60,
807 60, 60, 60, 60, 64, 66, 60, 0, 24, 25,
808 29, 32, 34, 35, 36, 37, 38, 39, 40, 41,
809 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
810 53, 36, 48, 53, 68, 69, 70, 66, 30, 54,
811 54, 54, 60, 60, 60, 60, 60, 60, 60, 60,
812 60, 60, 60, 60, 60, 60, 60, 60, 60, 60,
813 60, 60, 60, 7, 73, 61, 68, 68, 54, 66,
814 68, 72, 53, 70, 54, 60, 60, 56, 60, 62,
815 63, 54, 30, 54, 60, 56, 30, 54, 66, 60,
822 0, 57, 58, 58, 59, 60, 60, 60, 60, 60,
823 60, 60, 61, 60, 62, 62, 62, 62, 63, 63,
824 63, 63, 64, 60, 60, 60, 60, 60, 60, 60,
825 60, 60, 60, 60, 60, 60, 60, 60, 60, 60,
826 60, 60, 60, 60, 60, 60, 60, 60, 60, 60,
827 60, 60, 60, 60, 60, 65, 66, 67, 67, 68,
828 68, 68, 68, 68, 69, 69, 69, 70, 70, 71,
829 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
830 71, 71, 71, 72, 72, 73, 74
836 0, 2, 1, 1, 1, 3, 2, 2, 2, 2,
837 2, 2, 0, 5, 0, 1, 1, 3, 3, 2,
838 2, 1, 3, 3, 4, 3, 3, 3, 3, 3,
839 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
840 3, 3, 3, 3, 3, 3, 3, 1, 1, 1,
841 1, 1, 4, 1, 1, 1, 1, 1, 2, 1,
842 2, 1, 2, 1, 3, 2, 1, 2, 3, 1,
843 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
848 #define yyerrok (yyerrstatus = 0) 849 #define yyclearin (yychar = YYEMPTY) 853 #define YYACCEPT goto yyacceptlab 854 #define YYABORT goto yyabortlab 855 #define YYERROR goto yyerrorlab 858 #define YYRECOVERING() (!!yyerrstatus) 860 #define YYBACKUP(Token, Value) \ 862 if (yychar == YYEMPTY) \ 866 YYPOPSTACK (yylen); \ 872 yyerror (YY_("syntax error: cannot back up")); \ 879 #define YYERRCODE 256 888 # define YYFPRINTF fprintf 891 # define YYDPRINTF(Args) \ 898 #ifndef YY_LOCATION_PRINT 899 # define YY_LOCATION_PRINT(File, Loc) ((void) 0) 903 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ 907 YYFPRINTF (stderr, "%s ", Title); \ 908 yy_symbol_print (stderr, \ 910 YYFPRINTF (stderr, "\n"); \ 922 FILE *yyo = yyoutput;
957 for (; yybottom <= yytop; yybottom++)
959 int yybot = *yybottom;
965 # define YY_STACK_PRINT(Bottom, Top) \ 968 yy_stack_print ((Bottom), (Top)); \ 982 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %lu):\n",
985 for (yyi = 0; yyi < yynrhs; yyi++)
990 &(
yyvsp[(yyi + 1) - (yynrhs)])
996 # define YY_REDUCE_PRINT(Rule) \ 999 yy_reduce_print (yyssp, yyvsp, Rule); \ 1006 # define YYDPRINTF(Args) 1007 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) 1008 # define YY_STACK_PRINT(Bottom, Top) 1009 # define YY_REDUCE_PRINT(Rule) 1015 # define YYINITDEPTH 200 1026 # define YYMAXDEPTH 10000 1033 # if defined __GLIBC__ && defined _STRING_H 1034 # define yystrlen strlen 1038 yystrlen (
const char *yystr)
1049 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE 1050 # define yystpcpy stpcpy 1055 yystpcpy (
char *yydest,
const char *yysrc)
1058 const char *
yys = yysrc;
1060 while ((*yyd++ = *
yys++) !=
'\0')
1077 yytnamerr (
char *yyres,
const char *yystr)
1082 char const *yyp = yystr;
1089 goto do_not_strip_quotes;
1093 goto do_not_strip_quotes;
1106 do_not_strip_quotes: ;
1110 return yystrlen (yystr);
1112 return yystpcpy (yyres, yystr) - yyres;
1125 yysyntax_error (
YYSIZE_T *yymsg_alloc,
char **yymsg,
1130 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1134 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1165 yyarg[yycount++] =
yytname[yytoken];
1171 int yyxbegin = yyn < 0 ? -yyn : 0;
1173 int yychecklim =
YYLAST - yyn + 1;
1177 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1181 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1187 yyarg[yycount++] =
yytname[yyx];
1190 if (! (yysize <= yysize1
1201 # define YYCASE_(N, S) \ 1205 YYCASE_(0,
YY_(
"syntax error"));
1206 YYCASE_(1,
YY_(
"syntax error, unexpected %s"));
1207 YYCASE_(2,
YY_(
"syntax error, unexpected %s, expecting %s"));
1208 YYCASE_(3,
YY_(
"syntax error, unexpected %s, expecting %s or %s"));
1209 YYCASE_(4,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s"));
1210 YYCASE_(5,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s"));
1215 YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
1221 if (*yymsg_alloc < yysize)
1223 *yymsg_alloc = 2 * yysize;
1224 if (! (yysize <= *yymsg_alloc
1236 while ((*yyp = *yyformat) !=
'\0')
1237 if (*yyp ==
'%' && yyformat[1] ==
's' && yyi < yycount)
1239 yyp += yytnamerr (yyp, yyarg[yyi++]);
1322 char *yymsg = yymsgbuf;
1323 YYSIZE_T yymsg_alloc =
sizeof yymsgbuf;
1326 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) 1336 YYDPRINTF ((stderr,
"Starting parse\n"));
1372 yyoverflow (
YY_(
"memory exhausted"),
1373 &yyss1, yysize *
sizeof (*
yyssp),
1374 &yyvs1, yysize *
sizeof (*
yyvsp),
1381 # ifndef YYSTACK_RELOCATE 1382 goto yyexhaustedlab;
1386 goto yyexhaustedlab;
1396 goto yyexhaustedlab;
1399 # undef YYSTACK_RELOCATE 1409 YYDPRINTF ((stderr,
"Stack size increased to %lu\n",
1441 YYDPRINTF ((stderr,
"Reading a token: "));
1448 YYDPRINTF ((stderr,
"Now at end of input.\n"));
1525 #line 1527 "f-exp.c" 1531 #line 1533 "f-exp.c" 1537 #line 1539 "f-exp.c" 1543 #line 1545 "f-exp.c" 1549 #line 1551 "f-exp.c" 1555 #line 1557 "f-exp.c" 1561 #line 1563 "f-exp.c" 1567 #line 1569 "f-exp.c" 1573 #line 1575 "f-exp.c" 1579 OP_F77_UNDETERMINED_ARGLIST);
1583 OP_F77_UNDETERMINED_ARGLIST); }
1584 #line 1586 "f-exp.c" 1590 #line 1592 "f-exp.c" 1596 #line 1598 "f-exp.c" 1602 #line 1604 "f-exp.c" 1610 #line 1612 "f-exp.c" 1618 #line 1620 "f-exp.c" 1626 #line 1628 "f-exp.c" 1634 #line 1636 "f-exp.c" 1640 #line 1642 "f-exp.c" 1648 ->builtin_complex_s16);
1650 #line 1652 "f-exp.c" 1658 #line 1660 "f-exp.c" 1666 #line 1668 "f-exp.c" 1672 #line 1674 "f-exp.c" 1678 #line 1680 "f-exp.c" 1684 #line 1686 "f-exp.c" 1690 #line 1692 "f-exp.c" 1696 #line 1698 "f-exp.c" 1702 #line 1704 "f-exp.c" 1708 #line 1710 "f-exp.c" 1714 #line 1716 "f-exp.c" 1720 #line 1722 "f-exp.c" 1726 #line 1728 "f-exp.c" 1732 #line 1734 "f-exp.c" 1738 #line 1740 "f-exp.c" 1744 #line 1746 "f-exp.c" 1750 #line 1752 "f-exp.c" 1756 #line 1758 "f-exp.c" 1762 #line 1764 "f-exp.c" 1768 #line 1770 "f-exp.c" 1774 #line 1776 "f-exp.c" 1780 #line 1782 "f-exp.c" 1786 #line 1788 "f-exp.c" 1794 #line 1796 "f-exp.c" 1803 #line 1805 "f-exp.c" 1810 (
yyvsp[0].ssym).stoken.length, 0, &val);
1816 #line 1818 "f-exp.c" 1825 #line 1827 "f-exp.c" 1838 #line 1840 "f-exp.c" 1847 #line 1849 "f-exp.c" 1857 #line 1859 "f-exp.c" 1886 if (msymbol.
minsym != NULL)
1889 error (
_(
"No symbol table is loaded. Use the \"file\" command."));
1891 error (
_(
"No symbol \"%s\" in current context."),
1895 #line 1897 "f-exp.c" 1904 struct type *follow_type = (
yyvsp[-1].tval);
1921 if (array_size != -1)
1939 (
yyval.tval) = follow_type;
1941 #line 1943 "f-exp.c" 1947 #line 1949 "f-exp.c" 1953 #line 1955 "f-exp.c" 1959 #line 1961 "f-exp.c" 1965 #line 1967 "f-exp.c" 1971 #line 1973 "f-exp.c" 1977 #line 1979 "f-exp.c" 1983 #line 1985 "f-exp.c" 1988 { (
yyval.voidval) = 0; }
1989 #line 1991 "f-exp.c" 1995 #line 1997 "f-exp.c" 2001 #line 2003 "f-exp.c" 2007 #line 2009 "f-exp.c" 2013 #line 2015 "f-exp.c" 2019 #line 2021 "f-exp.c" 2025 #line 2027 "f-exp.c" 2031 #line 2033 "f-exp.c" 2037 #line 2039 "f-exp.c" 2043 #line 2045 "f-exp.c" 2049 #line 2051 "f-exp.c" 2055 #line 2057 "f-exp.c" 2061 #line 2063 "f-exp.c" 2067 #line 2069 "f-exp.c" 2073 #line 2075 "f-exp.c" 2079 #line 2081 "f-exp.c" 2085 (
yyval.ivec)[0] = 1;
2088 #line 2090 "f-exp.c" 2093 {
int len =
sizeof (
struct type *) * (++((
yyvsp[-2].ivec)[0]) + 1);
2097 #line 2099 "f-exp.c" 2103 #line 2105 "f-exp.c" 2107 #line 2109 "f-exp.c" 2156 #if ! YYERROR_VERBOSE 2159 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ 2162 char const *yymsgp =
YY_(
"syntax error");
2163 int yysyntax_error_status;
2164 yysyntax_error_status = YYSYNTAX_ERROR;
2165 if (yysyntax_error_status == 0)
2167 else if (yysyntax_error_status == 1)
2169 if (yymsg != yymsgbuf)
2175 yymsg_alloc =
sizeof yymsgbuf;
2176 yysyntax_error_status = 2;
2180 yysyntax_error_status = YYSYNTAX_ERROR;
2185 if (yysyntax_error_status == 2)
2186 goto yyexhaustedlab;
2188 # undef YYSYNTAX_ERROR 2194 if (yyerrstatus == 3)
2296 #if !defined yyoverflow || YYERROR_VERBOSE 2330 if (yymsg != yymsgbuf)
2346 const char *p,
int len,
int parsed_float,
YYSTYPE *putithere)
2355 struct type *signed_type;
2356 struct type *unsigned_type;
2366 for (tmp2 = tmp; *tmp2; ++tmp2)
2367 if (*tmp2 ==
'd' || *tmp2 ==
'D')
2415 if (len == 0 && c ==
'l')
2417 else if (len == 0 && c ==
'u')
2422 if (c >=
'0' && c <=
'9')
2424 else if (c >=
'a' && c <=
'f')
2435 if ((prevn >= n) && n != 0)
2440 if ((unsigned_p && (
unsigned)prevn >= (
unsigned)n))
2467 unsigned_type =
parse_type (par_state)->builtin_unsigned_long;
2468 signed_type =
parse_type (par_state)->builtin_long;
2474 unsigned_type =
parse_type (par_state)->builtin_unsigned_int;
2475 signed_type =
parse_type (par_state)->builtin_int;
2483 if (unsigned_p || (n & high_bit))
2502 {
".or.",
BOOL_OR, BINOP_END },
2503 {
".OR.",
BOOL_OR, BINOP_END },
2506 {
".eq.",
EQUAL, BINOP_END },
2507 {
".EQ.",
EQUAL, BINOP_END },
2508 {
".eqv.",
EQUAL, BINOP_END },
2511 {
".EQV.",
EQUAL, BINOP_END },
2514 {
".le.",
LEQ, BINOP_END },
2515 {
".LE.",
LEQ, BINOP_END },
2516 {
".ge.",
GEQ, BINOP_END },
2517 {
".GE.",
GEQ, BINOP_END },
2522 { NULL, 0, BINOP_END }
2554 {
"sizeof",
SIZEOF, BINOP_END },
2557 { NULL, 0, BINOP_END }
2568 #define GROWBY_MIN_SIZE 64 2570 #define CHECKBUF(size) \ 2572 if (tempbufindex + (size) >= tempbufsize) \ 2574 growbuf_by_size (size); \ 2607 const char *tokptr =
lexptr;
2609 for (
tempbufindex = 0, tokptr++; *tokptr !=
'\0'; tokptr++)
2614 if (*(tokptr + 1) == *
lexptr)
2641 unsigned int i,
token;
2642 const char *tokstart;
2680 if (strncmp (tokstart,
"**", 2) == 0)
2687 switch (c = *tokstart)
2740 int got_dot = 0, got_e = 0, got_d = 0, toktype;
2741 const char *p = tokstart;
2744 if (c ==
'0' && (p[1] ==
'x' || p[1] ==
'X'))
2749 else if (c ==
'0' && (p[1]==
't' || p[1]==
'T' 2750 || p[1]==
'd' || p[1]==
'D'))
2758 if (!hex && !got_e && (*p ==
'e' || *p ==
'E'))
2759 got_dot = got_e = 1;
2760 else if (!hex && !got_d && (*p ==
'd' || *p ==
'D'))
2761 got_dot = got_d = 1;
2762 else if (!hex && !got_dot && *p ==
'.')
2764 else if (((got_e && (p[-1] ==
'e' || p[-1] ==
'E'))
2765 || (got_d && (p[-1] ==
'd' || p[-1] ==
'D')))
2766 && (*p ==
'-' || *p ==
'+'))
2772 else if ((*p < '0' || *p >
'9')
2773 && ((*p < 'a' || *p >
'z')
2774 && (*p < 'A' || *p >
'Z')))
2778 got_dot|got_e|got_d,
2780 if (toktype ==
ERROR)
2782 char *err_copy = (
char *) alloca (p - tokstart + 1);
2784 memcpy (err_copy, tokstart, p - tokstart);
2785 err_copy[p - tokstart] = 0;
2786 error (
_(
"Invalid number \"%s\"."), err_copy);
2817 if (!(c ==
'_' || c ==
'$' || c ==
':' 2818 || (c >=
'a' && c <=
'z') || (c >=
'A' && c <=
'Z')))
2820 error (
_(
"Invalid character '%c' in expression."), c);
2823 for (c = tokstart[namelen];
2824 (c ==
'_' || c ==
'$' || c ==
':' || (c >=
'0' && c <=
'9')
2825 || (c >=
'a' && c <=
'z') || (c >=
'A' && c <=
'Z'));
2826 c = tokstart[++namelen]);
2831 if (namelen == 2 && tokstart[0] ==
'i' && tokstart[1] ==
'f')
2850 if (*tokstart ==
'$')
2872 for (i = 0; i < ARRAY_SIZE (lookup_domains); ++i)
2876 memset (&is_a_field_of_this, 0,
sizeof (is_a_field_of_this));
2882 ? &is_a_field_of_this : NULL);
2903 && ((tokstart[0] >=
'a' && tokstart[0] <
'a' +
input_radix - 10)
2904 || (tokstart[0] >=
'A' && tokstart[0] <
'A' +
input_radix - 10)))
2940 error (
_(
"A %s in expression, near `%s'."), (msg ? msg :
"error"),
lexptr);
struct internalvar * ivar
static void yy_stack_print(yytype_int16 *yybottom, yytype_int16 *yytop)
void write_exp_elt_sym(struct parser_state *ps, struct symbol *expelt)
struct type * create_static_range_type(struct type *result_type, struct type *index_type, LONGEST low_bound, LONGEST high_bound)
#define parse_language(ps)
int f_parse(struct parser_state *par_state)
static const yytype_uint8 yystos[]
static const yytype_int8 yypgoto[]
#define parse_gdbarch(ps)
#define LOGICAL_S8_KEYWORD
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
bool parse_float(const char *p, int len, const struct type *type, gdb_byte *data)
static void growbuf_by_size(int)
enum type_pieces pop_type(void)
int gdbarch_int_bit(struct gdbarch *gdbarch)
struct type * create_array_type(struct type *result_type, struct type *element_type, struct type *range_type)
static void yy_symbol_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
#define SYMBOL_CLASS(symbol)
void * memset(T *s, int c, size_t n)=delete
static const struct f77_boolean_val boolean_values[]
int gdbarch_long_bit(struct gdbarch *gdbarch)
const struct block * innermost_block
int have_partial_symbols(void)
static const yytype_uint8 yydefact[]
static const char *const yytname[]
static const yytype_int8 yydefgoto[]
struct block_symbol lookup_symbol(const char *name, const struct block *block, domain_enum domain, struct field_of_this_result *is_a_field_of_this)
void push_type(enum type_pieces tp)
#define YYPRINT(FILE, TYPE, VALUE)
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
unsigned short int yytype_uint16
scoped_restore_tmpl< T > make_scoped_restore(T *var)
unsigned char yytype_uint8
static const yytype_int8 yycheck[]
void write_exp_elt_block(struct parser_state *ps, const struct block *b)
void write_exp_elt_longcst(struct parser_state *ps, LONGEST expelt)
struct type * check_typedef(struct type *type)
static int parse_number(struct parser_state *, const char *, int, int, YYSTYPE *)
int contained_in(const struct block *a, const struct block *b)
void range_error(const char *string,...)
const struct block * block
struct YYSTYPE::@2 typed_val_float
#define yytable_value_is_error(Yytable_value)
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
struct YYSTYPE::@1 typed_val
int symbol_read_needs_frame(struct symbol *sym)
#define COMPLEX_S16_KEYWORD
static const yytype_uint8 yyr2[]
void yyerror(const char *)
static const struct token dot_ops[]
#define COMPLEX_S8_KEYWORD
static const yytype_uint8 yytable[]
#define YYSTACK_ALLOC_MAXIMUM
static const yytype_uint16 yytoknum[]
void write_dollar_variable(struct parser_state *ps, struct stoken str)
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
unsigned short int yytype_uint16
#define YY_REDUCE_PRINT(Rule)
const struct block * bval
static const yytype_uint16 yyrline[]
static int match_string_literal(void)
void write_exp_msymbol(struct parser_state *ps, struct bound_minimal_symbol bound_msym)
#define COMPLEX_S32_KEYWORD
#define LOGICAL_S1_KEYWORD
PTR xrealloc(PTR ptr, size_t size)
void write_exp_elt_opcode(struct parser_state *ps, enum exp_opcode expelt)
static const char * lexptr
static struct parser_state * pstate
static const struct token f77_keywords[]
unsigned char yytype_uint8
static void yydestruct(const char *yymsg, int yytype, YYSTYPE *yyvaluep)
static const yytype_uint8 yytranslate[]
struct minimal_symbol * minsym
#define YY_STACK_PRINT(Bottom, Top)
struct bound_minimal_symbol lookup_bound_minimal_symbol(const char *name)
static const yytype_uint8 yyr1[]
int have_full_symbols(void)
#define yypact_value_is_default(Yystate)
const struct block * expression_context_block
unsigned long long ULONGEST
static void yy_reduce_print(yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule)
#define SYMBOL_TYPE(symbol)
#define TYPE_LENGTH(thistype)
struct type * language_lookup_primitive_type(const struct language_defn *la, struct gdbarch *gdbarch, const char *name)
#define LOGICAL_S2_KEYWORD
static void yy_symbol_value_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
static const char * prev_lexptr
void write_exp_elt_floatcst(struct parser_state *ps, const gdb_byte expelt[16])
void write_exp_string(struct parser_state *ps, struct stoken str)
void write_exp_elt_type(struct parser_state *ps, struct type *expelt)
struct type * lookup_lvalue_reference_type(struct type *type)
void error(const char *fmt,...)
struct type * lookup_pointer_type(struct type *type)
struct type * lookup_function_type(struct type *type)
char * copy_name(struct stoken token)
static const yytype_int16 yypact[]