47 #define YYBISON_VERSION "3.0.4" 50 #define YYSKELETON_NAME "yacc.c" 63 #define yyparse yyjsilparse 64 #define yylex yyjsillex 65 #define yyerror yyjsilerror 66 #define yydebug yyjsildebug 67 #define yynerrs yyjsilnerrs 69 #define yylval yyjsillval 70 #define yychar yyjsilchar 77 #define PARSER jsil_parser 84 #define YYSTYPE unsigned 85 #define YYSTYPE_IS_TRIVIAL 1 94 #line 95 "jsil_y.tab.cpp" 97 # if defined __cplusplus && 201103L <= __cplusplus 98 # define YY_NULLPTR nullptr 100 # define YY_NULLPTR 0 105 #ifdef YYERROR_VERBOSE 106 # undef YYERROR_VERBOSE 107 # define YYERROR_VERBOSE 1 109 # define YYERROR_VERBOSE 1 114 #ifndef YY_YYJSIL_JSIL_Y_TAB_HPP_INCLUDED 115 # define YY_YYJSIL_JSIL_Y_TAB_HPP_INCLUDED 121 extern int yyjsildebug;
194 #define TOK_SCANNER_ERROR 258 195 #define TOK_NEWLINE 259 196 #define TOK_PROCEDURE 260 197 #define TOK_RETURNS 261 199 #define TOK_THROWS 263 201 #define TOK_LABEL 265 206 #define TOK_HAS_FIELD 270 207 #define TOK_DELETE 271 208 #define TOK_PROTO_FIELD 272 209 #define TOK_PROTO_OBJ 273 211 #define TOK_FIELD 275 213 #define TOK_TYPEOF 277 215 #define TOK_UNDEFINED 279 216 #define TOK_EMPTY 280 218 #define TOK_FALSE 282 219 #define TOK_PROTO 283 221 #define TOK_SCOPE 285 222 #define TOK_CONSTRUCTID 286 223 #define TOK_PRIMVALUE 287 224 #define TOK_TARGETFUNCTION 288 225 #define TOK_CLASS 289 226 #define TOK_NUM_TO_STRING 290 227 #define TOK_STRING_TO_NUM 291 228 #define TOK_NUM_TO_INT32 292 229 #define TOK_NUM_TO_UINT32 293 230 #define TOK_MEMBER_REFERENCE 294 231 #define TOK_VARIABLE_REFERENCE 295 232 #define TOK_T_NULL 296 233 #define TOK_T_UNDEFINED 297 234 #define TOK_T_BOOLEAN 298 235 #define TOK_T_STRING 299 236 #define TOK_T_NUMBER 300 237 #define TOK_T_BUILTIN_OBJECT 301 238 #define TOK_T_USER_OBJECT 302 239 #define TOK_T_OBJECT 303 240 #define TOK_T_REFERENCE 304 241 #define TOK_DEFEQ 305 245 #define TOK_SUBTYPE_OF 309 246 #define TOK_LEFT_SHIFT 310 247 #define TOK_SIGNED_RIGHT_SHIFT 311 248 #define TOK_UNSIGNED_RIGHT_SHIFT 312 250 #define TOK_IDENTIFIER 314 251 #define TOK_FLOATING 315 252 #define TOK_STRING 316 253 #define TOK_BUILTIN_LOC 317 254 #define TOK_BUILTIN_IDENTIFIER 318 255 #define TOK_SPEC_IDENTIFIER 319 258 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 260 # define YYSTYPE_IS_TRIVIAL 1 261 # define YYSTYPE_IS_DECLARED 1 273 #line 274 "jsil_y.tab.cpp" 304 # ifdef __SIZE_TYPE__ 305 # define YYSIZE_T __SIZE_TYPE__ 306 # elif defined size_t 307 # define YYSIZE_T size_t 308 # elif ! defined YYSIZE_T 310 # define YYSIZE_T size_t 312 # define YYSIZE_T unsigned int 316 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) 319 # if defined YYENABLE_NLS && YYENABLE_NLS 321 # include <libintl.h> 322 # define YY_(Msgid) dgettext ("bison-runtime", Msgid) 326 # define YY_(Msgid) Msgid 331 # if (defined __GNUC__ \ 332 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \ 333 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C 334 # define YY_ATTRIBUTE(Spec) __attribute__(Spec) 336 # define YY_ATTRIBUTE(Spec) 340 #ifndef YY_ATTRIBUTE_PURE 341 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__)) 344 #ifndef YY_ATTRIBUTE_UNUSED 345 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) 348 #if !defined _Noreturn \ 349 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112) 350 # if defined _MSC_VER && 1200 <= _MSC_VER 351 # define _Noreturn __declspec (noreturn) 353 # define _Noreturn YY_ATTRIBUTE ((__noreturn__)) 358 #if ! defined lint || defined __GNUC__ 359 # define YYUSE(E) ((void) (E)) 364 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ 366 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ 367 _Pragma ("GCC diagnostic push") \ 368 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ 369 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") 370 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \ 371 _Pragma ("GCC diagnostic pop") 373 # define YY_INITIAL_VALUE(Value) Value 375 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 376 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 377 # define YY_IGNORE_MAYBE_UNINITIALIZED_END 379 #ifndef YY_INITIAL_VALUE 380 # define YY_INITIAL_VALUE(Value) 384 #if ! defined yyoverflow || YYERROR_VERBOSE 388 # ifdef YYSTACK_USE_ALLOCA 389 # if YYSTACK_USE_ALLOCA 391 # define YYSTACK_ALLOC __builtin_alloca 392 # elif defined __BUILTIN_VA_ARG_INCR 395 # define YYSTACK_ALLOC __alloca 396 # elif defined _MSC_VER 398 # define alloca _alloca 400 # define YYSTACK_ALLOC alloca 401 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS 404 # ifndef EXIT_SUCCESS 405 # define EXIT_SUCCESS 0 412 # ifdef YYSTACK_ALLOC 414 # define YYSTACK_FREE(Ptr) do { ; } while (0) 415 # ifndef YYSTACK_ALLOC_MAXIMUM 420 # define YYSTACK_ALLOC_MAXIMUM 4032 423 # define YYSTACK_ALLOC YYMALLOC 424 # define YYSTACK_FREE YYFREE 425 # ifndef YYSTACK_ALLOC_MAXIMUM 426 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM 428 # if (defined __cplusplus && ! defined EXIT_SUCCESS \ 429 && ! ((defined YYMALLOC || defined malloc) \ 430 && (defined YYFREE || defined free))) 432 # ifndef EXIT_SUCCESS 433 # define EXIT_SUCCESS 0 437 # define YYMALLOC malloc 438 # if ! defined malloc && ! defined EXIT_SUCCESS 444 # if ! defined free && ! defined EXIT_SUCCESS 452 #if (! defined yyoverflow \ 453 && (! defined __cplusplus \ 454 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 464 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) 468 # define YYSTACK_BYTES(N) \ 469 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ 470 + YYSTACK_GAP_MAXIMUM) 472 # define YYCOPY_NEEDED 1 479 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \ 482 YYSIZE_T yynewbytes; \ 483 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ 484 Stack = &yyptr->Stack_alloc; \ 485 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 486 yyptr += yynewbytes / sizeof (*yyptr); \ 492 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED 496 # if defined __GNUC__ && 1 < __GNUC__ 497 # define YYCOPY(Dst, Src, Count) \ 498 __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) 500 # define YYCOPY(Dst, Src, Count) \ 504 for (yyi = 0; yyi < (Count); yyi++) \ 505 (Dst)[yyi] = (Src)[yyi]; \ 524 #define YYNSTATES 192 529 #define YYMAXUTOK 319 531 #define YYTRANSLATE(YYX) \ 532 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 538 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
539 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
540 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
541 2, 2, 2, 83, 2, 2, 2, 78, 80, 2,
542 65, 66, 76, 74, 69, 75, 2, 77, 2, 2,
543 2, 2, 2, 2, 2, 2, 2, 2, 79, 2,
544 73, 72, 2, 2, 2, 2, 2, 2, 2, 2,
545 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
546 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
547 2, 70, 2, 71, 82, 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, 67, 81, 68, 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, 2, 2, 2, 2,
559 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
560 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
561 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
562 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
563 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
564 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
565 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
566 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
567 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
568 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
569 55, 56, 57, 58, 59, 60, 61, 62, 63, 64
576 0, 108, 108, 111, 112, 115, 148, 149, 154, 158,
577 164, 165, 173, 176, 179, 184, 192, 195, 198, 204,
578 211, 215, 221, 228, 233, 245, 249, 254, 262, 263,
579 278, 283, 291, 296, 304, 312, 323, 326, 333, 336,
580 339, 344, 351, 352, 360, 361, 366, 370, 379, 386,
581 393, 402, 403, 407, 411, 415, 419, 423, 424, 430,
582 431, 432, 435, 439, 443, 447, 451, 455, 459, 465,
583 466, 467, 468, 471, 475, 479, 485, 489, 493, 497,
584 501, 507, 511, 515, 519, 525, 529, 533, 537, 541,
585 545, 551, 555, 559, 563, 567, 571, 575, 581, 585,
586 589, 593, 597, 601, 605, 609, 613, 614, 621, 625
590 #if YYDEBUG || YYERROR_VERBOSE || 1 595 "$end",
"error",
"$undefined",
"TOK_SCANNER_ERROR",
"\"<newline>\"",
596 "\"procedure\"",
"\"returns\"",
"\"to\"",
"\"throws\"",
"\"eval\"",
597 "\"label\"",
"\"goto\"",
"\"skip\"",
"\"with\"",
"\"new\"",
598 "\"hasField\"",
"\"delete\"",
"\"protoField\"",
"\"protoObj\"",
599 "\"ref\"",
"\"field\"",
"\"base\"",
"\"typeOf\"",
"\"null\"",
600 "\"#undefined\"",
"\"#empty\"",
"\"true\"",
"\"false\"",
"\"#proto\"",
601 "\"#fid\"",
"\"#scope\"",
"\"#constructid\"",
"\"#primvalue\"",
602 "\"#targetfunction\"",
"\"#class\"",
"\"num_to_string\"",
603 "\"string_to_num\"",
"\"num_to_int32\"",
"\"num_to_uint32\"",
604 "\"#MemberReference\"",
"\"#VariableReference\"",
"\"#Null\"",
605 "\"#Undefined\"",
"\"#Boolean\"",
"\"#String\"",
"\"#Number\"",
606 "\"#BuiltinObject\"",
"\"#UserObject\"",
"\"#Object\"",
"\"#Reference\"",
607 "\":=\"",
"\"<=\"",
"\"and\"",
"\"or\"",
"\"<:\"",
"\"<<\"",
"\">>\"",
608 "\">>>\"",
"\"not\"",
"TOK_IDENTIFIER",
"TOK_FLOATING",
"TOK_STRING",
609 "TOK_BUILTIN_LOC",
"TOK_BUILTIN_IDENTIFIER",
"TOK_SPEC_IDENTIFIER",
610 "'('",
"')'",
"'{'",
"'}'",
"','",
"'['",
"']'",
"'='",
"'<'",
"'+'",
611 "'-'",
"'*'",
"'/'",
"'%'",
"':'",
"'&'",
"'|'",
"'^'",
"'!'",
"$accept",
612 "program",
"procedure_decls",
"procedure_decl",
"proc_ident",
613 "proc_ident_expr",
"parameters_opt",
"parameters",
"statements_opt",
614 "statements",
"statement",
"instruction",
"rhs",
"with_opt",
615 "expressions_opt",
"expressions",
"expression",
"atom_expression",
616 "literal",
"builtin_field",
"binary_op",
"compare_op",
"arithmetic_op",
617 "boolean_op",
"bitwise_op",
"unary_op",
"jsil_type",
"ref_type",
YY_NULLPTR 626 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
627 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
628 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
629 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
630 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
631 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
632 315, 316, 317, 318, 319, 40, 41, 123, 125, 44,
633 91, 93, 61, 60, 43, 45, 42, 47, 37, 58,
638 #define YYPACT_NINF -147 640 #define yypact_value_is_default(Yystate) \ 641 (!!((Yystate) == (-147))) 643 #define YYTABLE_NINF -12 645 #define yytable_value_is_error(Yytable_value) \ 652 0, -3, 7, 0, -147, -147, -147, -147, -147, -52,
653 -147, -147, -45, -147, -50, -51, 11, -39, -38, -147,
654 12, -37, 15, -35, 18, -33, -36, -2, -147, -32,
655 -55, -147, -22, 185, -34, -2, -147, 25, -147, -147,
656 185, 120, -30, -29, -26, -25, -147, -147, -147, -147,
657 -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
658 -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
659 -147, -147, -147, -147, -147, -147, -147, -147, 185, -147,
660 -147, 31, -147, -147, -147, 185, -147, -147, -147, -147,
661 -147, 200, -24, -23, -21, -20, -18, -17, -16, 185,
662 -147, -15, -147, 776, 185, 185, 185, 185, 232, -147,
663 -147, -147, -147, -147, -147, -147, 185, -147, -147, -147,
664 -147, -147, -147, -147, -147, -147, -147, -147, 185, -147,
665 -147, -147, -147, -147, -27, -14, 185, 185, 185, 185,
666 264, 185, 296, 328, 360, 392, -147, 424, -147, -11,
667 -147, 456, 488, 520, 552, 185, -13, -7, 776, 185,
668 -147, -147, -147, 1, -5, 185, 185, 185, 185, 584,
669 17, 185, 616, 185, -147, 648, 680, 712, 744, -147,
670 -4, -147, 776, -28, 776, -147, -147, -147, -147, -147,
679 0, 0, 0, 2, 3, 7, 6, 8, 9, 0,
680 1, 4, 12, 14, 0, 13, 0, 0, 0, 15,
681 0, 0, 0, 0, 0, 0, 0, 16, 20, 0,
682 0, 25, 0, 0, 0, 17, 18, 0, 22, 23,
683 0, 0, 0, 0, 0, 0, 52, 53, 54, 55,
684 56, 62, 63, 64, 65, 66, 67, 68, 93, 94,
685 95, 96, 108, 109, 98, 99, 100, 101, 102, 103,
686 104, 105, 107, 91, 51, 57, 58, 59, 0, 92,
687 97, 0, 42, 44, 61, 0, 60, 106, 5, 19,
688 21, 0, 0, 0, 0, 0, 0, 51, 58, 0,
689 10, 0, 26, 28, 0, 0, 0, 0, 0, 75,
690 81, 82, 83, 88, 89, 90, 0, 73, 74, 76,
691 77, 78, 79, 80, 84, 85, 86, 87, 0, 69,
692 70, 71, 72, 45, 0, 0, 0, 0, 0, 0,
693 0, 38, 0, 0, 0, 0, 46, 0, 43, 0,
694 30, 0, 0, 0, 0, 0, 0, 39, 40, 0,
695 48, 49, 50, 0, 0, 0, 0, 0, 0, 0,
696 36, 0, 0, 0, 24, 0, 0, 0, 0, 32,
697 0, 29, 41, 0, 27, 31, 33, 34, 35, 37,
704 -147, -147, -147, 30, 2, -147, -147, -147, -147, -147,
705 28, -147, -147, -147, -147, -147, -40, -82, -147, -147,
706 -147, -147, -147, -147, -147, -147, -147, -146
712 -1, 2, 3, 4, 9, 101, 14, 15, 34, 35,
713 36, 37, 102, 181, 156, 157, 81, 82, 83, 84,
714 128, 129, 130, 131, 132, 85, 86, 87
722 91, 103, 28, 133, 39, 1, 5, 10, 29, 30,
723 31, 62, 63, 12, 13, 40, 16, 18, 17, 21,
724 19, 20, 22, 23, 24, 25, 26, 38, 41, 90,
725 180, 27, 149, 11, 88, 104, 105, 190, 108, 106,
726 107, 135, 136, 100, 137, 138, 148, 139, -6, -11,
727 141, 173, 150, 170, 174, 189, 6, 32, 164, 140,
728 7, 8, 171, 89, 142, 143, 144, 145, 33, 191,
729 0, 0, 0, 0, 0, 0, 147, 0, 0, 0,
730 0, 0, 109, 110, 111, 112, 113, 114, 115, 0,
731 0, 0, 0, 0, 0, 0, 151, 152, 153, 154,
732 116, 158, 0, 117, 118, 119, 120, 121, 122, 123,
733 124, 125, 126, 127, 0, 169, 0, 0, 0, 172,
734 0, 0, 0, 0, 0, 175, 176, 177, 178, 5,
735 0, 182, 0, 184, 92, 93, 94, 95, 96, 42,
736 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
737 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
738 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
739 0, 0, 0, 0, 0, 0, 0, 0, 73, 97,
740 75, 98, 77, 7, 8, 78, 0, 0, 0, 0,
741 99, 0, 0, 0, 0, 79, 0, 0, 0, 0,
742 0, 0, 0, 80, 42, 43, 44, 45, 46, 47,
743 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
744 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
745 68, 69, 70, 71, 72, 0, 0, 0, 0, 0,
746 0, 0, 0, 73, 74, 75, 76, 77, 0, 0,
747 78, 109, 110, 111, 112, 113, 114, 115, 0, 0,
748 79, 0, 0, 0, 0, 0, 0, 0, 80, 0,
749 0, 134, 117, 118, 119, 120, 121, 122, 123, 124,
750 125, 126, 127, 109, 110, 111, 112, 113, 114, 115,
751 0, 0, 0, 0, 0, 0, 0, 0, 146, 0,
752 0, 0, 0, 0, 117, 118, 119, 120, 121, 122,
753 123, 124, 125, 126, 127, 109, 110, 111, 112, 113,
754 114, 115, 0, 0, 0, 0, 0, 0, 0, 0,
755 0, 0, 0, 155, 0, 0, 117, 118, 119, 120,
756 121, 122, 123, 124, 125, 126, 127, 109, 110, 111,
757 112, 113, 114, 115, 0, 0, 0, 0, 0, 0,
758 0, 0, 0, 0, 0, 159, 0, 0, 117, 118,
759 119, 120, 121, 122, 123, 124, 125, 126, 127, 109,
760 110, 111, 112, 113, 114, 115, 0, 0, 0, 0,
761 0, 0, 0, 0, 160, 0, 0, 0, 0, 0,
762 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
763 127, 109, 110, 111, 112, 113, 114, 115, 0, 0,
764 0, 0, 0, 0, 0, 0, 161, 0, 0, 0,
765 0, 0, 117, 118, 119, 120, 121, 122, 123, 124,
766 125, 126, 127, 109, 110, 111, 112, 113, 114, 115,
767 0, 0, 0, 0, 0, 0, 0, 0, 162, 0,
768 0, 0, 0, 0, 117, 118, 119, 120, 121, 122,
769 123, 124, 125, 126, 127, 109, 110, 111, 112, 113,
770 114, 115, 0, 0, 0, 0, 0, 0, 0, 0,
771 0, 0, 0, 0, 0, 163, 117, 118, 119, 120,
772 121, 122, 123, 124, 125, 126, 127, 109, 110, 111,
773 112, 113, 114, 115, 0, 0, 0, 0, 0, 0,
774 0, 0, 0, 0, 0, 165, 0, 0, 117, 118,
775 119, 120, 121, 122, 123, 124, 125, 126, 127, 109,
776 110, 111, 112, 113, 114, 115, 0, 0, 0, 0,
777 0, 0, 0, 0, 0, 0, 0, 166, 0, 0,
778 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
779 127, 109, 110, 111, 112, 113, 114, 115, 0, 0,
780 0, 0, 0, 0, 0, 0, 0, 0, 0, 167,
781 0, 0, 117, 118, 119, 120, 121, 122, 123, 124,
782 125, 126, 127, 109, 110, 111, 112, 113, 114, 115,
783 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
784 0, 168, 0, 0, 117, 118, 119, 120, 121, 122,
785 123, 124, 125, 126, 127, 109, 110, 111, 112, 113,
786 114, 115, 0, 0, 0, 0, 0, 0, 0, 0,
787 0, 0, 0, 0, 0, 179, 117, 118, 119, 120,
788 121, 122, 123, 124, 125, 126, 127, 109, 110, 111,
789 112, 113, 114, 115, 0, 0, 0, 0, 0, 0,
790 0, 0, 0, 0, 0, 183, 0, 0, 117, 118,
791 119, 120, 121, 122, 123, 124, 125, 126, 127, 109,
792 110, 111, 112, 113, 114, 115, 0, 0, 0, 0,
793 0, 0, 0, 0, 185, 0, 0, 0, 0, 0,
794 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
795 127, 109, 110, 111, 112, 113, 114, 115, 0, 0,
796 0, 0, 0, 0, 0, 0, 186, 0, 0, 0,
797 0, 0, 117, 118, 119, 120, 121, 122, 123, 124,
798 125, 126, 127, 109, 110, 111, 112, 113, 114, 115,
799 0, 0, 0, 0, 0, 0, 0, 0, 187, 0,
800 0, 0, 0, 0, 117, 118, 119, 120, 121, 122,
801 123, 124, 125, 126, 127, 109, 110, 111, 112, 113,
802 114, 115, 0, 0, 0, 0, 0, 0, 0, 0,
803 188, 0, 0, 0, 0, 0, 117, 118, 119, 120,
804 121, 122, 123, 124, 125, 126, 127, 109, 110, 111,
805 112, 113, 114, 115, 0, 0, 0, 0, 0, 0,
806 0, 0, 0, 0, 0, 0, 0, 0, 117, 118,
807 119, 120, 121, 122, 123, 124, 125, 126, 127
812 40, 41, 4, 85, 59, 5, 9, 0, 10, 11,
813 12, 39, 40, 65, 59, 70, 66, 6, 69, 7,
814 59, 59, 59, 8, 59, 7, 59, 59, 50, 4,
815 13, 67, 59, 3, 68, 65, 65, 183, 78, 65,
816 65, 65, 65, 41, 65, 65, 128, 65, 65, 65,
817 65, 50, 66, 66, 59, 59, 59, 59, 69, 99,
818 63, 64, 69, 35, 104, 105, 106, 107, 70, 66,
819 -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
820 -1, -1, 51, 52, 53, 54, 55, 56, 57, -1,
821 -1, -1, -1, -1, -1, -1, 136, 137, 138, 139,
822 69, 141, -1, 72, 73, 74, 75, 76, 77, 78,
823 79, 80, 81, 82, -1, 155, -1, -1, -1, 159,
824 -1, -1, -1, -1, -1, 165, 166, 167, 168, 9,
825 -1, 171, -1, 173, 14, 15, 16, 17, 18, 19,
826 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
827 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
828 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
829 -1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
830 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
831 70, -1, -1, -1, -1, 75, -1, -1, -1, -1,
832 -1, -1, -1, 83, 19, 20, 21, 22, 23, 24,
833 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
834 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
835 45, 46, 47, 48, 49, -1, -1, -1, -1, -1,
836 -1, -1, -1, 58, 59, 60, 61, 62, -1, -1,
837 65, 51, 52, 53, 54, 55, 56, 57, -1, -1,
838 75, -1, -1, -1, -1, -1, -1, -1, 83, -1,
839 -1, 71, 72, 73, 74, 75, 76, 77, 78, 79,
840 80, 81, 82, 51, 52, 53, 54, 55, 56, 57,
841 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
842 -1, -1, -1, -1, 72, 73, 74, 75, 76, 77,
843 78, 79, 80, 81, 82, 51, 52, 53, 54, 55,
844 56, 57, -1, -1, -1, -1, -1, -1, -1, -1,
845 -1, -1, -1, 69, -1, -1, 72, 73, 74, 75,
846 76, 77, 78, 79, 80, 81, 82, 51, 52, 53,
847 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
848 -1, -1, -1, -1, -1, 69, -1, -1, 72, 73,
849 74, 75, 76, 77, 78, 79, 80, 81, 82, 51,
850 52, 53, 54, 55, 56, 57, -1, -1, -1, -1,
851 -1, -1, -1, -1, 66, -1, -1, -1, -1, -1,
852 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
853 82, 51, 52, 53, 54, 55, 56, 57, -1, -1,
854 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
855 -1, -1, 72, 73, 74, 75, 76, 77, 78, 79,
856 80, 81, 82, 51, 52, 53, 54, 55, 56, 57,
857 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
858 -1, -1, -1, -1, 72, 73, 74, 75, 76, 77,
859 78, 79, 80, 81, 82, 51, 52, 53, 54, 55,
860 56, 57, -1, -1, -1, -1, -1, -1, -1, -1,
861 -1, -1, -1, -1, -1, 71, 72, 73, 74, 75,
862 76, 77, 78, 79, 80, 81, 82, 51, 52, 53,
863 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
864 -1, -1, -1, -1, -1, 69, -1, -1, 72, 73,
865 74, 75, 76, 77, 78, 79, 80, 81, 82, 51,
866 52, 53, 54, 55, 56, 57, -1, -1, -1, -1,
867 -1, -1, -1, -1, -1, -1, -1, 69, -1, -1,
868 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
869 82, 51, 52, 53, 54, 55, 56, 57, -1, -1,
870 -1, -1, -1, -1, -1, -1, -1, -1, -1, 69,
871 -1, -1, 72, 73, 74, 75, 76, 77, 78, 79,
872 80, 81, 82, 51, 52, 53, 54, 55, 56, 57,
873 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
874 -1, 69, -1, -1, 72, 73, 74, 75, 76, 77,
875 78, 79, 80, 81, 82, 51, 52, 53, 54, 55,
876 56, 57, -1, -1, -1, -1, -1, -1, -1, -1,
877 -1, -1, -1, -1, -1, 71, 72, 73, 74, 75,
878 76, 77, 78, 79, 80, 81, 82, 51, 52, 53,
879 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
880 -1, -1, -1, -1, -1, 69, -1, -1, 72, 73,
881 74, 75, 76, 77, 78, 79, 80, 81, 82, 51,
882 52, 53, 54, 55, 56, 57, -1, -1, -1, -1,
883 -1, -1, -1, -1, 66, -1, -1, -1, -1, -1,
884 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
885 82, 51, 52, 53, 54, 55, 56, 57, -1, -1,
886 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
887 -1, -1, 72, 73, 74, 75, 76, 77, 78, 79,
888 80, 81, 82, 51, 52, 53, 54, 55, 56, 57,
889 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
890 -1, -1, -1, -1, 72, 73, 74, 75, 76, 77,
891 78, 79, 80, 81, 82, 51, 52, 53, 54, 55,
892 56, 57, -1, -1, -1, -1, -1, -1, -1, -1,
893 66, -1, -1, -1, -1, -1, 72, 73, 74, 75,
894 76, 77, 78, 79, 80, 81, 82, 51, 52, 53,
895 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
896 -1, -1, -1, -1, -1, -1, -1, -1, 72, 73,
897 74, 75, 76, 77, 78, 79, 80, 81, 82
904 0, 5, 85, 86, 87, 9, 59, 63, 64, 88,
905 0, 87, 65, 59, 90, 91, 66, 69, 6, 59,
906 59, 7, 59, 8, 59, 7, 59, 67, 4, 10,
907 11, 12, 59, 70, 92, 93, 94, 95, 59, 59,
908 70, 50, 19, 20, 21, 22, 23, 24, 25, 26,
909 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
910 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
911 47, 48, 49, 58, 59, 60, 61, 62, 65, 75,
912 83, 100, 101, 102, 103, 109, 110, 111, 68, 94,
913 4, 100, 14, 15, 16, 17, 18, 59, 61, 70,
914 88, 89, 96, 100, 65, 65, 65, 65, 100, 51,
915 52, 53, 54, 55, 56, 57, 69, 72, 73, 74,
916 75, 76, 77, 78, 79, 80, 81, 82, 104, 105,
917 106, 107, 108, 101, 71, 65, 65, 65, 65, 65,
918 100, 65, 100, 100, 100, 100, 66, 100, 101, 59,
919 66, 100, 100, 100, 100, 69, 98, 99, 100, 69,
920 66, 66, 66, 71, 69, 69, 69, 69, 69, 100,
921 66, 69, 100, 50, 59, 100, 100, 100, 100, 71,
922 13, 97, 100, 69, 100, 66, 66, 66, 66, 59,
929 0, 84, 85, 86, 86, 87, 88, 88, 88, 88,
930 89, 89, 90, 90, 91, 91, 92, 92, 93, 93,
931 94, 94, 95, 95, 95, 95, 95, 95, 96, 96,
932 96, 96, 96, 96, 96, 96, 97, 97, 98, 98,
933 99, 99, 100, 100, 101, 101, 101, 101, 101, 101,
934 101, 102, 102, 102, 102, 102, 102, 102, 102, 102,
935 102, 102, 103, 103, 103, 103, 103, 103, 103, 104,
936 104, 104, 104, 105, 105, 105, 106, 106, 106, 106,
937 106, 107, 107, 107, 107, 108, 108, 108, 108, 108,
938 108, 109, 109, 109, 109, 109, 109, 109, 110, 110,
939 110, 110, 110, 110, 110, 110, 110, 110, 111, 111
945 0, 2, 1, 1, 2, 16, 1, 1, 1, 1,
946 1, 1, 0, 1, 1, 3, 0, 1, 1, 2,
947 1, 2, 2, 2, 7, 1, 3, 7, 1, 5,
948 3, 6, 5, 6, 6, 6, 0, 2, 0, 1,
949 1, 3, 1, 3, 1, 2, 3, 8, 4, 4,
950 4, 1, 1, 1, 1, 1, 1, 1, 1, 1,
951 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
952 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
953 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
954 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
955 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
959 #define yyerrok (yyerrstatus = 0) 960 #define yyclearin (yychar = YYEMPTY) 964 #define YYACCEPT goto yyacceptlab 965 #define YYABORT goto yyabortlab 966 #define YYERROR goto yyerrorlab 969 #define YYRECOVERING() (!!yyerrstatus) 971 #define YYBACKUP(Token, Value) \ 973 if (yychar == YYEMPTY) \ 977 YYPOPSTACK (yylen); \ 983 yyerror (YY_("syntax error: cannot back up")); \ 990 #define YYERRCODE 256 999 # define YYFPRINTF fprintf 1002 # define YYDPRINTF(Args) \ 1009 #ifndef YY_LOCATION_PRINT 1010 # define YY_LOCATION_PRINT(File, Loc) ((void) 0) 1014 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ 1018 YYFPRINTF (stderr, "%s ", Title); \ 1019 yy_symbol_print (stderr, \ 1021 YYFPRINTF (stderr, "\n"); \ 1031 yy_symbol_value_print (FILE *yyoutput,
int yytype,
YYSTYPE const *
const yyvaluep)
1033 FILE *yyo = yyoutput;
1039 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
1050 yy_symbol_print (FILE *yyoutput,
int yytype,
YYSTYPE const *
const yyvaluep)
1052 YYFPRINTF (yyoutput,
"%s %s (",
1055 yy_symbol_value_print (yyoutput, yytype, yyvaluep);
1056 YYFPRINTF (yyoutput,
")");
1067 YYFPRINTF (stderr,
"Stack now");
1068 for (; yybottom <= yytop; yybottom++)
1070 int yybot = *yybottom;
1071 YYFPRINTF (stderr,
" %d", yybot);
1073 YYFPRINTF (stderr,
"\n");
1076 # define YY_STACK_PRINT(Bottom, Top) \ 1079 yy_stack_print ((Bottom), (Top)); \ 1090 unsigned long int yylno = yyrline[yyrule];
1091 int yynrhs =
yyr2[yyrule];
1093 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %lu):\n",
1096 for (yyi = 0; yyi < yynrhs; yyi++)
1098 YYFPRINTF (stderr,
" $%d = ", yyi + 1);
1099 yy_symbol_print (stderr,
1100 yystos[yyssp[yyi + 1 - yynrhs]],
1101 &(yyvsp[(yyi + 1) - (yynrhs)])
1103 YYFPRINTF (stderr,
"\n");
1107 # define YY_REDUCE_PRINT(Rule) \ 1110 yy_reduce_print (yyssp, yyvsp, Rule); \ 1117 # define YYDPRINTF(Args) 1118 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) 1119 # define YY_STACK_PRINT(Bottom, Top) 1120 # define YY_REDUCE_PRINT(Rule) 1126 # define YYINITDEPTH 200 1137 # define YYMAXDEPTH 10000 1144 # if defined __GLIBC__ && defined _STRING_H 1145 # define yystrlen strlen 1152 for (yylen = 0; yystr[yylen]; yylen++)
1160 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE 1161 # define yystpcpy stpcpy 1169 const char *yys = yysrc;
1171 while ((*yyd++ = *yys++) !=
'\0')
1193 char const *yyp = yystr;
1200 goto do_not_strip_quotes;
1204 goto do_not_strip_quotes;
1217 do_not_strip_quotes: ;
1223 return yystpcpy (yyres, yystr) - yyres;
1241 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1245 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1275 int yyn =
yypact[*yyssp];
1276 yyarg[yycount++] =
yytname[yytoken];
1282 int yyxbegin = yyn < 0 ? -yyn : 0;
1284 int yychecklim =
YYLAST - yyn + 1;
1288 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1292 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1298 yyarg[yycount++] =
yytname[yyx];
1301 if (! (yysize <= yysize1
1312 # define YYCASE_(N, S) \ 1317 YYCASE_(1,
YY_(
"syntax error, unexpected %s"));
1318 YYCASE_(2,
YY_(
"syntax error, unexpected %s, expecting %s"));
1319 YYCASE_(3,
YY_(
"syntax error, unexpected %s, expecting %s or %s"));
1320 YYCASE_(4,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s"));
1321 YYCASE_(5,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s"));
1332 if (*yymsg_alloc < yysize)
1334 *yymsg_alloc = 2 * yysize;
1335 if (! (yysize <= *yymsg_alloc
1347 while ((*yyp = *yyformat) !=
'\0')
1348 if (*yyp ==
'%' && yyformat[1] ==
's' && yyi < yycount)
1433 char *yymsg = yymsgbuf;
1434 YYSIZE_T yymsg_alloc =
sizeof yymsgbuf;
1437 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) 1443 yyssp = yyss = yyssa;
1444 yyvsp = yyvs = yyvsa;
1447 YYDPRINTF ((stderr,
"Starting parse\n"));
1466 if (yyss + yystacksize - 1 <= yyssp)
1469 YYSIZE_T yysize = yyssp - yyss + 1;
1483 yyoverflow (
YY_(
"memory exhausted"),
1484 &yyss1, yysize *
sizeof (*yyssp),
1485 &yyvs1, yysize *
sizeof (*yyvsp),
1492 # ifndef YYSTACK_RELOCATE 1493 goto yyexhaustedlab;
1497 goto yyexhaustedlab;
1507 goto yyexhaustedlab;
1510 # undef YYSTACK_RELOCATE 1517 yyssp = yyss + yysize - 1;
1518 yyvsp = yyvs + yysize - 1;
1520 YYDPRINTF ((stderr,
"Stack size increased to %lu\n",
1521 (
unsigned long int) yystacksize));
1523 if (yyss + yystacksize - 1 <= yyssp)
1527 YYDPRINTF ((stderr,
"Entering state %d\n", yystate));
1552 YYDPRINTF ((stderr,
"Reading a token: "));
1559 YYDPRINTF ((stderr,
"Now at end of input.\n"));
1625 yyval = yyvsp[1-yylen];
1632 #line 119 "parser.y" 1655 if(
stack((yyvsp[-1])).is_not_nil())
1658 PARSER.parse_tree.items.push_back(decl);
1660 #line 1661 "jsil_y.tab.cpp" 1664 #line 150 "parser.y" 1669 #line 1670 "jsil_y.tab.cpp" 1673 #line 155 "parser.y" 1675 stack((yyval)).set(
"proc_type",
"builtin");
1677 #line 1678 "jsil_y.tab.cpp" 1681 #line 159 "parser.y" 1683 stack((yyval)).set(
"proc_type",
"spec");
1685 #line 1686 "jsil_y.tab.cpp" 1689 #line 166 "parser.y" 1692 stack((yyval)).swap(s);
1694 #line 1695 "jsil_y.tab.cpp" 1698 #line 173 "parser.y" 1702 #line 1703 "jsil_y.tab.cpp" 1706 #line 180 "parser.y" 1708 newstack((yyval)).id(ID_parameters);
1709 stack((yyval)).move_to_operands(
stack((yyvsp[0])));
1711 #line 1712 "jsil_y.tab.cpp" 1715 #line 185 "parser.y" 1717 (yyval)=(yyvsp[-2]);
1718 stack((yyval)).move_to_operands(
stack((yyvsp[0])));
1720 #line 1721 "jsil_y.tab.cpp" 1724 #line 192 "parser.y" 1728 #line 1729 "jsil_y.tab.cpp" 1732 #line 199 "parser.y" 1736 stack((yyval)).move_to_operands(
stack((yyvsp[0])));
1738 #line 1739 "jsil_y.tab.cpp" 1742 #line 205 "parser.y" 1744 (yyval)=(yyvsp[-1]);
1745 stack((yyval)).move_to_operands(
stack((yyvsp[0])));
1747 #line 1748 "jsil_y.tab.cpp" 1751 #line 212 "parser.y" 1755 #line 1756 "jsil_y.tab.cpp" 1759 #line 216 "parser.y" 1761 (yyval)=(yyvsp[-1]);
1763 #line 1764 "jsil_y.tab.cpp" 1767 #line 222 "parser.y" 1774 #line 1775 "jsil_y.tab.cpp" 1778 #line 229 "parser.y" 1783 #line 1784 "jsil_y.tab.cpp" 1787 #line 234 "parser.y" 1799 #line 1800 "jsil_y.tab.cpp" 1803 #line 246 "parser.y" 1807 #line 1808 "jsil_y.tab.cpp" 1811 #line 250 "parser.y" 1816 #line 1817 "jsil_y.tab.cpp" 1820 #line 255 "parser.y" 1826 #line 1827 "jsil_y.tab.cpp" 1830 #line 264 "parser.y" 1834 if(
stack((yyvsp[-2])).is_not_nil())
1839 if(
stack((yyvsp[0])).is_not_nil())
1842 stack((yyval)).swap(w);
1845 #line 1846 "jsil_y.tab.cpp" 1849 #line 279 "parser.y" 1854 #line 1855 "jsil_y.tab.cpp" 1858 #line 284 "parser.y" 1860 exprt has_field(
"hasField");
1866 #line 1867 "jsil_y.tab.cpp" 1870 #line 292 "parser.y" 1875 #line 1876 "jsil_y.tab.cpp" 1879 #line 297 "parser.y" 1887 #line 1888 "jsil_y.tab.cpp" 1891 #line 305 "parser.y" 1893 exprt proto_field(
"protoField");
1897 newstack((yyval)).swap(proto_field);
1899 #line 1900 "jsil_y.tab.cpp" 1903 #line 313 "parser.y" 1905 exprt proto_obj(
"protoObj");
1911 #line 1912 "jsil_y.tab.cpp" 1915 #line 323 "parser.y" 1919 #line 1920 "jsil_y.tab.cpp" 1923 #line 327 "parser.y" 1927 #line 1928 "jsil_y.tab.cpp" 1931 #line 333 "parser.y" 1935 #line 1936 "jsil_y.tab.cpp" 1939 #line 340 "parser.y" 1941 newstack((yyval)).id(ID_expression_list);
1942 stack((yyval)).move_to_operands(
stack((yyvsp[0])));
1944 #line 1945 "jsil_y.tab.cpp" 1948 #line 345 "parser.y" 1950 (yyval)=(yyvsp[-2]);
1951 stack((yyval)).move_to_operands(
stack((yyvsp[0])));
1953 #line 1954 "jsil_y.tab.cpp" 1957 #line 353 "parser.y" 1959 (yyval)=(yyvsp[-1]);
1960 stack((yyval)).move_to_operands(
stack((yyvsp[-2])));
1961 stack((yyval)).move_to_operands(
stack((yyvsp[0])));
1963 #line 1964 "jsil_y.tab.cpp" 1967 #line 362 "parser.y" 1969 (yyval)=(yyvsp[-1]);
1970 stack((yyval)).move_to_operands(
stack((yyvsp[0])));
1972 #line 1973 "jsil_y.tab.cpp" 1976 #line 367 "parser.y" 1978 (yyval)=(yyvsp[-1]);
1980 #line 1981 "jsil_y.tab.cpp" 1984 #line 371 "parser.y" 1993 #line 1994 "jsil_y.tab.cpp" 1997 #line 380 "parser.y" 1999 exprt field(
"field");
2004 #line 2005 "jsil_y.tab.cpp" 2008 #line 387 "parser.y" 2010 exprt base(ID_base);
2015 #line 2016 "jsil_y.tab.cpp" 2019 #line 394 "parser.y" 2021 exprt typeof_expr(ID_typeof);
2024 newstack((yyval)).swap(typeof_expr);
2026 #line 2027 "jsil_y.tab.cpp" 2030 #line 404 "parser.y" 2034 #line 2035 "jsil_y.tab.cpp" 2038 #line 408 "parser.y" 2042 #line 2043 "jsil_y.tab.cpp" 2046 #line 412 "parser.y" 2050 #line 2051 "jsil_y.tab.cpp" 2054 #line 416 "parser.y" 2058 #line 2059 "jsil_y.tab.cpp" 2062 #line 420 "parser.y" 2066 #line 2067 "jsil_y.tab.cpp" 2070 #line 425 "parser.y" 2074 stack((yyval)).swap(c);
2076 #line 2077 "jsil_y.tab.cpp" 2080 #line 436 "parser.y" 2084 #line 2085 "jsil_y.tab.cpp" 2088 #line 440 "parser.y" 2092 #line 2093 "jsil_y.tab.cpp" 2096 #line 444 "parser.y" 2100 #line 2101 "jsil_y.tab.cpp" 2104 #line 448 "parser.y" 2106 newstack((yyval)).id(
"constructid");
2108 #line 2109 "jsil_y.tab.cpp" 2112 #line 452 "parser.y" 2116 #line 2117 "jsil_y.tab.cpp" 2120 #line 456 "parser.y" 2122 newstack((yyval)).id(
"targetfunction");
2124 #line 2125 "jsil_y.tab.cpp" 2128 #line 460 "parser.y" 2132 #line 2133 "jsil_y.tab.cpp" 2136 #line 472 "parser.y" 2140 #line 2141 "jsil_y.tab.cpp" 2144 #line 476 "parser.y" 2148 #line 2149 "jsil_y.tab.cpp" 2152 #line 480 "parser.y" 2156 #line 2157 "jsil_y.tab.cpp" 2160 #line 486 "parser.y" 2164 #line 2165 "jsil_y.tab.cpp" 2168 #line 490 "parser.y" 2172 #line 2173 "jsil_y.tab.cpp" 2176 #line 494 "parser.y" 2180 #line 2181 "jsil_y.tab.cpp" 2184 #line 498 "parser.y" 2188 #line 2189 "jsil_y.tab.cpp" 2192 #line 502 "parser.y" 2196 #line 2197 "jsil_y.tab.cpp" 2200 #line 508 "parser.y" 2204 #line 2205 "jsil_y.tab.cpp" 2208 #line 512 "parser.y" 2212 #line 2213 "jsil_y.tab.cpp" 2216 #line 516 "parser.y" 2218 newstack((yyval)).id(
"subtype_of");
2220 #line 2221 "jsil_y.tab.cpp" 2224 #line 520 "parser.y" 2226 newstack((yyval)).id(ID_concatenation);
2228 #line 2229 "jsil_y.tab.cpp" 2232 #line 526 "parser.y" 2236 #line 2237 "jsil_y.tab.cpp" 2240 #line 530 "parser.y" 2244 #line 2245 "jsil_y.tab.cpp" 2248 #line 534 "parser.y" 2252 #line 2253 "jsil_y.tab.cpp" 2256 #line 538 "parser.y" 2260 #line 2261 "jsil_y.tab.cpp" 2264 #line 542 "parser.y" 2268 #line 2269 "jsil_y.tab.cpp" 2272 #line 546 "parser.y" 2276 #line 2277 "jsil_y.tab.cpp" 2280 #line 552 "parser.y" 2284 #line 2285 "jsil_y.tab.cpp" 2288 #line 556 "parser.y" 2290 newstack((yyval)).id(ID_unary_minus);
2292 #line 2293 "jsil_y.tab.cpp" 2296 #line 560 "parser.y" 2298 newstack((yyval)).id(
"num_to_string");
2300 #line 2301 "jsil_y.tab.cpp" 2304 #line 564 "parser.y" 2306 newstack((yyval)).id(
"string_to_num");
2308 #line 2309 "jsil_y.tab.cpp" 2312 #line 568 "parser.y" 2314 newstack((yyval)).id(
"num_to_int32");
2316 #line 2317 "jsil_y.tab.cpp" 2320 #line 572 "parser.y" 2322 newstack((yyval)).id(
"num_to_uint32");
2324 #line 2325 "jsil_y.tab.cpp" 2328 #line 576 "parser.y" 2332 #line 2333 "jsil_y.tab.cpp" 2336 #line 582 "parser.y" 2340 #line 2341 "jsil_y.tab.cpp" 2344 #line 586 "parser.y" 2346 newstack((yyval)).id(
"undefined_type");
2348 #line 2349 "jsil_y.tab.cpp" 2352 #line 590 "parser.y" 2356 #line 2357 "jsil_y.tab.cpp" 2360 #line 594 "parser.y" 2364 #line 2365 "jsil_y.tab.cpp" 2368 #line 598 "parser.y" 2372 #line 2373 "jsil_y.tab.cpp" 2376 #line 602 "parser.y" 2378 newstack((yyval)).id(
"builtin_object");
2380 #line 2381 "jsil_y.tab.cpp" 2384 #line 606 "parser.y" 2386 newstack((yyval)).id(
"user_object");
2388 #line 2389 "jsil_y.tab.cpp" 2392 #line 610 "parser.y" 2396 #line 2397 "jsil_y.tab.cpp" 2400 #line 615 "parser.y" 2403 newstack((yyval)).set(ID_C_reference,
true);
2405 #line 2406 "jsil_y.tab.cpp" 2409 #line 622 "parser.y" 2413 #line 2414 "jsil_y.tab.cpp" 2417 #line 626 "parser.y" 2421 #line 2422 "jsil_y.tab.cpp" 2425 #line 2426 "jsil_y.tab.cpp" 2454 if (0 <= yystate && yystate <=
YYLAST &&
yycheck[yystate] == *yyssp)
2474 #if ! YYERROR_VERBOSE 2477 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ 2480 char const *yymsgp =
YY_(
"syntax error");
2481 int yysyntax_error_status;
2483 if (yysyntax_error_status == 0)
2485 else if (yysyntax_error_status == 1)
2487 if (yymsg != yymsgbuf)
2493 yymsg_alloc =
sizeof yymsgbuf;
2494 yysyntax_error_status = 2;
2503 if (yysyntax_error_status == 2)
2504 goto yyexhaustedlab;
2506 # undef YYSYNTAX_ERROR 2512 if (yyerrstatus == 3)
2614 #if !defined yyoverflow || YYERROR_VERBOSE 2637 while (yyssp != yyss)
2648 if (yymsg != yymsgbuf)
2653 #line 631 "parser.y"
const codet & then_case() const
static int yysyntax_error(size_t *yymsg_alloc, char **yymsg, yytype_int16 *yyssp, int yytoken)
#define TOK_NUM_TO_UINT32
#define TOK_T_BUILTIN_OBJECT
#define TOK_UNSIGNED_RIGHT_SHIFT
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
static const yytype_int16 yypact[]
#define TOK_VARIABLE_REFERENCE
const exprt & cond() const
static const yytype_uint8 yydefact[]
#define TOK_BUILTIN_IDENTIFIER
const irep_idt & get_identifier() const
void move_to_operands(exprt &expr)
static const char *const yytname[]
#define yypact_value_is_default(Yystate)
A constant literal expression.
#define TOK_SIGNED_RIGHT_SHIFT
static void yydestruct(const char *yymsg, int yytype, unsigned *yyvaluep)
static const yytype_uint8 yyr1[]
static size_t yytnamerr(char *yyres, const char *yystr)
#define YYSTACK_ALLOC_MAXIMUM
unsigned short int yytype_uint16
#define YY_REDUCE_PRINT(Rule)
int yyjsillex()
The main scanner function which does all the work.
#define TOK_T_USER_OBJECT
static const yytype_int16 yytable[]
API to expression classes.
#define TOK_NUM_TO_STRING
A label for branch targets.
static size_t yystrlen(const char *yystr)
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
#define forall_operands(it, expr)
void add_throws(const irep_idt &value, const irep_idt &label)
const symbol_exprt & to_symbol_expr(const exprt &expr)
Cast a generic exprt to a symbol_exprt.
unsigned char yytype_uint8
static const yytype_uint8 yystos[]
static const yytype_uint8 yytranslate[]
static const yytype_int16 yydefgoto[]
void add_declarator(const symbol_exprt &expr)
A function call side effect.
#define TOK_SCANNER_ERROR
void set_identifier(const irep_idt &identifier)
const string_constantt & to_string_constant(const exprt &expr)
unsigned char yytype_uint8
void add_value(const code_blockt &code)
void set_statement(const irep_idt &statement)
void add_returns(const irep_idt &value, const irep_idt &label)
Base class for all expressions.
const parameterst & parameters() const
#define yytable_value_is_error(Yytable_value)
#define YY_STACK_PRINT(Bottom, Top)
Operator to update elements in structs and arrays.
static const yytype_uint8 yyr2[]
static const yytype_int16 yycheck[]
#define TOK_MEMBER_REFERENCE
exprt::operandst & arguments()
unsigned short int yytype_uint16
const codet & to_code(const exprt &expr)
Expression to hold a symbol (variable)
const code_blockt & to_code_block(const codet &code)
#define TOK_TARGETFUNCTION
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
const codet & else_case() const
#define TOK_SPEC_IDENTIFIER
#define TOK_STRING_TO_NUM
static const yytype_int16 yypgoto[]
static char * yystpcpy(char *yydest, const char *yysrc)
#define YYSTACK_RELOCATE(Stack_alloc, Stack)