47 #define YYBISON_VERSION "3.0.2"
50 #define YYSKELETON_NAME "yacc.c"
81 #define parse_type(ps) builtin_type (parse_gdbarch (ps))
90 #define yymaxdepth pascal_maxdepth
91 #define yyparse pascal_parse_internal
92 #define yylex pascal_lex
93 #define yyerror pascal_error
94 #define yylval pascal_lval
95 #define yychar pascal_char
96 #define yydebug pascal_debug
97 #define yypact pascal_pact
98 #define yyr1 pascal_r1
99 #define yyr2 pascal_r2
100 #define yydef pascal_def
101 #define yychk pascal_chk
102 #define yypgo pascal_pgo
103 #define yyact pascal_act
104 #define yyexca pascal_exca
105 #define yyerrflag pascal_errflag
106 #define yynerrs pascal_nerrs
107 #define yyps pascal_ps
108 #define yypv pascal_pv
110 #define yy_yys pascal_yys
111 #define yystate pascal_state
112 #define yytmp pascal_tmp
114 #define yy_yyv pascal_yyv
115 #define yyval pascal_val
116 #define yylloc pascal_lloc
117 #define yyreds pascal_reds
118 #define yytoks pascal_toks
119 #define yyname pascal_name
120 #define yyrule pascal_rule
121 #define yylhs pascal_yylhs
122 #define yylen pascal_yylen
123 #define yydefred pascal_yydefred
124 #define yydgoto pascal_yydgoto
125 #define yysindex pascal_yysindex
126 #define yyrindex pascal_yyrindex
127 #define yygindex pascal_yygindex
128 #define yytable pascal_yytable
129 #define yycheck pascal_yycheck
130 #define yyss pascal_yyss
131 #define yysslim pascal_yysslim
132 #define yyssp pascal_yyssp
133 #define yystacksize pascal_yystacksize
134 #define yyvs pascal_yyvs
135 #define yyvsp pascal_yyvsp
141 #define YYFPRINTF parser_fprintf
150 static int yylex (
void);
154 static char *
uptok (
const char *,
int);
159 # if defined __cplusplus && 201103L <= __cplusplus
160 # define YY_NULLPTR nullptr
162 # define YY_NULLPTR 0
167 #ifdef YYERROR_VERBOSE
168 # undef YYERROR_VERBOSE
169 # define YYERROR_VERBOSE 1
171 # define YYERROR_VERBOSE 0
229 #define FIELDNAME 261
233 #define NAME_OR_INT 265
237 #define COLONCOLON 269
241 #define TRUEKEYWORD 273
242 #define FALSEKEYWORD 274
243 #define ABOVE_COMMA 275
257 #define INCREMENT 289
258 #define DECREMENT 290
260 #define BLOCKNAME 292
263 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
294 # define YYSTYPE_IS_TRIVIAL 1
295 # define YYSTYPE_IS_DECLARED 1
310 const char *,
int,
int,
YYSTYPE *);
350 # ifdef __SIZE_TYPE__
351 # define YYSIZE_T __SIZE_TYPE__
352 # elif defined size_t
353 # define YYSIZE_T size_t
354 # elif ! defined YYSIZE_T
356 # define YYSIZE_T size_t
358 # define YYSIZE_T unsigned int
362 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
365 # if defined YYENABLE_NLS && YYENABLE_NLS
367 # include <libintl.h>
368 # define YY_(Msgid) dgettext ("bison-runtime", Msgid)
372 # define YY_(Msgid) Msgid
377 # if (defined __GNUC__ \
378 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \
379 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
380 # define YY_ATTRIBUTE(Spec) __attribute__(Spec)
382 # define YY_ATTRIBUTE(Spec)
386 #ifndef YY_ATTRIBUTE_PURE
387 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
390 #ifndef YY_ATTRIBUTE_UNUSED
391 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
394 #if !defined _Noreturn \
395 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
396 # if defined _MSC_VER && 1200 <= _MSC_VER
397 # define _Noreturn __declspec (noreturn)
399 # define _Noreturn YY_ATTRIBUTE ((__noreturn__))
404 #if ! defined lint || defined __GNUC__
405 # define YYUSE(E) ((void) (E))
410 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
412 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
413 _Pragma ("GCC diagnostic push") \
414 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
415 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
416 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
417 _Pragma ("GCC diagnostic pop")
419 # define YY_INITIAL_VALUE(Value) Value
421 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
422 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
423 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
425 #ifndef YY_INITIAL_VALUE
426 # define YY_INITIAL_VALUE(Value)
430 #if ! defined yyoverflow || YYERROR_VERBOSE
434 # ifdef YYSTACK_USE_ALLOCA
435 # if YYSTACK_USE_ALLOCA
437 # define YYSTACK_ALLOC __builtin_alloca
438 # elif defined __BUILTIN_VA_ARG_INCR
441 # define YYSTACK_ALLOC __alloca
442 # elif defined _MSC_VER
443 # define alloca _alloca
445 # define YYSTACK_ALLOC alloca
446 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
449 # ifndef EXIT_SUCCESS
450 # define EXIT_SUCCESS 0
457 # ifdef YYSTACK_ALLOC
459 # define YYSTACK_FREE(Ptr) do { ; } while (0)
460 # ifndef YYSTACK_ALLOC_MAXIMUM
465 # define YYSTACK_ALLOC_MAXIMUM 4032
468 # define YYSTACK_ALLOC YYMALLOC
469 # define YYSTACK_FREE YYFREE
470 # ifndef YYSTACK_ALLOC_MAXIMUM
471 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
473 # if (defined __cplusplus && ! defined EXIT_SUCCESS \
474 && ! ((defined YYMALLOC || defined xmalloc) \
475 && (defined YYFREE || defined xfree)))
477 # ifndef EXIT_SUCCESS
478 # define EXIT_SUCCESS 0
482 # define YYMALLOC xmalloc
483 # if ! defined xmalloc && ! defined EXIT_SUCCESS
488 # define YYFREE xfree
489 # if ! defined xfree && ! defined EXIT_SUCCESS
497 #if (! defined yyoverflow \
498 && (! defined __cplusplus \
499 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
509 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
513 # define YYSTACK_BYTES(N) \
514 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
515 + YYSTACK_GAP_MAXIMUM)
517 # define YYCOPY_NEEDED 1
524 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
527 YYSIZE_T yynewbytes; \
528 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
529 Stack = &yyptr->Stack_alloc; \
530 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
531 yyptr += yynewbytes / sizeof (*yyptr); \
537 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
541 # if defined __GNUC__ && 1 < __GNUC__
542 # define YYCOPY(Dst, Src, Count) \
543 __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
545 # define YYCOPY(Dst, Src, Count) \
549 for (yyi = 0; yyi < (Count); yyi++) \
550 (Dst)[yyi] = (Src)[yyi]; \
569 #define YYNSTATES 126
574 #define YYMAXUTOK 292
576 #define YYTRANSLATE(YYX) \
577 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
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, 2, 2, 2, 2, 2, 2, 2,
587 48, 51, 40, 38, 20, 39, 46, 41, 2, 2,
588 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
589 29, 27, 30, 2, 37, 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, 47, 2, 52, 49, 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, 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, 6, 7, 8, 9, 10, 11, 12, 13, 14,
610 15, 16, 17, 18, 19, 21, 22, 23, 24, 25,
611 26, 28, 31, 32, 33, 34, 35, 36, 42, 43,
619 0, 246, 246, 246, 255, 256, 259, 266, 267, 272,
620 278, 284, 288, 292, 296, 301, 305, 323, 339, 345,
621 357, 355, 388, 385, 401, 402, 404, 408, 423, 429,
622 433, 433, 456, 460, 464, 468, 472, 476, 480, 486,
623 492, 498, 504, 510, 516, 520, 524, 528, 532, 539,
624 546, 554, 568, 576, 579, 594, 605, 609, 641, 669,
625 687, 697, 712, 727, 728, 759, 831, 842, 846, 848,
626 850, 853, 861, 862, 863, 864, 867, 868
630 #if YYDEBUG || YYERROR_VERBOSE || 0
635 "$end",
"error",
"$undefined",
"INT",
"FLOAT",
"STRING",
"FIELDNAME",
636 "COMPLETE",
"NAME",
"TYPENAME",
"NAME_OR_INT",
"STRUCT",
"CLASS",
637 "SIZEOF",
"COLONCOLON",
"ERROR",
"VARIABLE",
"THIS",
"TRUEKEYWORD",
638 "FALSEKEYWORD",
"','",
"ABOVE_COMMA",
"ASSIGN",
"NOT",
"OR",
"XOR",
639 "ANDAND",
"'='",
"NOTEQUAL",
"'<'",
"'>'",
"LEQ",
"GEQ",
"LSH",
"RSH",
640 "DIV",
"MOD",
"'@'",
"'+'",
"'-'",
"'*'",
"'/'",
"UNARY",
"INCREMENT",
641 "DECREMENT",
"ARROW",
"'.'",
"'['",
"'('",
"'^'",
"BLOCKNAME",
"')'",
642 "']'",
"$accept",
"start",
"$@1",
"normal_start",
"type_exp",
"exp1",
643 "exp",
"field_exp",
"$@2",
"$@3",
"arglist",
"$@4",
"block",
"variable",
644 "qualified_name",
"ptype",
"type",
"typebase",
"name",
652 static const yytype_uint16
yytoknum[] =
654 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
655 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
656 44, 275, 276, 277, 278, 279, 280, 61, 281, 60,
657 62, 282, 283, 284, 285, 286, 287, 64, 43, 45,
658 42, 47, 288, 289, 290, 291, 46, 91, 40, 94,
663 #define YYPACT_NINF -44
665 #define yypact_value_is_default(Yystate) \
666 (!!((Yystate) == (-44)))
668 #define YYTABLE_NINF -61
670 #define yytable_value_is_error(Yytable_value) \
677 -44, 20, 90, -44, -44, -44, -44, -44, -44, -44,
678 7, 7, -41, 7, -44, -44, -44, -44, 90, 90,
679 90, -39, -24, 90, 10, 13, -44, -44, 8, 231,
680 4, 21, -44, -44, -44, -14, 41, -44, -44, -44,
681 -44, -44, -44, -44, 90, -44, 35, -14, 35, 35,
682 90, 90, 5, -44, 90, 90, 90, 90, 90, 90,
683 90, 90, 90, 90, 90, 90, 90, 90, 90, 90,
684 90, 90, -44, -44, -44, -44, -44, -44, -44, 23,
685 7, 90, 7, 119, -43, 147, 175, -44, 231, 231,
686 256, 280, 303, 324, 324, 31, 31, 31, 31, 76,
687 76, 76, 76, 328, 328, 35, 90, 90, 90, -44,
688 44, 203, -44, -44, -44, -44, -44, 35, 9, 231,
689 11, -44, -44, 90, -44, 231
697 2, 0, 0, 1, 50, 52, 57, 76, 69, 51,
698 0, 0, 0, 0, 54, 58, 48, 49, 0, 0,
699 0, 0, 0, 0, 0, 77, 3, 5, 4, 7,
700 0, 0, 53, 63, 67, 6, 66, 65, 72, 74,
701 75, 73, 70, 71, 0, 64, 12, 0, 10, 11,
702 0, 0, 0, 68, 0, 0, 0, 0, 0, 0,
703 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
704 0, 0, 30, 15, 20, 22, 9, 16, 19, 17,
705 0, 0, 0, 0, 0, 0, 0, 28, 8, 47,
706 46, 45, 44, 38, 39, 42, 43, 40, 41, 36,
707 37, 32, 33, 34, 35, 29, 0, 0, 24, 18,
708 61, 0, 62, 56, 55, 13, 14, 31, 0, 25,
715 -44, -44, -44, -44, -44, -20, -18, -44, -44, -44,
716 -44, -44, -44, -44, -44, -44, 16, 50, -7, -44
722 -1, 1, 2, 26, 27, 28, 29, 30, 107, 108,
723 120, 106, 31, 32, 33, 34, 47, 36, 42, 37
731 46, 48, 49, 52, 43, 81, 45, 44, 114, 50,
732 77, 78, 38, 39, 40, 38, 39, 40, 35, 8,
733 3, 10, 11, 79, 51, 54, 83, -59, 54, 54,
734 109, 123, 85, 86, 81, 80, 88, 89, 90, 91,
735 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
736 102, 103, 104, 105, 41, 82, 87, 41, -60, 24,
737 84, 122, 124, 111, 65, 66, 67, 68, 0, 69,
738 70, 71, 72, 110, 53, 112, 0, 73, 74, 75,
739 76, 73, 74, 75, 76, 0, 0, 118, 117, 0,
740 119, 0, 0, 4, 5, 6, 0, 0, 7, 8,
741 9, 10, 11, 12, 13, 125, 14, 15, 16, 17,
742 0, 0, 0, 18, 69, 70, 71, 72, 0, 0,
743 0, 0, 73, 74, 75, 76, 0, 19, 0, 20,
744 0, 0, 0, 21, 22, 0, 0, 0, 23, 24,
745 25, 55, 0, 56, 57, 58, 59, 60, 61, 62,
746 63, 64, 65, 66, 67, 68, 0, 69, 70, 71,
747 72, 0, 0, 0, 0, 73, 74, 75, 76, 55,
748 113, 56, 57, 58, 59, 60, 61, 62, 63, 64,
749 65, 66, 67, 68, 0, 69, 70, 71, 72, 0,
750 0, 0, 0, 73, 74, 75, 76, 55, 115, 56,
751 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
752 67, 68, 0, 69, 70, 71, 72, 0, 0, 0,
753 0, 73, 74, 75, 76, 55, 116, 56, 57, 58,
754 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
755 0, 69, 70, 71, 72, 0, 0, 0, 0, 73,
756 74, 75, 76, 55, 121, 56, 57, 58, 59, 60,
757 61, 62, 63, 64, 65, 66, 67, 68, 0, 69,
758 70, 71, 72, 0, 0, 0, 0, 73, 74, 75,
759 76, 57, 58, 59, 60, 61, 62, 63, 64, 65,
760 66, 67, 68, 0, 69, 70, 71, 72, 0, 0,
761 0, 0, 73, 74, 75, 76, 58, 59, 60, 61,
762 62, 63, 64, 65, 66, 67, 68, 0, 69, 70,
763 71, 72, 0, 0, 0, 0, 73, 74, 75, 76,
764 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
765 0, 69, 70, 71, 72, 0, 0, 0, 0, 73,
766 74, 75, 76, 61, 62, 63, 64, 65, 66, 67,
767 68, 0, 69, 70, 71, 72, 0, 0, 71, 72,
768 73, 74, 75, 76, 73, 74, 75, 76
773 18, 19, 20, 23, 11, 48, 13, 48, 51, 48,
774 6, 7, 8, 9, 10, 8, 9, 10, 2, 9,
775 0, 11, 12, 30, 48, 20, 44, 14, 20, 20,
776 7, 20, 50, 51, 48, 14, 54, 55, 56, 57,
777 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
778 68, 69, 70, 71, 50, 14, 51, 50, 14, 49,
779 44, 52, 51, 81, 33, 34, 35, 36, -1, 38,
780 39, 40, 41, 80, 24, 82, -1, 46, 47, 48,
781 49, 46, 47, 48, 49, -1, -1, 107, 106, -1,
782 108, -1, -1, 3, 4, 5, -1, -1, 8, 9,
783 10, 11, 12, 13, 14, 123, 16, 17, 18, 19,
784 -1, -1, -1, 23, 38, 39, 40, 41, -1, -1,
785 -1, -1, 46, 47, 48, 49, -1, 37, -1, 39,
786 -1, -1, -1, 43, 44, -1, -1, -1, 48, 49,
787 50, 22, -1, 24, 25, 26, 27, 28, 29, 30,
788 31, 32, 33, 34, 35, 36, -1, 38, 39, 40,
789 41, -1, -1, -1, -1, 46, 47, 48, 49, 22,
790 51, 24, 25, 26, 27, 28, 29, 30, 31, 32,
791 33, 34, 35, 36, -1, 38, 39, 40, 41, -1,
792 -1, -1, -1, 46, 47, 48, 49, 22, 51, 24,
793 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
794 35, 36, -1, 38, 39, 40, 41, -1, -1, -1,
795 -1, 46, 47, 48, 49, 22, 51, 24, 25, 26,
796 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
797 -1, 38, 39, 40, 41, -1, -1, -1, -1, 46,
798 47, 48, 49, 22, 51, 24, 25, 26, 27, 28,
799 29, 30, 31, 32, 33, 34, 35, 36, -1, 38,
800 39, 40, 41, -1, -1, -1, -1, 46, 47, 48,
801 49, 25, 26, 27, 28, 29, 30, 31, 32, 33,
802 34, 35, 36, -1, 38, 39, 40, 41, -1, -1,
803 -1, -1, 46, 47, 48, 49, 26, 27, 28, 29,
804 30, 31, 32, 33, 34, 35, 36, -1, 38, 39,
805 40, 41, -1, -1, -1, -1, 46, 47, 48, 49,
806 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
807 -1, 38, 39, 40, 41, -1, -1, -1, -1, 46,
808 47, 48, 49, 29, 30, 31, 32, 33, 34, 35,
809 36, -1, 38, 39, 40, 41, -1, -1, 40, 41,
810 46, 47, 48, 49, 46, 47, 48, 49
817 0, 54, 55, 0, 3, 4, 5, 8, 9, 10,
818 11, 12, 13, 14, 16, 17, 18, 19, 23, 37,
819 39, 43, 44, 48, 49, 50, 56, 57, 58, 59,
820 60, 65, 66, 67, 68, 69, 70, 72, 8, 9,
821 10, 50, 71, 71, 48, 71, 59, 69, 59, 59,
822 48, 48, 58, 70, 20, 22, 24, 25, 26, 27,
823 28, 29, 30, 31, 32, 33, 34, 35, 36, 38,
824 39, 40, 41, 46, 47, 48, 49, 6, 7, 71,
825 14, 48, 14, 59, 69, 59, 59, 51, 59, 59,
826 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
827 59, 59, 59, 59, 59, 59, 64, 61, 62, 7,
828 71, 59, 71, 51, 51, 51, 51, 59, 58, 59,
829 63, 51, 52, 20, 51, 59
833 static const yytype_uint8
yyr1[] =
835 0, 53, 55, 54, 56, 56, 57, 58, 58, 59,
836 59, 59, 59, 59, 59, 60, 59, 59, 59, 59,
837 61, 59, 62, 59, 63, 63, 63, 59, 59, 59,
838 64, 59, 59, 59, 59, 59, 59, 59, 59, 59,
839 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
840 59, 59, 59, 59, 59, 59, 59, 59, 59, 65,
841 65, 66, 67, 66, 66, 66, 68, 69, 70, 70,
842 70, 70, 71, 71, 71, 71, 72, 72
846 static const yytype_uint8
yyr2[] =
848 0, 2, 0, 2, 1, 1, 1, 1, 3, 2,
849 2, 2, 2, 4, 4, 2, 2, 2, 3, 2,
850 0, 5, 0, 5, 0, 1, 3, 4, 3, 3,
851 0, 4, 3, 3, 3, 3, 3, 3, 3, 3,
852 3, 3, 3, 3, 3, 3, 3, 3, 1, 1,
853 1, 1, 1, 1, 1, 4, 4, 1, 1, 1,
854 3, 3, 3, 1, 2, 1, 1, 1, 2, 1,
855 2, 2, 1, 1, 1, 1, 1, 1
859 #define yyerrok (yyerrstatus = 0)
860 #define yyclearin (yychar = YYEMPTY)
864 #define YYACCEPT goto yyacceptlab
865 #define YYABORT goto yyabortlab
866 #define YYERROR goto yyerrorlab
869 #define YYRECOVERING() (!!yyerrstatus)
871 #define YYBACKUP(Token, Value) \
873 if (yychar == YYEMPTY) \
877 YYPOPSTACK (yylen); \
883 yyerror (YY_("syntax error: cannot back up")); \
890 #define YYERRCODE 256
899 # define YYFPRINTF fprintf
902 # define YYDPRINTF(Args) \
909 #ifndef YY_LOCATION_PRINT
910 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
914 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
918 YYFPRINTF (stderr, "%s ", Title); \
919 yy_symbol_print (stderr, \
921 YYFPRINTF (stderr, "\n"); \
933 FILE *yyo = yyoutput;
939 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
953 yytype <
YYNTOKENS ?
"token" :
"nterm", yytname[yytype]);
968 for (; yybottom <= yytop; yybottom++)
970 int yybot = *yybottom;
976 # define YY_STACK_PRINT(Bottom, Top) \
979 yy_stack_print ((Bottom), (Top)); \
990 unsigned long int yylno = yyrline[
yyrule];
991 int yynrhs = yyr2[
yyrule];
993 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %lu):\n",
996 for (yyi = 0; yyi < yynrhs; yyi++)
1000 yystos[yyssp[yyi + 1 - yynrhs]],
1001 &(yyvsp[(yyi + 1) - (yynrhs)])
1007 # define YY_REDUCE_PRINT(Rule) \
1010 yy_reduce_print (yyssp, yyvsp, Rule); \
1017 # define YYDPRINTF(Args)
1018 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
1019 # define YY_STACK_PRINT(Bottom, Top)
1020 # define YY_REDUCE_PRINT(Rule)
1026 # define YYINITDEPTH 200
1037 # define YYMAXDEPTH 10000
1044 # if defined __GLIBC__ && defined _STRING_H
1045 # define yystrlen strlen
1049 yystrlen (
const char *yystr)
1052 for (yylen = 0; yystr[
yylen]; yylen++)
1060 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
1061 # define yystpcpy stpcpy
1066 yystpcpy (
char *yydest,
const char *yysrc)
1069 const char *yys = yysrc;
1071 while ((*yyd++ = *yys++) !=
'\0')
1088 yytnamerr (
char *yyres,
const char *yystr)
1093 char const *yyp = yystr;
1100 goto do_not_strip_quotes;
1104 goto do_not_strip_quotes;
1117 do_not_strip_quotes: ;
1121 return yystrlen (yystr);
1123 return yystpcpy (yyres, yystr) - yyres;
1136 yysyntax_error (
YYSIZE_T *yymsg_alloc,
char **yymsg,
1137 yytype_int16 *yyssp,
int yytoken)
1141 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1145 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1175 int yyn = yypact[*
yyssp];
1176 yyarg[yycount++] = yytname[yytoken];
1182 int yyxbegin = yyn < 0 ? -yyn : 0;
1184 int yychecklim =
YYLAST - yyn + 1;
1188 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1189 if (yycheck[yyx + yyn] == yyx && yyx !=
YYTERROR
1192 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1198 yyarg[yycount++] = yytname[yyx];
1201 if (! (yysize <= yysize1
1212 # define YYCASE_(N, S) \
1216 YYCASE_(0,
YY_(
"syntax error"));
1217 YYCASE_(1,
YY_(
"syntax error, unexpected %s"));
1218 YYCASE_(2,
YY_(
"syntax error, unexpected %s, expecting %s"));
1219 YYCASE_(3,
YY_(
"syntax error, unexpected %s, expecting %s or %s"));
1220 YYCASE_(4,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s"));
1221 YYCASE_(5,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s"));
1226 YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
1232 if (*yymsg_alloc < yysize)
1234 *yymsg_alloc = 2 * yysize;
1235 if (! (yysize <= *yymsg_alloc
1247 while ((*yyp = *yyformat) !=
'\0')
1248 if (*yyp ==
'%' && yyformat[1] ==
's' && yyi < yycount)
1250 yyp += yytnamerr (yyp, yyarg[yyi++]);
1313 yytype_int16 *
yyssp;
1333 char *yymsg = yymsgbuf;
1334 YYSIZE_T yymsg_alloc =
sizeof yymsgbuf;
1337 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
1343 yyssp = yyss = yyssa;
1344 yyvsp = yyvs = yyvsa;
1347 YYDPRINTF ((stderr,
"Starting parse\n"));
1366 if (yyss + yystacksize - 1 <= yyssp)
1369 YYSIZE_T yysize = yyssp - yyss + 1;
1377 yytype_int16 *yyss1 =
yyss;
1383 yyoverflow (
YY_(
"memory exhausted"),
1384 &yyss1, yysize *
sizeof (*yyssp),
1385 &yyvs1, yysize *
sizeof (*yyvsp),
1392 # ifndef YYSTACK_RELOCATE
1393 goto yyexhaustedlab;
1397 goto yyexhaustedlab;
1403 yytype_int16 *yyss1 =
yyss;
1407 goto yyexhaustedlab;
1410 # undef YYSTACK_RELOCATE
1417 yyssp = yyss + yysize - 1;
1418 yyvsp = yyvs + yysize - 1;
1420 YYDPRINTF ((stderr,
"Stack size increased to %lu\n",
1421 (
unsigned long int) yystacksize));
1423 if (yyss + yystacksize - 1 <= yyssp)
1427 YYDPRINTF ((stderr,
"Entering state %d\n", yystate));
1452 YYDPRINTF ((stderr,
"Reading a token: "));
1456 if (yychar <=
YYEOF)
1458 yychar = yytoken =
YYEOF;
1459 YYDPRINTF ((stderr,
"Now at end of input.\n"));
1470 if (yyn < 0 ||
YYLAST < yyn || yycheck[yyn] != yytoken)
1525 yyval = yyvsp[1-
yylen];
1533 { current_type = NULL;
1536 leftdiv_is_integer = 0;
1538 #line 1540 "p-exp.c"
1544 #line 1546 "p-exp.c"
1552 current_type = (yyvsp[0].tval); }
1553 #line 1555 "p-exp.c"
1559 #line 1561 "p-exp.c"
1567 #line 1569 "p-exp.c"
1575 #line 1577 "p-exp.c"
1581 #line 1583 "p-exp.c"
1587 #line 1589 "p-exp.c"
1593 #line 1595 "p-exp.c"
1599 #line 1601 "p-exp.c"
1604 { search_field = 1; }
1605 #line 1607 "p-exp.c"
1621 current_type, (yyvsp[0].sval).ptr, 0);
1624 #line 1626 "p-exp.c"
1640 current_type, (yyvsp[0].sval).ptr, 0);
1643 #line 1645 "p-exp.c"
1652 #line 1654 "p-exp.c"
1664 #line 1666 "p-exp.c"
1669 {
const char *arrayname;
1670 int arrayfieldindex;
1672 current_type, NULL, NULL,
1673 NULL, NULL, &arrayname);
1674 if (arrayfieldindex)
1676 struct stoken stringsval;
1679 buf = alloca (strlen (arrayname) + 1);
1680 stringsval.
ptr = buf;
1681 stringsval.
length = strlen (arrayname);
1682 strcpy (buf, arrayname);
1684 arrayfieldindex - 1);
1690 #line 1692 "p-exp.c"
1699 #line 1701 "p-exp.c"
1706 #line 1708 "p-exp.c"
1719 #line 1721 "p-exp.c"
1725 #line 1727 "p-exp.c"
1731 #line 1733 "p-exp.c"
1747 current_type = (yyvsp[-3].tval); }
1748 #line 1750 "p-exp.c"
1754 #line 1756 "p-exp.c"
1760 #line 1762 "p-exp.c"
1767 leftdiv_is_integer = 1;
1769 #line 1771 "p-exp.c"
1775 if (leftdiv_is_integer && current_type
1781 ->builtin_long_double);
1785 leftdiv_is_integer = 0;
1790 #line 1792 "p-exp.c"
1796 #line 1798 "p-exp.c"
1802 #line 1804 "p-exp.c"
1808 #line 1810 "p-exp.c"
1814 #line 1816 "p-exp.c"
1820 #line 1822 "p-exp.c"
1826 #line 1828 "p-exp.c"
1832 current_type =
parse_type (pstate)->builtin_bool;
1834 #line 1836 "p-exp.c"
1840 current_type =
parse_type (pstate)->builtin_bool;
1842 #line 1844 "p-exp.c"
1848 current_type =
parse_type (pstate)->builtin_bool;
1850 #line 1852 "p-exp.c"
1856 current_type =
parse_type (pstate)->builtin_bool;
1858 #line 1860 "p-exp.c"
1864 current_type =
parse_type (pstate)->builtin_bool;
1866 #line 1868 "p-exp.c"
1872 current_type =
parse_type (pstate)->builtin_bool;
1874 #line 1876 "p-exp.c"
1880 #line 1882 "p-exp.c"
1886 #line 1888 "p-exp.c"
1892 #line 1894 "p-exp.c"
1898 #line 1900 "p-exp.c"
1905 current_type =
parse_type (pstate)->builtin_bool;
1907 #line 1909 "p-exp.c"
1914 current_type =
parse_type (pstate)->builtin_bool;
1916 #line 1918 "p-exp.c"
1923 current_type = (yyvsp[0].typed_val_int).type;
1926 #line 1928 "p-exp.c"
1933 (yyvsp[0].ssym).stoken.length, 0, &val);
1941 #line 1943 "p-exp.c"
1948 current_type = (yyvsp[0].typed_val_float).type;
1951 #line 1953 "p-exp.c"
1957 struct value * val, * mark;
1966 #line 1968 "p-exp.c"
1974 current_type =
parse_type (pstate)->builtin_int;
1979 #line 1981 "p-exp.c"
1985 current_type =
parse_type (pstate)->builtin_int; }
1986 #line 1988 "p-exp.c"
1996 const char *sp = (yyvsp[0].sval).ptr;
int count = (yyvsp[0].sval).length;
2017 (
LONGEST) ((yyvsp[0].sval).length));
2019 #line 2021 "p-exp.c"
2025 struct value * this_val;
2026 struct type * this_type;
2045 current_type = this_type;
2047 #line 2049 "p-exp.c"
2053 if ((yyvsp[0].ssym).sym != 0)
2063 error (
_(
"No file or function \"%s\"."),
2067 #line 2069 "p-exp.c"
2076 error (
_(
"No function \"%s\" in specified context."),
2079 #line 2081 "p-exp.c"
2088 error (
_(
"No symbol \"%s\" in specified context."),
2096 #line 2098 "p-exp.c"
2102 struct type *
type = (yyvsp[-2].tval);
2105 error (
_(
"`%s' is not defined as an aggregate type."),
2113 #line 2115 "p-exp.c"
2136 if (msymbol.
minsym != NULL)
2140 error (
_(
"No symbol table is loaded. "
2141 "Use the \"file\" command."));
2143 error (
_(
"No symbol \"%s\" in current context."),
2146 #line 2148 "p-exp.c"
2151 {
struct symbol *sym = (yyvsp[0].ssym).sym;
2170 current_type = sym->
type; }
2171 else if ((yyvsp[0].ssym).is_a_field_of_this)
2173 struct value * this_val;
2174 struct type * this_type;
2199 current_type = NULL;
2208 if (msymbol.
minsym != NULL)
2212 error (
_(
"No symbol table is loaded. "
2213 "Use the \"file\" command."));
2215 error (
_(
"No symbol \"%s\" in current context."),
2219 #line 2221 "p-exp.c"
2225 #line 2227 "p-exp.c"
2230 { (yyval.
tval) = (yyvsp[0].tsym).type; }
2231 #line 2233 "p-exp.c"
2238 #line 2240 "p-exp.c"
2245 #line 2247 "p-exp.c"
2250 { (yyval.
sval) = (yyvsp[0].ssym).stoken; }
2251 #line 2253 "p-exp.c"
2256 { (yyval.
sval) = (yyvsp[0].ssym).stoken; }
2257 #line 2259 "p-exp.c"
2262 { (yyval.
sval) = (yyvsp[0].tsym).stoken; }
2263 #line 2265 "p-exp.c"
2268 { (yyval.
sval) = (yyvsp[0].ssym).stoken; }
2269 #line 2271 "p-exp.c"
2273 #line 2275 "p-exp.c"
2302 if (0 <= yystate && yystate <=
YYLAST && yycheck[yystate] == *yyssp)
2322 #if ! YYERROR_VERBOSE
2325 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
2328 char const *yymsgp =
YY_(
"syntax error");
2329 int yysyntax_error_status;
2330 yysyntax_error_status = YYSYNTAX_ERROR;
2331 if (yysyntax_error_status == 0)
2333 else if (yysyntax_error_status == 1)
2335 if (yymsg != yymsgbuf)
2341 yymsg_alloc =
sizeof yymsgbuf;
2342 yysyntax_error_status = 2;
2346 yysyntax_error_status = YYSYNTAX_ERROR;
2351 if (yysyntax_error_status == 2)
2352 goto yyexhaustedlab;
2354 # undef YYSYNTAX_ERROR
2360 if (yyerrstatus == 3)
2365 if (yychar <=
YYEOF)
2368 if (yychar ==
YYEOF)
2430 yystos[yystate], yyvsp);
2462 #if !defined yyoverflow || YYERROR_VERBOSE
2485 while (yyssp != yyss)
2488 yystos[*yyssp], yyvsp);
2496 if (yymsg != yymsgbuf)
2512 const char *p,
int len,
int parsed_float,
YYSTYPE *putithere)
2529 int found_suffix = 0;
2532 struct type *signed_type;
2533 struct type *unsigned_type;
2578 if (c >=
'A' && c <=
'Z')
2580 if (c !=
'l' && c !=
'u')
2582 if (c >=
'0' && c <=
'9')
2590 if (base > 10 && c >=
'a' && c <=
'f')
2594 n += i = c -
'a' + 10;
2615 if (c !=
'l' && c !=
'u' && (prevn >= n) && n != 0)
2621 if (c !=
'l' && c !=
'u' && n != 0)
2624 error (
_(
"Numeric constant too large."));
2654 unsigned_type =
parse_type (par_state)->builtin_unsigned_int;
2655 signed_type =
parse_type (par_state)->builtin_int;
2657 else if (long_p <= 1
2662 unsigned_type =
parse_type (par_state)->builtin_unsigned_long;
2663 signed_type =
parse_type (par_state)->builtin_long;
2675 unsigned_type =
parse_type (par_state)->builtin_unsigned_long_long;
2676 signed_type =
parse_type (par_state)->builtin_long_long;
2684 if (unsigned_p || (n & high_bit))
2712 current_type = NULL;
2722 current_type = tp->
stored;
2737 {
"shr",
RSH, BINOP_END},
2738 {
"shl",
LSH, BINOP_END},
2739 {
"and",
ANDAND, BINOP_END},
2740 {
"div",
DIV, BINOP_END},
2741 {
"not",
NOT, BINOP_END},
2742 {
"mod",
MOD, BINOP_END},
2745 {
"xor",
XOR, BINOP_END}
2750 {
"or",
OR, BINOP_END},
2752 {
"<=",
LEQ, BINOP_END},
2753 {
">=",
GEQ, BINOP_END},
2754 {
":=",
ASSIGN, BINOP_END},
2760 uptok (
const char *tokstart,
int namelen)
2763 char *uptokstart = (
char *)
xmalloc(namelen+1);
2764 for (i = 0;i <= namelen;i++)
2766 if ((tokstart[i]>=
'a' && tokstart[i]<=
'z'))
2767 uptokstart[i] = tokstart[i]-(
'a'-
'A');
2769 uptokstart[i] = tokstart[i];
2771 uptokstart[namelen]=
'\0';
2783 const char *tokstart;
2795 explen = strlen (
lexptr);
2799 for (i = 0; i <
sizeof (
tokentab3) /
sizeof (tokentab3[0]); i++)
2800 if (strncasecmp (tokstart, tokentab3[i].
oper, 3) == 0
2801 && (!isalpha (tokentab3[i].oper[0]) || explen == 3
2802 || (!isalpha (tokstart[3])
2803 && !isdigit (tokstart[3]) && tokstart[3] !=
'_')))
2807 return tokentab3[i].
token;
2812 for (i = 0; i <
sizeof (
tokentab2) /
sizeof (tokentab2[0]); i++)
2813 if (strncasecmp (tokstart, tokentab2[i].oper, 2) == 0
2814 && (!isalpha (tokentab2[i].oper[0]) || explen == 2
2815 || (!isalpha (tokstart[2])
2816 && !isdigit (tokstart[2]) && tokstart[2] !=
'_')))
2820 return tokentab2[i].
token;
2823 switch (c = *tokstart)
2846 error (
_(
"Empty character constant."));
2857 lexptr = tokstart + namelen;
2859 error (
_(
"Unmatched single quote."));
2862 uptokstart =
uptok(tokstart,namelen);
2865 error (
_(
"Invalid character constant."));
2908 int got_dot = 0, got_e = 0, toktype;
2909 const char *p = tokstart;
2912 if (c ==
'0' && (p[1] ==
'x' || p[1] ==
'X'))
2917 else if (c ==
'0' && (p[1]==
't' || p[1]==
'T'
2918 || p[1]==
'd' || p[1]==
'D'))
2929 if (!hex && !got_e && (*p ==
'e' || *p ==
'E'))
2930 got_dot = got_e = 1;
2933 else if (!got_dot && *p ==
'.')
2935 else if (got_e && (p[-1] ==
'e' || p[-1] ==
'E')
2936 && (*p ==
'-' || *p ==
'+'))
2942 else if ((*p < '0' || *p >
'9')
2943 && ((*p < 'a' || *p >
'z')
2944 && (*p < 'A' || *p >
'Z')))
2948 p - tokstart, got_dot | got_e, &yylval);
2949 if (toktype ==
ERROR)
2951 char *err_copy = (
char *) alloca (p - tokstart + 1);
2953 memcpy (err_copy, tokstart, p - tokstart);
2954 err_copy[p - tokstart] = 0;
2955 error (
_(
"Invalid number \"%s\"."), err_copy);
2995 tokptr = ++tokstart;
3001 if (tempbufindex + 1 >= tempbufsize)
3003 tempbuf = (
char *)
xrealloc (tempbuf, tempbufsize += 64);
3019 tempbuf[tempbufindex++] = c;
3022 tempbuf[tempbufindex++] = *tokptr++;
3025 }
while ((*tokptr !=
'"') && (*tokptr !=
'\0'));
3026 if (*tokptr++ !=
'"')
3028 error (
_(
"Unterminated string in expression."));
3037 if (!(c ==
'_' || c ==
'$'
3038 || (c >=
'a' && c <=
'z') || (c >=
'A' && c <=
'Z')))
3040 error (
_(
"Invalid character '%c' in expression."), c);
3044 for (c = tokstart[namelen];
3045 (c ==
'_' || c ==
'$' || (c >=
'0' && c <=
'9')
3046 || (c >=
'a' && c <=
'z') || (c >=
'A' && c <=
'Z') || c ==
'<');)
3053 int nesting_level = 1;
3054 while (tokstart[++i])
3056 if (tokstart[i] ==
'<')
3058 else if (tokstart[i] ==
'>')
3060 if (--nesting_level == 0)
3064 if (tokstart[i] ==
'>')
3071 c = tokstart[++namelen];
3074 uptokstart =
uptok(tokstart,namelen);
3078 if (namelen == 2 && uptokstart[0] ==
'I' && uptokstart[1] ==
'F')
3092 if (strcmp (uptokstart,
"OBJECT") == 0)
3097 if (strcmp (uptokstart,
"RECORD") == 0)
3102 if (strcmp (uptokstart,
"SIZEOF") == 0)
3109 if (strcmp (uptokstart,
"CLASS") == 0)
3114 if (strcmp (uptokstart,
"FALSE") == 0)
3122 if (strcmp (uptokstart,
"TRUE") == 0)
3128 if (strcmp (uptokstart,
"SELF") == 0)
3132 static const char this_name[] =
"this";
3149 if (*tokstart ==
'$')
3158 tmp = alloca (namelen + 1);
3159 memcpy (tmp, tokstart, namelen);
3160 tmp[namelen] =
'\0';
3178 is_a_field_of_this.
type = NULL;
3179 if (search_field && current_type)
3187 if (!sym && is_a_field_of_this.
type == NULL && !is_a_field)
3189 for (i = 0; i <= namelen; i++)
3191 if ((tmp[i] >=
'a' && tmp[i] <=
'z'))
3192 tmp[i] -= (
'a'-
'A');
3194 if (search_field && current_type)
3203 if (!sym && is_a_field_of_this.
type == NULL && !is_a_field)
3205 for (i = 0; i <= namelen; i++)
3209 if ((tmp[i] >=
'a' && tmp[i] <=
'z'))
3210 tmp[i] -= (
'a'-
'A');
3213 if ((tmp[i] >=
'A' && tmp[i] <=
'Z'))
3214 tmp[i] -= (
'A'-
'a');
3216 if (search_field && current_type)
3225 if (is_a_field || (is_a_field_of_this.
type != NULL))
3227 tempbuf = (
char *)
xrealloc (tempbuf, namelen + 1);
3228 strncpy (tempbuf, tmp, namelen);
3229 tempbuf [namelen] = 0;
3264 const char *namestart;
3283 while (*p ==
' ' || *p ==
'\t' || *p ==
'\n')
3285 if (*p ==
':' && p[1] ==
':')
3290 while (*p ==
' ' || *p ==
'\t' || *p ==
'\n')
3293 while (*p ==
'_' || *p ==
'$' || (*p >=
'0' && *p <=
'9')
3294 || (*p >=
'a' && *p <=
'z')
3295 || (*p >=
'A' && *p <=
'Z'))
3302 char *ncopy = alloca (strlen (tmp)+strlen (namestart)+3);
3306 memcpy (tmp1, tmp, strlen (tmp));
3307 tmp1 += strlen (tmp);
3308 memcpy (tmp1,
"::", 2);
3310 memcpy (tmp1, namestart, p - namestart);
3311 tmp1[p - namestart] =
'\0';
3354 && ((tokstart[0] >=
'a' && tokstart[0] <
'a' +
input_radix - 10)
3355 || (tokstart[0] >=
'A' && tokstart[0] <
'A' +
input_radix - 10)))
3358 hextype =
parse_number (pstate, tokstart, namelen, 0, &newlval);
3396 error (
_(
"A %s in expression, near `%s'."), (msg ? msg :
"error"),
lexptr);
static void push_current_type(void)
struct internalvar * ivar
struct value * value_mark(void)
static void yy_reduce_print(yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule)
void write_exp_elt_sym(struct parser_state *ps, struct symbol *expelt)
#define parse_language(ps)
static int leftdiv_is_integer
#define parse_gdbarch(ps)
static int parse_number(struct parser_state *, const char *, int, int, YYSTYPE *)
int gdbarch_int_bit(struct gdbarch *gdbarch)
static const struct token tokentab2[]
#define TYPE_NAME(thistype)
static struct type * current_type
struct value * value_of_this_silent(const struct language_defn *lang)
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
struct internalvar * lookup_only_internalvar(const char *name)
unsigned char yytype_uint8
static const yytype_int8 yypgoto[]
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
static struct type_push * tp_top
struct symtab * lookup_symtab(const char *name)
#define SYMBOL_CLASS(symbol)
#define YY_REDUCE_PRINT(Rule)
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
int gdbarch_long_bit(struct gdbarch *gdbarch)
const struct block * innermost_block
int have_partial_symbols(void)
#define BLOCKVECTOR_BLOCK(blocklist, n)
int is_pascal_string_type(struct type *type, int *length_pos, int *length_size, int *string_pos, struct type **char_type, const char **arrayname)
static const struct token tokentab3[]
#define YYPRINT(FILE, TYPE, VALUE)
#define TYPE_FIELD_TYPE(thistype, n)
int parse_c_float(struct gdbarch *gdbarch, const char *p, int len, DOUBLEST *d, struct type **t)
struct value * value_release_to_mark(struct value *mark)
static char * uptok(const char *, int)
#define yytable_value_is_error(Yytable_value)
unsigned short int yytype_uint16
void write_exp_elt_block(struct parser_state *ps, const struct block *b)
#define SYMTAB_BLOCKVECTOR(symtab)
static const yytype_uint8 yytranslate[]
void write_exp_elt_longcst(struct parser_state *ps, LONGEST expelt)
int pascal_parse(struct parser_state *par_state)
int contained_in(const struct block *a, const struct block *b)
const char * skip_quoted(const char *str)
static struct obstack tempbuf
static void pop_current_type(void)
struct type * lookup_struct(const char *name, const struct block *block)
struct YYSTYPE::@2 typed_val_float
void write_exp_elt_dblcst(struct parser_state *ps, DOUBLEST expelt)
int symbol_read_needs_frame(struct symbol *sym)
int is_integral_type(struct type *t)
static struct internalvar * intvar
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
const struct block * block_found
static const yytype_uint16 yytoknum[]
void write_dollar_variable(struct parser_state *ps, struct stoken str)
void mark_struct_expression(struct parser_state *ps)
struct cleanup * make_cleanup_clear_parser_state(struct parser_state **p)
static void yydestruct(const char *yymsg, int yytype, YYSTYPE *yyvaluep)
static void yy_symbol_value_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
const struct block * bval
struct type * lookup_struct_elt_type(struct type *type, const char *name, int noerr)
void write_exp_msymbol(struct parser_state *ps, struct bound_minimal_symbol bound_msym)
struct value * value_of_internalvar(struct gdbarch *gdbarch, struct internalvar *var)
int parse_escape(struct gdbarch *gdbarch, const char **string_ptr)
PTR xrealloc(PTR ptr, size_t size)
void write_exp_elt_opcode(struct parser_state *ps, enum exp_opcode expelt)
static const char * lexptr
struct YYSTYPE::@34 typed_val_int
#define TYPE_TARGET_TYPE(thistype)
static const yytype_uint16 yyrline[]
static const yytype_uint8 yydefact[]
#define SYMBOL_BLOCK_VALUE(symbol)
#define TYPE_CODE(thistype)
struct minimal_symbol * minsym
int gdbarch_long_long_bit(struct gdbarch *gdbarch)
static void yy_stack_print(yytype_int16 *yybottom, yytype_int16 *yytop)
struct symbol * lookup_symbol(const char *name, const struct block *block, domain_enum domain, struct field_of_this_result *is_a_field_of_this)
struct bound_minimal_symbol lookup_bound_minimal_symbol(const char *name)
#define YY_STACK_PRINT(Bottom, Top)
#define CHECK_TYPEDEF(TYPE)
int have_full_symbols(void)
const struct block * expression_context_block
unsigned long long ULONGEST
#define YYSTACK_ALLOC_MAXIMUM
static void yy_symbol_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
struct type * value_type(const struct value *value)
#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)
static const yytype_int8 yydefgoto[]
#define TYPE_POINTER_TYPE(thistype)
static const char * prev_lexptr
void write_exp_string(struct parser_state *ps, struct stoken str)
void write_exp_elt_type(struct parser_state *ps, struct type *expelt)
static const char *const yytname[]
#define yypact_value_is_default(Yystate)
void error(const char *fmt,...)
struct type * lookup_pointer_type(struct type *type)
static const yytype_uint8 yystos[]
void do_cleanups(struct cleanup *old_chain)
char * copy_name(struct stoken token)
const ULONGEST const LONGEST len