51 #define YYBISON_VERSION "3.5"
54 #define YYSKELETON_NAME "yacc.c"
67 #define yyparse yyjsilparse
68 #define yylex yyjsillex
69 #define yyerror yyjsilerror
70 #define yydebug yyjsildebug
71 #define yynerrs yyjsilnerrs
72 #define yylval yyjsillval
73 #define yychar yyjsilchar
80 #define PARSER jsil_parser
87 #define YYSTYPE unsigned
88 #define YYSTYPE_IS_TRIVIAL 1
97 #line 98 "jsil_y.tab.cpp"
101 # define YY_CAST(Type, Val) static_cast<Type> (Val)
102 # define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast<Type> (Val)
104 # define YY_CAST(Type, Val) ((Type) (Val))
105 # define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
109 # if defined __cplusplus
110 # if 201103L <= __cplusplus
111 # define YY_NULLPTR nullptr
113 # define YY_NULLPTR 0
116 # define YY_NULLPTR ((void*)0)
121 #ifdef YYERROR_VERBOSE
122 # undef YYERROR_VERBOSE
123 # define YYERROR_VERBOSE 1
125 # define YYERROR_VERBOSE 1
130 #ifndef YY_YYJSIL_JSIL_Y_TAB_HPP_INCLUDED
131 # define YY_YYJSIL_JSIL_Y_TAB_HPP_INCLUDED
137 extern int yyjsildebug;
210 #define TOK_SCANNER_ERROR 258
211 #define TOK_NEWLINE 259
212 #define TOK_PROCEDURE 260
213 #define TOK_RETURNS 261
215 #define TOK_THROWS 263
217 #define TOK_LABEL 265
222 #define TOK_HAS_FIELD 270
223 #define TOK_DELETE 271
224 #define TOK_PROTO_FIELD 272
225 #define TOK_PROTO_OBJ 273
227 #define TOK_FIELD 275
229 #define TOK_TYPEOF 277
231 #define TOK_UNDEFINED 279
232 #define TOK_EMPTY 280
234 #define TOK_FALSE 282
235 #define TOK_PROTO 283
237 #define TOK_SCOPE 285
238 #define TOK_CONSTRUCTID 286
239 #define TOK_PRIMVALUE 287
240 #define TOK_TARGETFUNCTION 288
241 #define TOK_CLASS 289
242 #define TOK_NUM_TO_STRING 290
243 #define TOK_STRING_TO_NUM 291
244 #define TOK_NUM_TO_INT32 292
245 #define TOK_NUM_TO_UINT32 293
246 #define TOK_MEMBER_REFERENCE 294
247 #define TOK_VARIABLE_REFERENCE 295
248 #define TOK_T_NULL 296
249 #define TOK_T_UNDEFINED 297
250 #define TOK_T_BOOLEAN 298
251 #define TOK_T_STRING 299
252 #define TOK_T_NUMBER 300
253 #define TOK_T_BUILTIN_OBJECT 301
254 #define TOK_T_USER_OBJECT 302
255 #define TOK_T_OBJECT 303
256 #define TOK_T_REFERENCE 304
257 #define TOK_DEFEQ 305
261 #define TOK_SUBTYPE_OF 309
262 #define TOK_LEFT_SHIFT 310
263 #define TOK_SIGNED_RIGHT_SHIFT 311
264 #define TOK_UNSIGNED_RIGHT_SHIFT 312
266 #define TOK_IDENTIFIER 314
267 #define TOK_FLOATING 315
268 #define TOK_STRING 316
269 #define TOK_BUILTIN_LOC 317
270 #define TOK_BUILTIN_IDENTIFIER 318
271 #define TOK_SPEC_IDENTIFIER 319
274 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
276 # define YYSTYPE_IS_TRIVIAL 1
277 # define YYSTYPE_IS_DECLARED 1
297 #ifndef __PTRDIFF_MAX__
299 # if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
310 #ifdef __INT_LEAST8_MAX__
312 #elif defined YY_STDINT_H
318 #ifdef __INT_LEAST16_MAX__
320 #elif defined YY_STDINT_H
326 #if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
328 #elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
329 && UINT_LEAST8_MAX <= INT_MAX)
331 #elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
337 #if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
339 #elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
340 && UINT_LEAST16_MAX <= INT_MAX)
342 #elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
349 # if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
350 # define YYPTRDIFF_T __PTRDIFF_TYPE__
351 # define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__
352 # elif defined PTRDIFF_MAX
356 # define YYPTRDIFF_T ptrdiff_t
357 # define YYPTRDIFF_MAXIMUM PTRDIFF_MAX
359 # define YYPTRDIFF_T long
360 # define YYPTRDIFF_MAXIMUM LONG_MAX
365 # ifdef __SIZE_TYPE__
366 # define YYSIZE_T __SIZE_TYPE__
367 # elif defined size_t
368 # define YYSIZE_T size_t
369 # elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
371 # define YYSIZE_T size_t
373 # define YYSIZE_T unsigned
377 #define YYSIZE_MAXIMUM \
378 YY_CAST (YYPTRDIFF_T, \
379 (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \
380 ? YYPTRDIFF_MAXIMUM \
381 : YY_CAST (YYSIZE_T, -1)))
383 #define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X))
392 # if defined YYENABLE_NLS && YYENABLE_NLS
394 # include <libintl.h>
395 # define YY_(Msgid) dgettext ("bison-runtime", Msgid)
399 # define YY_(Msgid) Msgid
403 #ifndef YY_ATTRIBUTE_PURE
404 # if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
405 # define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
407 # define YY_ATTRIBUTE_PURE
411 #ifndef YY_ATTRIBUTE_UNUSED
412 # if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
413 # define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
415 # define YY_ATTRIBUTE_UNUSED
420 #if ! defined lint || defined __GNUC__
421 # define YYUSE(E) ((void) (E))
426 #if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
428 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
429 _Pragma ("GCC diagnostic push") \
430 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
431 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
432 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
433 _Pragma ("GCC diagnostic pop")
435 # define YY_INITIAL_VALUE(Value) Value
437 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
438 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
439 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
441 #ifndef YY_INITIAL_VALUE
442 # define YY_INITIAL_VALUE(Value)
445 #if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
446 # define YY_IGNORE_USELESS_CAST_BEGIN \
447 _Pragma ("GCC diagnostic push") \
448 _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
449 # define YY_IGNORE_USELESS_CAST_END \
450 _Pragma ("GCC diagnostic pop")
452 #ifndef YY_IGNORE_USELESS_CAST_BEGIN
453 # define YY_IGNORE_USELESS_CAST_BEGIN
454 # define YY_IGNORE_USELESS_CAST_END
458 #define YY_ASSERT(E) ((void) (0 && (E)))
460 #if ! defined yyoverflow || YYERROR_VERBOSE
464 # ifdef YYSTACK_USE_ALLOCA
465 # if YYSTACK_USE_ALLOCA
467 # define YYSTACK_ALLOC __builtin_alloca
468 # elif defined __BUILTIN_VA_ARG_INCR
471 # define YYSTACK_ALLOC __alloca
472 # elif defined _MSC_VER
474 # define alloca _alloca
476 # define YYSTACK_ALLOC alloca
477 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
480 # ifndef EXIT_SUCCESS
481 # define EXIT_SUCCESS 0
488 # ifdef YYSTACK_ALLOC
490 # define YYSTACK_FREE(Ptr) do { ; } while (0)
491 # ifndef YYSTACK_ALLOC_MAXIMUM
496 # define YYSTACK_ALLOC_MAXIMUM 4032
499 # define YYSTACK_ALLOC YYMALLOC
500 # define YYSTACK_FREE YYFREE
501 # ifndef YYSTACK_ALLOC_MAXIMUM
502 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
504 # if (defined __cplusplus && ! defined EXIT_SUCCESS \
505 && ! ((defined YYMALLOC || defined malloc) \
506 && (defined YYFREE || defined free)))
508 # ifndef EXIT_SUCCESS
509 # define EXIT_SUCCESS 0
513 # define YYMALLOC malloc
514 # if ! defined malloc && ! defined EXIT_SUCCESS
520 # if ! defined free && ! defined EXIT_SUCCESS
528 #if (! defined yyoverflow \
529 && (! defined __cplusplus \
530 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
540 # define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1)
544 # define YYSTACK_BYTES(N) \
545 ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \
546 + YYSTACK_GAP_MAXIMUM)
548 # define YYCOPY_NEEDED 1
555 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
558 YYPTRDIFF_T yynewbytes; \
559 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
560 Stack = &yyptr->Stack_alloc; \
561 yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
562 yyptr += yynewbytes / YYSIZEOF (*yyptr); \
568 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
572 # if defined __GNUC__ && 1 < __GNUC__
573 # define YYCOPY(Dst, Src, Count) \
574 __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src)))
576 # define YYCOPY(Dst, Src, Count) \
580 for (yyi = 0; yyi < (Count); yyi++) \
581 (Dst)[yyi] = (Src)[yyi]; \
600 #define YYNSTATES 192
603 #define YYMAXUTOK 319
608 #define YYTRANSLATE(YYX) \
609 (0 <= (YYX) && (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
615 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
616 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
617 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
618 2, 2, 2, 83, 2, 2, 2, 78, 80, 2,
619 65, 66, 76, 74, 69, 75, 2, 77, 2, 2,
620 2, 2, 2, 2, 2, 2, 2, 2, 79, 2,
621 73, 72, 2, 2, 2, 2, 2, 2, 2, 2,
622 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
623 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
624 2, 70, 2, 71, 82, 2, 2, 2, 2, 2,
625 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
626 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
627 2, 2, 2, 67, 81, 68, 2, 2, 2, 2,
628 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
629 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
630 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
631 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
632 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
633 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
634 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
635 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
636 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
637 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
638 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
639 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
640 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
641 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
642 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
643 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
644 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
645 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
646 55, 56, 57, 58, 59, 60, 61, 62, 63, 64
653 0, 108, 108, 111, 112, 115, 148, 149, 154, 158,
654 164, 165, 173, 176, 179, 184, 192, 195, 198, 204,
655 211, 215, 221, 228, 233, 242, 246, 251, 259, 260,
656 275, 280, 288, 293, 301, 309, 320, 323, 330, 333,
657 336, 341, 348, 349, 357, 358, 363, 367, 376, 383,
658 390, 399, 400, 404, 408, 412, 416, 420, 421, 427,
659 428, 429, 432, 436, 440, 444, 448, 452, 456, 462,
660 463, 464, 465, 468, 472, 476, 482, 486, 490, 494,
661 498, 504, 508, 512, 516, 522, 526, 530, 534, 538,
662 542, 548, 552, 556, 560, 564, 568, 572, 578, 582,
663 586, 590, 594, 598, 602, 606, 610, 611, 618, 622
667 #if YYDEBUG || YYERROR_VERBOSE || 1
672 "$end",
"error",
"$undefined",
"TOK_SCANNER_ERROR",
"\"<newline>\"",
673 "\"procedure\"",
"\"returns\"",
"\"to\"",
"\"throws\"",
"\"eval\"",
674 "\"label\"",
"\"goto\"",
"\"skip\"",
"\"with\"",
"\"new\"",
675 "\"hasField\"",
"\"delete\"",
"\"protoField\"",
"\"protoObj\"",
676 "\"ref\"",
"\"field\"",
"\"base\"",
"\"typeOf\"",
"\"null\"",
677 "\"#undefined\"",
"\"#empty\"",
"\"true\"",
"\"false\"",
"\"#proto\"",
678 "\"#fid\"",
"\"#scope\"",
"\"#constructid\"",
"\"#primvalue\"",
679 "\"#targetfunction\"",
"\"#class\"",
"\"num_to_string\"",
680 "\"string_to_num\"",
"\"num_to_int32\"",
"\"num_to_uint32\"",
681 "\"#MemberReference\"",
"\"#VariableReference\"",
"\"#Null\"",
682 "\"#Undefined\"",
"\"#Boolean\"",
"\"#String\"",
"\"#Number\"",
683 "\"#BuiltinObject\"",
"\"#UserObject\"",
"\"#Object\"",
"\"#Reference\"",
684 "\":=\"",
"\"<=\"",
"\"and\"",
"\"or\"",
"\"<:\"",
"\"<<\"",
"\">>\"",
685 "\">>>\"",
"\"not\"",
"TOK_IDENTIFIER",
"TOK_FLOATING",
"TOK_STRING",
686 "TOK_BUILTIN_LOC",
"TOK_BUILTIN_IDENTIFIER",
"TOK_SPEC_IDENTIFIER",
687 "'('",
"')'",
"'{'",
"'}'",
"','",
"'['",
"']'",
"'='",
"'<'",
"'+'",
688 "'-'",
"'*'",
"'/'",
"'%'",
"':'",
"'&'",
"'|'",
"'^'",
"'!'",
"$accept",
689 "program",
"procedure_decls",
"procedure_decl",
"proc_ident",
690 "proc_ident_expr",
"parameters_opt",
"parameters",
"statements_opt",
691 "statements",
"statement",
"instruction",
"rhs",
"with_opt",
692 "expressions_opt",
"expressions",
"expression",
"atom_expression",
693 "literal",
"builtin_field",
"binary_op",
"compare_op",
"arithmetic_op",
694 "boolean_op",
"bitwise_op",
"unary_op",
"jsil_type",
"ref_type",
YY_NULLPTR
703 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
704 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
705 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
706 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
707 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
708 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
709 315, 316, 317, 318, 319, 40, 41, 123, 125, 44,
710 91, 93, 61, 60, 43, 45, 42, 47, 37, 58,
715 #define YYPACT_NINF (-147)
717 #define yypact_value_is_default(Yyn) \
718 ((Yyn) == YYPACT_NINF)
720 #define YYTABLE_NINF (-12)
722 #define yytable_value_is_error(Yyn) \
729 0, -3, 7, 0, -147, -147, -147, -147, -147, -52,
730 -147, -147, -45, -147, -50, -51, 11, -39, -38, -147,
731 12, -37, 15, -35, 18, -33, -36, -2, -147, -32,
732 -55, -147, -22, 185, -34, -2, -147, 25, -147, -147,
733 185, 120, -30, -29, -26, -25, -147, -147, -147, -147,
734 -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
735 -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
736 -147, -147, -147, -147, -147, -147, -147, -147, 185, -147,
737 -147, 31, -147, -147, -147, 185, -147, -147, -147, -147,
738 -147, 200, -24, -23, -21, -20, -18, -17, -16, 185,
739 -147, -15, -147, 776, 185, 185, 185, 185, 232, -147,
740 -147, -147, -147, -147, -147, -147, 185, -147, -147, -147,
741 -147, -147, -147, -147, -147, -147, -147, -147, 185, -147,
742 -147, -147, -147, -147, -27, -14, 185, 185, 185, 185,
743 264, 185, 296, 328, 360, 392, -147, 424, -147, -11,
744 -147, 456, 488, 520, 552, 185, -13, -7, 776, 185,
745 -147, -147, -147, 1, -5, 185, 185, 185, 185, 584,
746 17, 185, 616, 185, -147, 648, 680, 712, 744, -147,
747 -4, -147, 776, -28, 776, -147, -147, -147, -147, -147,
756 0, 0, 0, 2, 3, 7, 6, 8, 9, 0,
757 1, 4, 12, 14, 0, 13, 0, 0, 0, 15,
758 0, 0, 0, 0, 0, 0, 0, 16, 20, 0,
759 0, 25, 0, 0, 0, 17, 18, 0, 22, 23,
760 0, 0, 0, 0, 0, 0, 52, 53, 54, 55,
761 56, 62, 63, 64, 65, 66, 67, 68, 93, 94,
762 95, 96, 108, 109, 98, 99, 100, 101, 102, 103,
763 104, 105, 107, 91, 51, 57, 58, 59, 0, 92,
764 97, 0, 42, 44, 61, 0, 60, 106, 5, 19,
765 21, 0, 0, 0, 0, 0, 0, 51, 58, 0,
766 10, 0, 26, 28, 0, 0, 0, 0, 0, 75,
767 81, 82, 83, 88, 89, 90, 0, 73, 74, 76,
768 77, 78, 79, 80, 84, 85, 86, 87, 0, 69,
769 70, 71, 72, 45, 0, 0, 0, 0, 0, 0,
770 0, 38, 0, 0, 0, 0, 46, 0, 43, 0,
771 30, 0, 0, 0, 0, 0, 0, 39, 40, 0,
772 48, 49, 50, 0, 0, 0, 0, 0, 0, 0,
773 36, 0, 0, 0, 24, 0, 0, 0, 0, 32,
774 0, 29, 41, 0, 27, 31, 33, 34, 35, 37,
781 -147, -147, -147, 30, 2, -147, -147, -147, -147, -147,
782 28, -147, -147, -147, -147, -147, -40, -82, -147, -147,
783 -147, -147, -147, -147, -147, -147, -147, -146
789 -1, 2, 3, 4, 9, 101, 14, 15, 34, 35,
790 36, 37, 102, 181, 156, 157, 81, 82, 83, 84,
791 128, 129, 130, 131, 132, 85, 86, 87
799 91, 103, 28, 133, 39, 1, 5, 10, 29, 30,
800 31, 62, 63, 12, 13, 40, 16, 18, 17, 21,
801 19, 20, 22, 23, 24, 25, 26, 38, 41, 90,
802 180, 27, 149, 11, 88, 104, 105, 190, 108, 106,
803 107, 135, 136, 100, 137, 138, 148, 139, -6, -11,
804 141, 173, 150, 170, 174, 189, 6, 32, 164, 140,
805 7, 8, 171, 89, 142, 143, 144, 145, 33, 191,
806 0, 0, 0, 0, 0, 0, 147, 0, 0, 0,
807 0, 0, 109, 110, 111, 112, 113, 114, 115, 0,
808 0, 0, 0, 0, 0, 0, 151, 152, 153, 154,
809 116, 158, 0, 117, 118, 119, 120, 121, 122, 123,
810 124, 125, 126, 127, 0, 169, 0, 0, 0, 172,
811 0, 0, 0, 0, 0, 175, 176, 177, 178, 5,
812 0, 182, 0, 184, 92, 93, 94, 95, 96, 42,
813 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
814 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
815 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
816 0, 0, 0, 0, 0, 0, 0, 0, 73, 97,
817 75, 98, 77, 7, 8, 78, 0, 0, 0, 0,
818 99, 0, 0, 0, 0, 79, 0, 0, 0, 0,
819 0, 0, 0, 80, 42, 43, 44, 45, 46, 47,
820 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
821 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
822 68, 69, 70, 71, 72, 0, 0, 0, 0, 0,
823 0, 0, 0, 73, 74, 75, 76, 77, 0, 0,
824 78, 109, 110, 111, 112, 113, 114, 115, 0, 0,
825 79, 0, 0, 0, 0, 0, 0, 0, 80, 0,
826 0, 134, 117, 118, 119, 120, 121, 122, 123, 124,
827 125, 126, 127, 109, 110, 111, 112, 113, 114, 115,
828 0, 0, 0, 0, 0, 0, 0, 0, 146, 0,
829 0, 0, 0, 0, 117, 118, 119, 120, 121, 122,
830 123, 124, 125, 126, 127, 109, 110, 111, 112, 113,
831 114, 115, 0, 0, 0, 0, 0, 0, 0, 0,
832 0, 0, 0, 155, 0, 0, 117, 118, 119, 120,
833 121, 122, 123, 124, 125, 126, 127, 109, 110, 111,
834 112, 113, 114, 115, 0, 0, 0, 0, 0, 0,
835 0, 0, 0, 0, 0, 159, 0, 0, 117, 118,
836 119, 120, 121, 122, 123, 124, 125, 126, 127, 109,
837 110, 111, 112, 113, 114, 115, 0, 0, 0, 0,
838 0, 0, 0, 0, 160, 0, 0, 0, 0, 0,
839 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
840 127, 109, 110, 111, 112, 113, 114, 115, 0, 0,
841 0, 0, 0, 0, 0, 0, 161, 0, 0, 0,
842 0, 0, 117, 118, 119, 120, 121, 122, 123, 124,
843 125, 126, 127, 109, 110, 111, 112, 113, 114, 115,
844 0, 0, 0, 0, 0, 0, 0, 0, 162, 0,
845 0, 0, 0, 0, 117, 118, 119, 120, 121, 122,
846 123, 124, 125, 126, 127, 109, 110, 111, 112, 113,
847 114, 115, 0, 0, 0, 0, 0, 0, 0, 0,
848 0, 0, 0, 0, 0, 163, 117, 118, 119, 120,
849 121, 122, 123, 124, 125, 126, 127, 109, 110, 111,
850 112, 113, 114, 115, 0, 0, 0, 0, 0, 0,
851 0, 0, 0, 0, 0, 165, 0, 0, 117, 118,
852 119, 120, 121, 122, 123, 124, 125, 126, 127, 109,
853 110, 111, 112, 113, 114, 115, 0, 0, 0, 0,
854 0, 0, 0, 0, 0, 0, 0, 166, 0, 0,
855 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
856 127, 109, 110, 111, 112, 113, 114, 115, 0, 0,
857 0, 0, 0, 0, 0, 0, 0, 0, 0, 167,
858 0, 0, 117, 118, 119, 120, 121, 122, 123, 124,
859 125, 126, 127, 109, 110, 111, 112, 113, 114, 115,
860 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
861 0, 168, 0, 0, 117, 118, 119, 120, 121, 122,
862 123, 124, 125, 126, 127, 109, 110, 111, 112, 113,
863 114, 115, 0, 0, 0, 0, 0, 0, 0, 0,
864 0, 0, 0, 0, 0, 179, 117, 118, 119, 120,
865 121, 122, 123, 124, 125, 126, 127, 109, 110, 111,
866 112, 113, 114, 115, 0, 0, 0, 0, 0, 0,
867 0, 0, 0, 0, 0, 183, 0, 0, 117, 118,
868 119, 120, 121, 122, 123, 124, 125, 126, 127, 109,
869 110, 111, 112, 113, 114, 115, 0, 0, 0, 0,
870 0, 0, 0, 0, 185, 0, 0, 0, 0, 0,
871 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
872 127, 109, 110, 111, 112, 113, 114, 115, 0, 0,
873 0, 0, 0, 0, 0, 0, 186, 0, 0, 0,
874 0, 0, 117, 118, 119, 120, 121, 122, 123, 124,
875 125, 126, 127, 109, 110, 111, 112, 113, 114, 115,
876 0, 0, 0, 0, 0, 0, 0, 0, 187, 0,
877 0, 0, 0, 0, 117, 118, 119, 120, 121, 122,
878 123, 124, 125, 126, 127, 109, 110, 111, 112, 113,
879 114, 115, 0, 0, 0, 0, 0, 0, 0, 0,
880 188, 0, 0, 0, 0, 0, 117, 118, 119, 120,
881 121, 122, 123, 124, 125, 126, 127, 109, 110, 111,
882 112, 113, 114, 115, 0, 0, 0, 0, 0, 0,
883 0, 0, 0, 0, 0, 0, 0, 0, 117, 118,
884 119, 120, 121, 122, 123, 124, 125, 126, 127
889 40, 41, 4, 85, 59, 5, 9, 0, 10, 11,
890 12, 39, 40, 65, 59, 70, 66, 6, 69, 7,
891 59, 59, 59, 8, 59, 7, 59, 59, 50, 4,
892 13, 67, 59, 3, 68, 65, 65, 183, 78, 65,
893 65, 65, 65, 41, 65, 65, 128, 65, 65, 65,
894 65, 50, 66, 66, 59, 59, 59, 59, 69, 99,
895 63, 64, 69, 35, 104, 105, 106, 107, 70, 66,
896 -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
897 -1, -1, 51, 52, 53, 54, 55, 56, 57, -1,
898 -1, -1, -1, -1, -1, -1, 136, 137, 138, 139,
899 69, 141, -1, 72, 73, 74, 75, 76, 77, 78,
900 79, 80, 81, 82, -1, 155, -1, -1, -1, 159,
901 -1, -1, -1, -1, -1, 165, 166, 167, 168, 9,
902 -1, 171, -1, 173, 14, 15, 16, 17, 18, 19,
903 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
904 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
905 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
906 -1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
907 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
908 70, -1, -1, -1, -1, 75, -1, -1, -1, -1,
909 -1, -1, -1, 83, 19, 20, 21, 22, 23, 24,
910 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
911 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
912 45, 46, 47, 48, 49, -1, -1, -1, -1, -1,
913 -1, -1, -1, 58, 59, 60, 61, 62, -1, -1,
914 65, 51, 52, 53, 54, 55, 56, 57, -1, -1,
915 75, -1, -1, -1, -1, -1, -1, -1, 83, -1,
916 -1, 71, 72, 73, 74, 75, 76, 77, 78, 79,
917 80, 81, 82, 51, 52, 53, 54, 55, 56, 57,
918 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
919 -1, -1, -1, -1, 72, 73, 74, 75, 76, 77,
920 78, 79, 80, 81, 82, 51, 52, 53, 54, 55,
921 56, 57, -1, -1, -1, -1, -1, -1, -1, -1,
922 -1, -1, -1, 69, -1, -1, 72, 73, 74, 75,
923 76, 77, 78, 79, 80, 81, 82, 51, 52, 53,
924 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
925 -1, -1, -1, -1, -1, 69, -1, -1, 72, 73,
926 74, 75, 76, 77, 78, 79, 80, 81, 82, 51,
927 52, 53, 54, 55, 56, 57, -1, -1, -1, -1,
928 -1, -1, -1, -1, 66, -1, -1, -1, -1, -1,
929 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
930 82, 51, 52, 53, 54, 55, 56, 57, -1, -1,
931 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
932 -1, -1, 72, 73, 74, 75, 76, 77, 78, 79,
933 80, 81, 82, 51, 52, 53, 54, 55, 56, 57,
934 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
935 -1, -1, -1, -1, 72, 73, 74, 75, 76, 77,
936 78, 79, 80, 81, 82, 51, 52, 53, 54, 55,
937 56, 57, -1, -1, -1, -1, -1, -1, -1, -1,
938 -1, -1, -1, -1, -1, 71, 72, 73, 74, 75,
939 76, 77, 78, 79, 80, 81, 82, 51, 52, 53,
940 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
941 -1, -1, -1, -1, -1, 69, -1, -1, 72, 73,
942 74, 75, 76, 77, 78, 79, 80, 81, 82, 51,
943 52, 53, 54, 55, 56, 57, -1, -1, -1, -1,
944 -1, -1, -1, -1, -1, -1, -1, 69, -1, -1,
945 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
946 82, 51, 52, 53, 54, 55, 56, 57, -1, -1,
947 -1, -1, -1, -1, -1, -1, -1, -1, -1, 69,
948 -1, -1, 72, 73, 74, 75, 76, 77, 78, 79,
949 80, 81, 82, 51, 52, 53, 54, 55, 56, 57,
950 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
951 -1, 69, -1, -1, 72, 73, 74, 75, 76, 77,
952 78, 79, 80, 81, 82, 51, 52, 53, 54, 55,
953 56, 57, -1, -1, -1, -1, -1, -1, -1, -1,
954 -1, -1, -1, -1, -1, 71, 72, 73, 74, 75,
955 76, 77, 78, 79, 80, 81, 82, 51, 52, 53,
956 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
957 -1, -1, -1, -1, -1, 69, -1, -1, 72, 73,
958 74, 75, 76, 77, 78, 79, 80, 81, 82, 51,
959 52, 53, 54, 55, 56, 57, -1, -1, -1, -1,
960 -1, -1, -1, -1, 66, -1, -1, -1, -1, -1,
961 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
962 82, 51, 52, 53, 54, 55, 56, 57, -1, -1,
963 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
964 -1, -1, 72, 73, 74, 75, 76, 77, 78, 79,
965 80, 81, 82, 51, 52, 53, 54, 55, 56, 57,
966 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
967 -1, -1, -1, -1, 72, 73, 74, 75, 76, 77,
968 78, 79, 80, 81, 82, 51, 52, 53, 54, 55,
969 56, 57, -1, -1, -1, -1, -1, -1, -1, -1,
970 66, -1, -1, -1, -1, -1, 72, 73, 74, 75,
971 76, 77, 78, 79, 80, 81, 82, 51, 52, 53,
972 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
973 -1, -1, -1, -1, -1, -1, -1, -1, 72, 73,
974 74, 75, 76, 77, 78, 79, 80, 81, 82
981 0, 5, 85, 86, 87, 9, 59, 63, 64, 88,
982 0, 87, 65, 59, 90, 91, 66, 69, 6, 59,
983 59, 7, 59, 8, 59, 7, 59, 67, 4, 10,
984 11, 12, 59, 70, 92, 93, 94, 95, 59, 59,
985 70, 50, 19, 20, 21, 22, 23, 24, 25, 26,
986 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
987 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
988 47, 48, 49, 58, 59, 60, 61, 62, 65, 75,
989 83, 100, 101, 102, 103, 109, 110, 111, 68, 94,
990 4, 100, 14, 15, 16, 17, 18, 59, 61, 70,
991 88, 89, 96, 100, 65, 65, 65, 65, 100, 51,
992 52, 53, 54, 55, 56, 57, 69, 72, 73, 74,
993 75, 76, 77, 78, 79, 80, 81, 82, 104, 105,
994 106, 107, 108, 101, 71, 65, 65, 65, 65, 65,
995 100, 65, 100, 100, 100, 100, 66, 100, 101, 59,
996 66, 100, 100, 100, 100, 69, 98, 99, 100, 69,
997 66, 66, 66, 71, 69, 69, 69, 69, 69, 100,
998 66, 69, 100, 50, 59, 100, 100, 100, 100, 71,
999 13, 97, 100, 69, 100, 66, 66, 66, 66, 59,
1006 0, 84, 85, 86, 86, 87, 88, 88, 88, 88,
1007 89, 89, 90, 90, 91, 91, 92, 92, 93, 93,
1008 94, 94, 95, 95, 95, 95, 95, 95, 96, 96,
1009 96, 96, 96, 96, 96, 96, 97, 97, 98, 98,
1010 99, 99, 100, 100, 101, 101, 101, 101, 101, 101,
1011 101, 102, 102, 102, 102, 102, 102, 102, 102, 102,
1012 102, 102, 103, 103, 103, 103, 103, 103, 103, 104,
1013 104, 104, 104, 105, 105, 105, 106, 106, 106, 106,
1014 106, 107, 107, 107, 107, 108, 108, 108, 108, 108,
1015 108, 109, 109, 109, 109, 109, 109, 109, 110, 110,
1016 110, 110, 110, 110, 110, 110, 110, 110, 111, 111
1022 0, 2, 1, 1, 2, 16, 1, 1, 1, 1,
1023 1, 1, 0, 1, 1, 3, 0, 1, 1, 2,
1024 1, 2, 2, 2, 7, 1, 3, 7, 1, 5,
1025 3, 6, 5, 6, 6, 6, 0, 2, 0, 1,
1026 1, 3, 1, 3, 1, 2, 3, 8, 4, 4,
1027 4, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1028 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1029 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1030 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1031 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1032 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
1036 #define yyerrok (yyerrstatus = 0)
1037 #define yyclearin (yychar = YYEMPTY)
1038 #define YYEMPTY (-2)
1041 #define YYACCEPT goto yyacceptlab
1042 #define YYABORT goto yyabortlab
1043 #define YYERROR goto yyerrorlab
1046 #define YYRECOVERING() (!!yyerrstatus)
1048 #define YYBACKUP(Token, Value) \
1050 if (yychar == YYEMPTY) \
1054 YYPOPSTACK (yylen); \
1060 yyerror (YY_("syntax error: cannot back up")); \
1067 #define YYERRCODE 256
1076 # define YYFPRINTF fprintf
1079 # define YYDPRINTF(Args) \
1086 #ifndef YY_LOCATION_PRINT
1087 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1091 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
1095 YYFPRINTF (stderr, "%s ", Title); \
1096 yy_symbol_print (stderr, \
1098 YYFPRINTF (stderr, "\n"); \
1108 yy_symbol_value_print (FILE *yyo,
int yytype,
YYSTYPE const *
const yyvaluep)
1110 FILE *yyoutput = yyo;
1116 YYPRINT (yyo, yytoknum[yytype], *yyvaluep);
1129 yy_symbol_print (FILE *yyo,
int yytype,
YYSTYPE const *
const yyvaluep)
1131 YYFPRINTF (yyo,
"%s %s (",
1134 yy_symbol_value_print (yyo, yytype, yyvaluep);
1135 YYFPRINTF (yyo,
")");
1146 YYFPRINTF (stderr,
"Stack now");
1147 for (; yybottom <= yytop; yybottom++)
1149 int yybot = *yybottom;
1150 YYFPRINTF (stderr,
" %d", yybot);
1152 YYFPRINTF (stderr,
"\n");
1155 # define YY_STACK_PRINT(Bottom, Top) \
1158 yy_stack_print ((Bottom), (Top)); \
1169 int yylno = yyrline[yyrule];
1170 int yynrhs =
yyr2[yyrule];
1172 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %d):\n",
1175 for (yyi = 0; yyi < yynrhs; yyi++)
1177 YYFPRINTF (stderr,
" $%d = ", yyi + 1);
1178 yy_symbol_print (stderr,
1179 yystos[yyssp[yyi + 1 - yynrhs]],
1180 &yyvsp[(yyi + 1) - (yynrhs)]
1182 YYFPRINTF (stderr,
"\n");
1186 # define YY_REDUCE_PRINT(Rule) \
1189 yy_reduce_print (yyssp, yyvsp, Rule); \
1196 # define YYDPRINTF(Args)
1197 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
1198 # define YY_STACK_PRINT(Bottom, Top)
1199 # define YY_REDUCE_PRINT(Rule)
1205 # define YYINITDEPTH 200
1216 # define YYMAXDEPTH 10000
1223 # if defined __GLIBC__ && defined _STRING_H
1224 # define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S)))
1231 for (yylen = 0; yystr[yylen]; yylen++)
1239 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
1240 # define yystpcpy stpcpy
1248 const char *yys = yysrc;
1250 while ((*yyd++ = *yys++) !=
'\0')
1272 char const *yyp = yystr;
1279 goto do_not_strip_quotes;
1283 goto do_not_strip_quotes;
1299 do_not_strip_quotes: ;
1303 return yystpcpy (yyres, yystr) - yyres;
1321 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1326 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1357 int yyn =
yypact[*yyssp];
1360 yyarg[yycount++] =
yytname[yytoken];
1366 int yyxbegin = yyn < 0 ? -yyn : 0;
1368 int yychecklim =
YYLAST - yyn + 1;
1372 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1376 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1382 yyarg[yycount++] =
yytname[yyx];
1397 # define YYCASE_(N, S) \
1403 YYCASE_(1,
YY_(
"syntax error, unexpected %s"));
1404 YYCASE_(2,
YY_(
"syntax error, unexpected %s, expecting %s"));
1405 YYCASE_(3,
YY_(
"syntax error, unexpected %s, expecting %s or %s"));
1406 YYCASE_(4,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s"));
1407 YYCASE_(5,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s"));
1421 if (*yymsg_alloc < yysize)
1423 *yymsg_alloc = 2 * yysize;
1424 if (! (yysize <= *yymsg_alloc
1436 while ((*yyp = *yyformat) !=
'\0')
1437 if (*yyp ==
'%' && yyformat[1] ==
's' && yyi < yycount)
1522 char *yymsg = yymsgbuf;
1526 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
1532 yyssp = yyss = yyssa;
1533 yyvsp = yyvs = yyvsa;
1536 YYDPRINTF ((stderr,
"Starting parse\n"));
1558 YYDPRINTF ((stderr,
"Entering state %d\n", yystate));
1564 if (yyss + yystacksize - 1 <= yyssp)
1565 #if !defined yyoverflow && !defined YYSTACK_RELOCATE
1566 goto yyexhaustedlab;
1572 # if defined yyoverflow
1584 yyoverflow (
YY_(
"memory exhausted"),
1585 &yyss1, yysize *
YYSIZEOF (*yyssp),
1586 &yyvs1, yysize *
YYSIZEOF (*yyvsp),
1594 goto yyexhaustedlab;
1605 goto yyexhaustedlab;
1608 # undef YYSTACK_RELOCATE
1614 yyssp = yyss + yysize - 1;
1615 yyvsp = yyvs + yysize - 1;
1618 YYDPRINTF ((stderr,
"Stack size increased to %ld\n",
1619 YY_CAST (
long, yystacksize)));
1622 if (yyss + yystacksize - 1 <= yyssp)
1650 YYDPRINTF ((stderr,
"Reading a token: "));
1657 YYDPRINTF ((stderr,
"Now at end of input.\n"));
1721 yyval = yyvsp[1-yylen];
1728 #line 119 "parser.y"
1751 if(
stack(yyvsp[-1]).is_not_nil())
1754 PARSER.parse_tree.items.push_back(decl);
1756 #line 1757 "jsil_y.tab.cpp"
1760 #line 150 "parser.y"
1765 #line 1766 "jsil_y.tab.cpp"
1769 #line 155 "parser.y"
1771 stack(yyval).set(
"proc_type",
"builtin");
1773 #line 1774 "jsil_y.tab.cpp"
1777 #line 159 "parser.y"
1779 stack(yyval).set(
"proc_type",
"spec");
1781 #line 1782 "jsil_y.tab.cpp"
1785 #line 166 "parser.y"
1788 stack(yyval).swap(s);
1790 #line 1791 "jsil_y.tab.cpp"
1794 #line 173 "parser.y"
1798 #line 1799 "jsil_y.tab.cpp"
1802 #line 180 "parser.y"
1805 stack(yyval).move_to_operands(
stack(yyvsp[0]));
1807 #line 1808 "jsil_y.tab.cpp"
1811 #line 185 "parser.y"
1814 stack(yyval).move_to_operands(
stack(yyvsp[0]));
1816 #line 1817 "jsil_y.tab.cpp"
1820 #line 192 "parser.y"
1824 #line 1825 "jsil_y.tab.cpp"
1828 #line 199 "parser.y"
1832 stack(yyval).move_to_operands(
stack(yyvsp[0]));
1834 #line 1835 "jsil_y.tab.cpp"
1838 #line 205 "parser.y"
1841 stack(yyval).move_to_operands(
stack(yyvsp[0]));
1843 #line 1844 "jsil_y.tab.cpp"
1847 #line 212 "parser.y"
1851 #line 1852 "jsil_y.tab.cpp"
1855 #line 216 "parser.y"
1859 #line 1860 "jsil_y.tab.cpp"
1863 #line 222 "parser.y"
1870 #line 1871 "jsil_y.tab.cpp"
1874 #line 229 "parser.y"
1879 #line 1880 "jsil_y.tab.cpp"
1883 #line 234 "parser.y"
1892 #line 1893 "jsil_y.tab.cpp"
1896 #line 243 "parser.y"
1900 #line 1901 "jsil_y.tab.cpp"
1904 #line 247 "parser.y"
1909 #line 1910 "jsil_y.tab.cpp"
1913 #line 252 "parser.y"
1919 #line 1920 "jsil_y.tab.cpp"
1923 #line 261 "parser.y"
1927 if(
stack(yyvsp[-2]).is_not_nil())
1932 if(
stack(yyvsp[0]).is_not_nil())
1935 stack(yyval).swap(w);
1938 #line 1939 "jsil_y.tab.cpp"
1942 #line 276 "parser.y"
1947 #line 1948 "jsil_y.tab.cpp"
1951 #line 281 "parser.y"
1953 exprt has_field(
"hasField");
1959 #line 1960 "jsil_y.tab.cpp"
1963 #line 289 "parser.y"
1968 #line 1969 "jsil_y.tab.cpp"
1972 #line 294 "parser.y"
1980 #line 1981 "jsil_y.tab.cpp"
1984 #line 302 "parser.y"
1986 exprt proto_field(
"protoField");
1992 #line 1993 "jsil_y.tab.cpp"
1996 #line 310 "parser.y"
1998 exprt proto_obj(
"protoObj");
2004 #line 2005 "jsil_y.tab.cpp"
2008 #line 320 "parser.y"
2012 #line 2013 "jsil_y.tab.cpp"
2016 #line 324 "parser.y"
2020 #line 2021 "jsil_y.tab.cpp"
2024 #line 330 "parser.y"
2028 #line 2029 "jsil_y.tab.cpp"
2032 #line 337 "parser.y"
2034 newstack(yyval).id(ID_expression_list);
2035 stack(yyval).move_to_operands(
stack(yyvsp[0]));
2037 #line 2038 "jsil_y.tab.cpp"
2041 #line 342 "parser.y"
2044 stack(yyval).move_to_operands(
stack(yyvsp[0]));
2046 #line 2047 "jsil_y.tab.cpp"
2050 #line 350 "parser.y"
2053 stack(yyval).move_to_operands(
stack(yyvsp[-2]));
2054 stack(yyval).move_to_operands(
stack(yyvsp[0]));
2056 #line 2057 "jsil_y.tab.cpp"
2060 #line 359 "parser.y"
2063 stack(yyval).move_to_operands(
stack(yyvsp[0]));
2065 #line 2066 "jsil_y.tab.cpp"
2069 #line 364 "parser.y"
2073 #line 2074 "jsil_y.tab.cpp"
2077 #line 368 "parser.y"
2086 #line 2087 "jsil_y.tab.cpp"
2090 #line 377 "parser.y"
2092 exprt field(
"field");
2097 #line 2098 "jsil_y.tab.cpp"
2101 #line 384 "parser.y"
2103 exprt base(ID_base);
2108 #line 2109 "jsil_y.tab.cpp"
2112 #line 391 "parser.y"
2114 exprt typeof_expr(ID_typeof);
2119 #line 2120 "jsil_y.tab.cpp"
2123 #line 401 "parser.y"
2127 #line 2128 "jsil_y.tab.cpp"
2131 #line 405 "parser.y"
2135 #line 2136 "jsil_y.tab.cpp"
2139 #line 409 "parser.y"
2143 #line 2144 "jsil_y.tab.cpp"
2147 #line 413 "parser.y"
2151 #line 2152 "jsil_y.tab.cpp"
2155 #line 417 "parser.y"
2159 #line 2160 "jsil_y.tab.cpp"
2163 #line 422 "parser.y"
2167 stack(yyval).swap(c);
2169 #line 2170 "jsil_y.tab.cpp"
2173 #line 433 "parser.y"
2177 #line 2178 "jsil_y.tab.cpp"
2181 #line 437 "parser.y"
2185 #line 2186 "jsil_y.tab.cpp"
2189 #line 441 "parser.y"
2193 #line 2194 "jsil_y.tab.cpp"
2197 #line 445 "parser.y"
2201 #line 2202 "jsil_y.tab.cpp"
2205 #line 449 "parser.y"
2209 #line 2210 "jsil_y.tab.cpp"
2213 #line 453 "parser.y"
2215 newstack(yyval).id(
"targetfunction");
2217 #line 2218 "jsil_y.tab.cpp"
2221 #line 457 "parser.y"
2225 #line 2226 "jsil_y.tab.cpp"
2229 #line 469 "parser.y"
2233 #line 2234 "jsil_y.tab.cpp"
2237 #line 473 "parser.y"
2241 #line 2242 "jsil_y.tab.cpp"
2245 #line 477 "parser.y"
2249 #line 2250 "jsil_y.tab.cpp"
2253 #line 483 "parser.y"
2257 #line 2258 "jsil_y.tab.cpp"
2261 #line 487 "parser.y"
2265 #line 2266 "jsil_y.tab.cpp"
2269 #line 491 "parser.y"
2273 #line 2274 "jsil_y.tab.cpp"
2277 #line 495 "parser.y"
2281 #line 2282 "jsil_y.tab.cpp"
2285 #line 499 "parser.y"
2289 #line 2290 "jsil_y.tab.cpp"
2293 #line 505 "parser.y"
2297 #line 2298 "jsil_y.tab.cpp"
2301 #line 509 "parser.y"
2305 #line 2306 "jsil_y.tab.cpp"
2309 #line 513 "parser.y"
2313 #line 2314 "jsil_y.tab.cpp"
2317 #line 517 "parser.y"
2319 newstack(yyval).id(ID_concatenation);
2321 #line 2322 "jsil_y.tab.cpp"
2325 #line 523 "parser.y"
2329 #line 2330 "jsil_y.tab.cpp"
2333 #line 527 "parser.y"
2337 #line 2338 "jsil_y.tab.cpp"
2341 #line 531 "parser.y"
2345 #line 2346 "jsil_y.tab.cpp"
2349 #line 535 "parser.y"
2353 #line 2354 "jsil_y.tab.cpp"
2357 #line 539 "parser.y"
2361 #line 2362 "jsil_y.tab.cpp"
2365 #line 543 "parser.y"
2369 #line 2370 "jsil_y.tab.cpp"
2373 #line 549 "parser.y"
2377 #line 2378 "jsil_y.tab.cpp"
2381 #line 553 "parser.y"
2383 newstack(yyval).id(ID_unary_minus);
2385 #line 2386 "jsil_y.tab.cpp"
2389 #line 557 "parser.y"
2391 newstack(yyval).id(
"num_to_string");
2393 #line 2394 "jsil_y.tab.cpp"
2397 #line 561 "parser.y"
2399 newstack(yyval).id(
"string_to_num");
2401 #line 2402 "jsil_y.tab.cpp"
2405 #line 565 "parser.y"
2407 newstack(yyval).id(
"num_to_int32");
2409 #line 2410 "jsil_y.tab.cpp"
2413 #line 569 "parser.y"
2415 newstack(yyval).id(
"num_to_uint32");
2417 #line 2418 "jsil_y.tab.cpp"
2421 #line 573 "parser.y"
2425 #line 2426 "jsil_y.tab.cpp"
2429 #line 579 "parser.y"
2433 #line 2434 "jsil_y.tab.cpp"
2437 #line 583 "parser.y"
2439 newstack(yyval).id(
"undefined_type");
2441 #line 2442 "jsil_y.tab.cpp"
2445 #line 587 "parser.y"
2449 #line 2450 "jsil_y.tab.cpp"
2453 #line 591 "parser.y"
2457 #line 2458 "jsil_y.tab.cpp"
2461 #line 595 "parser.y"
2465 #line 2466 "jsil_y.tab.cpp"
2469 #line 599 "parser.y"
2471 newstack(yyval).id(
"builtin_object");
2473 #line 2474 "jsil_y.tab.cpp"
2477 #line 603 "parser.y"
2481 #line 2482 "jsil_y.tab.cpp"
2485 #line 607 "parser.y"
2489 #line 2490 "jsil_y.tab.cpp"
2493 #line 612 "parser.y"
2496 newstack(yyval).set(ID_C_reference,
true);
2498 #line 2499 "jsil_y.tab.cpp"
2502 #line 619 "parser.y"
2506 #line 2507 "jsil_y.tab.cpp"
2510 #line 623 "parser.y"
2514 #line 2515 "jsil_y.tab.cpp"
2518 #line 2519 "jsil_y.tab.cpp"
2546 const int yyi =
yypgoto[yylhs] + *yyssp;
2547 yystate = (0 <= yyi && yyi <=
YYLAST &&
yycheck[yyi] == *yyssp
2567 #if ! YYERROR_VERBOSE
2570 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
2573 char const *yymsgp =
YY_(
"syntax error");
2574 int yysyntax_error_status;
2576 if (yysyntax_error_status == 0)
2578 else if (yysyntax_error_status == 1)
2580 if (yymsg != yymsgbuf)
2586 yymsg_alloc =
sizeof yymsgbuf;
2587 yysyntax_error_status = 2;
2596 if (yysyntax_error_status == 2)
2597 goto yyexhaustedlab;
2599 # undef YYSYNTAX_ERROR
2605 if (yyerrstatus == 3)
2707 #if !defined yyoverflow || YYERROR_VERBOSE
2734 while (yyssp != yyss)
2745 if (yymsg != yymsgbuf)
2750 #line 628 "parser.y"