static literal_t *new_string_literal(parser_ctx_t*,const WCHAR*);
static literal_t *new_null_literal(parser_ctx_t*);
-static literal_t *new_undefined_literal(parser_ctx_t*);
static literal_t *new_boolean_literal(parser_ctx_t*,VARIANT_BOOL);
typedef struct _property_list_t {
/* Line 189 of yacc.c */
-#line 211 "parser.tab.c"
+#line 210 "parser.tab.c"
/* Enabling traces. */
#ifndef YYDEBUG
kINSTANCEOF = 270,
kNEW = 271,
kNULL = 272,
- kUNDEFINED = 273,
- kRETURN = 274,
- kSWITCH = 275,
- kTHIS = 276,
- kTHROW = 277,
- kTRUE = 278,
- kFALSE = 279,
- kTRY = 280,
- kTYPEOF = 281,
- kVAR = 282,
- kVOID = 283,
- kWHILE = 284,
- kWITH = 285,
- tANDAND = 286,
- tOROR = 287,
- tINC = 288,
- tDEC = 289,
- tHTMLCOMMENT = 290,
- kDIVEQ = 291,
- kFUNCTION = 292,
- tIdentifier = 293,
- tAssignOper = 294,
- tEqOper = 295,
- tShiftOper = 296,
- tRelOper = 297,
- tNumericLiteral = 298,
- tStringLiteral = 299,
- LOWER_THAN_ELSE = 300
+ kRETURN = 273,
+ kSWITCH = 274,
+ kTHIS = 275,
+ kTHROW = 276,
+ kTRUE = 277,
+ kFALSE = 278,
+ kTRY = 279,
+ kTYPEOF = 280,
+ kVAR = 281,
+ kVOID = 282,
+ kWHILE = 283,
+ kWITH = 284,
+ tANDAND = 285,
+ tOROR = 286,
+ tINC = 287,
+ tDEC = 288,
+ tHTMLCOMMENT = 289,
+ kDIVEQ = 290,
+ kFUNCTION = 291,
+ tIdentifier = 292,
+ tAssignOper = 293,
+ tEqOper = 294,
+ tShiftOper = 295,
+ tRelOper = 296,
+ tNumericLiteral = 297,
+ tStringLiteral = 298,
+ LOWER_THAN_ELSE = 299
};
#endif
{
/* Line 214 of yacc.c */
-#line 151 "parser.y"
+#line 150 "parser.y"
int ival;
const WCHAR *srcptr;
/* Line 214 of yacc.c */
-#line 315 "parser.tab.c"
+#line 313 "parser.tab.c"
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
/* Line 264 of yacc.c */
-#line 327 "parser.tab.c"
+#line 325 "parser.tab.c"
#ifdef short
# undef short
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 3
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 1042
+#define YYLAST 1030
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 68
+#define YYNTOKENS 67
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 95
/* YYNRULES -- Number of rules. */
-#define YYNRULES 215
+#define YYNRULES 214
/* YYNRULES -- Number of states. */
-#define YYNSTATES 374
+#define YYNSTATES 373
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
-#define YYMAXUTOK 300
+#define YYMAXUTOK 299
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 62, 2, 2, 2, 60, 55, 2,
- 66, 67, 58, 56, 48, 57, 65, 59, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 51, 50,
- 2, 49, 2, 52, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 61, 2, 2, 2, 59, 54, 2,
+ 65, 66, 57, 55, 47, 56, 64, 58, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 50, 49,
+ 2, 48, 2, 51, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 63, 2, 64, 54, 2, 2, 2, 2, 2,
+ 2, 62, 2, 63, 53, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 47, 53, 38, 61, 2, 2, 2,
+ 2, 2, 2, 46, 52, 37, 60, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
- 35, 36, 37, 39, 40, 41, 42, 43, 44, 45,
- 46
+ 35, 36, 38, 39, 40, 41, 42, 43, 44, 45
};
#if YYDEBUG
567, 570, 574, 578, 584, 587, 592, 594, 597, 598,
600, 603, 607, 611, 617, 619, 621, 623, 624, 626,
628, 630, 632, 634, 636, 638, 640, 642, 644, 646,
- 648, 650, 652, 654, 656, 658
+ 648, 650, 652, 654, 656
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
static const yytype_int16 yyrhs[] =
{
- 69, 0, -1, 71, 70, -1, 35, -1, -1, -1,
- 71, 77, -1, 73, 156, 160, 76, 161, 47, 74,
- 38, -1, 37, -1, 71, -1, 39, -1, 75, 48,
- 39, -1, -1, 75, -1, 80, -1, 81, -1, 90,
- -1, 72, -1, 91, -1, 92, -1, 93, -1, 98,
- -1, 99, -1, 100, -1, 101, -1, 102, -1, 103,
- -1, 109, -1, 110, -1, 77, -1, 78, 77, -1,
- -1, 78, -1, 47, 78, 38, -1, 47, 38, -1,
- 27, 82, 159, -1, 84, -1, 82, 48, 84, -1,
- 85, -1, 83, 48, 85, -1, 39, 86, -1, 39,
- 88, -1, -1, 87, -1, 49, 119, -1, -1, 89,
- -1, 49, 120, -1, 50, -1, 115, 159, -1, 11,
- 160, 114, 161, 77, 10, 77, -1, 11, 160, 114,
- 161, 77, -1, 9, 77, 29, 160, 114, 161, 159,
- -1, 29, 160, 114, 161, 77, -1, -1, -1, 13,
- 160, 116, 94, 162, 113, 95, 162, 113, 161, 77,
- -1, -1, -1, 13, 160, 27, 83, 96, 162, 113,
- 97, 162, 113, 161, 77, -1, 13, 160, 142, 14,
- 114, 161, 77, -1, 13, 160, 27, 85, 14, 114,
- 161, 77, -1, 6, 156, 159, -1, 3, 156, 159,
- -1, 19, 113, 159, -1, 30, 160, 115, 161, 77,
- -1, 39, 51, 77, -1, 20, 160, 115, 161, 104,
- -1, 47, 105, 38, -1, 47, 105, 108, 105, 38,
- -1, -1, 106, -1, 107, -1, 106, 107, -1, 4,
- 115, 51, 79, -1, 7, 51, 79, -1, 22, 115,
- 159, -1, 25, 80, 111, -1, 25, 80, 112, -1,
- 25, 80, 111, 112, -1, 5, 160, 39, 161, 80,
- -1, 12, 80, -1, -1, 115, -1, 115, -1, 1,
- -1, 119, -1, 115, 48, 119, -1, -1, 117, -1,
- 120, -1, 117, 48, 120, -1, 40, -1, 36, -1,
- 121, -1, 142, 49, 119, -1, 142, 118, 119, -1,
- 122, -1, 142, 49, 120, -1, 142, 118, 120, -1,
- 123, -1, 123, 52, 119, 51, 119, -1, 124, -1,
- 124, 52, 120, 51, 120, -1, 125, -1, 123, 32,
- 125, -1, 126, -1, 124, 32, 126, -1, 127, -1,
- 125, 31, 127, -1, 128, -1, 126, 31, 128, -1,
- 129, -1, 127, 53, 129, -1, 130, -1, 128, 53,
- 130, -1, 131, -1, 129, 54, 131, -1, 132, -1,
- 130, 54, 132, -1, 133, -1, 131, 55, 133, -1,
- 134, -1, 132, 55, 134, -1, 135, -1, 133, 41,
- 135, -1, 136, -1, 134, 41, 136, -1, 137, -1,
- 135, 43, 137, -1, 135, 15, 137, -1, 135, 14,
- 137, -1, 137, -1, 136, 43, 137, -1, 136, 15,
- 137, -1, 138, -1, 137, 42, 138, -1, 139, -1,
- 138, 56, 139, -1, 138, 57, 139, -1, 140, -1,
- 139, 58, 140, -1, 139, 59, 140, -1, 139, 60,
- 140, -1, 141, -1, 8, 140, -1, 28, 140, -1,
- 26, 140, -1, 33, 140, -1, 34, 140, -1, 56,
- 140, -1, 57, 140, -1, 61, 140, -1, 62, 140,
- -1, 142, -1, 142, 33, -1, 142, 34, -1, 143,
- -1, 145, -1, 144, -1, 16, 143, -1, 148, -1,
- 72, -1, 144, 63, 115, 64, -1, 144, 65, 39,
- -1, 16, 144, 146, -1, 144, 146, -1, 145, 146,
- -1, 145, 63, 115, 64, -1, 145, 65, 39, -1,
- 66, 67, -1, 66, 147, 67, -1, 119, -1, 147,
- 48, 119, -1, 21, -1, 39, -1, 157, -1, 149,
- -1, 153, -1, 66, 115, 67, -1, 63, 64, -1,
- 63, 151, 64, -1, 63, 150, 64, -1, 63, 150,
- 48, 152, 64, -1, 152, 119, -1, 150, 48, 152,
- 119, -1, 48, -1, 151, 48, -1, -1, 151, -1,
- 47, 38, -1, 47, 154, 38, -1, 155, 51, 119,
- -1, 154, 48, 155, 51, 119, -1, 39, -1, 45,
- -1, 44, -1, -1, 39, -1, 17, -1, 18, -1,
- 158, -1, 44, -1, 45, -1, 59, -1, 36, -1,
- 23, -1, 24, -1, 50, -1, 1, -1, 66, -1,
- 1, -1, 67, -1, 1, -1, 50, -1, 1, -1
+ 68, 0, -1, 70, 69, -1, 34, -1, -1, -1,
+ 70, 76, -1, 72, 155, 159, 75, 160, 46, 73,
+ 37, -1, 36, -1, 70, -1, 38, -1, 74, 47,
+ 38, -1, -1, 74, -1, 79, -1, 80, -1, 89,
+ -1, 71, -1, 90, -1, 91, -1, 92, -1, 97,
+ -1, 98, -1, 99, -1, 100, -1, 101, -1, 102,
+ -1, 108, -1, 109, -1, 76, -1, 77, 76, -1,
+ -1, 77, -1, 46, 77, 37, -1, 46, 37, -1,
+ 26, 81, 158, -1, 83, -1, 81, 47, 83, -1,
+ 84, -1, 82, 47, 84, -1, 38, 85, -1, 38,
+ 87, -1, -1, 86, -1, 48, 118, -1, -1, 88,
+ -1, 48, 119, -1, 49, -1, 114, 158, -1, 11,
+ 159, 113, 160, 76, 10, 76, -1, 11, 159, 113,
+ 160, 76, -1, 9, 76, 28, 159, 113, 160, 158,
+ -1, 28, 159, 113, 160, 76, -1, -1, -1, 13,
+ 159, 115, 93, 161, 112, 94, 161, 112, 160, 76,
+ -1, -1, -1, 13, 159, 26, 82, 95, 161, 112,
+ 96, 161, 112, 160, 76, -1, 13, 159, 141, 14,
+ 113, 160, 76, -1, 13, 159, 26, 84, 14, 113,
+ 160, 76, -1, 6, 155, 158, -1, 3, 155, 158,
+ -1, 18, 112, 158, -1, 29, 159, 114, 160, 76,
+ -1, 38, 50, 76, -1, 19, 159, 114, 160, 103,
+ -1, 46, 104, 37, -1, 46, 104, 107, 104, 37,
+ -1, -1, 105, -1, 106, -1, 105, 106, -1, 4,
+ 114, 50, 78, -1, 7, 50, 78, -1, 21, 114,
+ 158, -1, 24, 79, 110, -1, 24, 79, 111, -1,
+ 24, 79, 110, 111, -1, 5, 159, 38, 160, 79,
+ -1, 12, 79, -1, -1, 114, -1, 114, -1, 1,
+ -1, 118, -1, 114, 47, 118, -1, -1, 116, -1,
+ 119, -1, 116, 47, 119, -1, 39, -1, 35, -1,
+ 120, -1, 141, 48, 118, -1, 141, 117, 118, -1,
+ 121, -1, 141, 48, 119, -1, 141, 117, 119, -1,
+ 122, -1, 122, 51, 118, 50, 118, -1, 123, -1,
+ 123, 51, 119, 50, 119, -1, 124, -1, 122, 31,
+ 124, -1, 125, -1, 123, 31, 125, -1, 126, -1,
+ 124, 30, 126, -1, 127, -1, 125, 30, 127, -1,
+ 128, -1, 126, 52, 128, -1, 129, -1, 127, 52,
+ 129, -1, 130, -1, 128, 53, 130, -1, 131, -1,
+ 129, 53, 131, -1, 132, -1, 130, 54, 132, -1,
+ 133, -1, 131, 54, 133, -1, 134, -1, 132, 40,
+ 134, -1, 135, -1, 133, 40, 135, -1, 136, -1,
+ 134, 42, 136, -1, 134, 15, 136, -1, 134, 14,
+ 136, -1, 136, -1, 135, 42, 136, -1, 135, 15,
+ 136, -1, 137, -1, 136, 41, 137, -1, 138, -1,
+ 137, 55, 138, -1, 137, 56, 138, -1, 139, -1,
+ 138, 57, 139, -1, 138, 58, 139, -1, 138, 59,
+ 139, -1, 140, -1, 8, 139, -1, 27, 139, -1,
+ 25, 139, -1, 32, 139, -1, 33, 139, -1, 55,
+ 139, -1, 56, 139, -1, 60, 139, -1, 61, 139,
+ -1, 141, -1, 141, 32, -1, 141, 33, -1, 142,
+ -1, 144, -1, 143, -1, 16, 142, -1, 147, -1,
+ 71, -1, 143, 62, 114, 63, -1, 143, 64, 38,
+ -1, 16, 143, 145, -1, 143, 145, -1, 144, 145,
+ -1, 144, 62, 114, 63, -1, 144, 64, 38, -1,
+ 65, 66, -1, 65, 146, 66, -1, 118, -1, 146,
+ 47, 118, -1, 20, -1, 38, -1, 156, -1, 148,
+ -1, 152, -1, 65, 114, 66, -1, 62, 63, -1,
+ 62, 150, 63, -1, 62, 149, 63, -1, 62, 149,
+ 47, 151, 63, -1, 151, 118, -1, 149, 47, 151,
+ 118, -1, 47, -1, 150, 47, -1, -1, 150, -1,
+ 46, 37, -1, 46, 153, 37, -1, 154, 50, 118,
+ -1, 153, 47, 154, 50, 118, -1, 38, -1, 44,
+ -1, 43, -1, -1, 38, -1, 17, -1, 157, -1,
+ 43, -1, 44, -1, 58, -1, 35, -1, 22, -1,
+ 23, -1, 49, -1, 1, -1, 65, -1, 1, -1,
+ 66, -1, 1, -1, 49, -1, 1, -1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 257, 257, 261, 262, 266, 267, 272, 276, 280,
- 284, 285, 290, 291, 295, 296, 297, 298, 299, 300,
- 301, 302, 303, 304, 305, 306, 307, 308, 309, 313,
- 314, 319, 320, 324, 325, 329, 334, 335, 340, 342,
- 347, 352, 357, 358, 362, 367, 368, 372, 377, 381,
- 386, 388, 393, 395, 398, 400, 397, 404, 406, 403,
- 409, 411, 416, 421, 426, 431, 436, 441, 446, 448,
- 453, 454, 458, 459, 464, 469, 474, 479, 480, 481,
- 486, 491, 495, 496, 499, 500, 504, 505, 510, 511,
- 515, 517, 521, 522, 526, 527, 529, 534, 536, 538,
- 543, 544, 549, 551, 556, 557, 562, 564, 569, 570,
- 575, 577, 582, 583, 588, 590, 595, 596, 601, 603,
- 608, 609, 614, 616, 621, 622, 627, 628, 633, 634,
- 636, 638, 643, 644, 646, 651, 652, 657, 659, 661,
- 666, 667, 669, 671, 676, 677, 679, 680, 682, 683,
- 684, 685, 686, 687, 691, 693, 695, 701, 702, 706,
- 707, 711, 712, 713, 715, 717, 722, 724, 726, 728,
- 733, 734, 738, 739, 744, 745, 746, 747, 748, 749,
- 753, 754, 755, 756, 761, 763, 768, 769, 773, 774,
- 778, 779, 784, 786, 791, 792, 793, 797, 798, 802,
- 803, 804, 805, 806, 807, 809, 814, 815, 818, 819,
- 822, 823, 826, 827, 830, 831
+ 0, 256, 256, 260, 261, 265, 266, 271, 275, 279,
+ 283, 284, 289, 290, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 304, 305, 306, 307, 308, 312,
+ 313, 318, 319, 323, 324, 328, 333, 334, 339, 341,
+ 346, 351, 356, 357, 361, 366, 367, 371, 376, 380,
+ 385, 387, 392, 394, 397, 399, 396, 403, 405, 402,
+ 408, 410, 415, 420, 425, 430, 435, 440, 445, 447,
+ 452, 453, 457, 458, 463, 468, 473, 478, 479, 480,
+ 485, 490, 494, 495, 498, 499, 503, 504, 509, 510,
+ 514, 516, 520, 521, 525, 526, 528, 533, 535, 537,
+ 542, 543, 548, 550, 555, 556, 561, 563, 568, 569,
+ 574, 576, 581, 582, 587, 589, 594, 595, 600, 602,
+ 607, 608, 613, 615, 620, 621, 626, 627, 632, 633,
+ 635, 637, 642, 643, 645, 650, 651, 656, 658, 660,
+ 665, 666, 668, 670, 675, 676, 678, 679, 681, 682,
+ 683, 684, 685, 686, 690, 692, 694, 700, 701, 705,
+ 706, 710, 711, 712, 714, 716, 721, 723, 725, 727,
+ 732, 733, 737, 738, 743, 744, 745, 746, 747, 748,
+ 752, 753, 754, 755, 760, 762, 767, 768, 772, 773,
+ 777, 778, 783, 785, 790, 791, 792, 796, 797, 801,
+ 802, 803, 804, 805, 807, 812, 813, 816, 817, 820,
+ 821, 824, 825, 828, 829
};
#endif
{
"$end", "error", "$undefined", "kBREAK", "kCASE", "kCATCH", "kCONTINUE",
"kDEFAULT", "kDELETE", "kDO", "kELSE", "kIF", "kFINALLY", "kFOR", "kIN",
- "kINSTANCEOF", "kNEW", "kNULL", "kUNDEFINED", "kRETURN", "kSWITCH",
- "kTHIS", "kTHROW", "kTRUE", "kFALSE", "kTRY", "kTYPEOF", "kVAR", "kVOID",
- "kWHILE", "kWITH", "tANDAND", "tOROR", "tINC", "tDEC", "tHTMLCOMMENT",
- "kDIVEQ", "kFUNCTION", "'}'", "tIdentifier", "tAssignOper", "tEqOper",
+ "kINSTANCEOF", "kNEW", "kNULL", "kRETURN", "kSWITCH", "kTHIS", "kTHROW",
+ "kTRUE", "kFALSE", "kTRY", "kTYPEOF", "kVAR", "kVOID", "kWHILE", "kWITH",
+ "tANDAND", "tOROR", "tINC", "tDEC", "tHTMLCOMMENT", "kDIVEQ",
+ "kFUNCTION", "'}'", "tIdentifier", "tAssignOper", "tEqOper",
"tShiftOper", "tRelOper", "tNumericLiteral", "tStringLiteral",
"LOWER_THAN_ELSE", "'{'", "','", "'='", "';'", "':'", "'?'", "'|'",
"'^'", "'&'", "'+'", "'-'", "'*'", "'/'", "'%'", "'~'", "'!'", "'['",
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
- 285, 286, 287, 288, 289, 290, 291, 292, 125, 293,
- 294, 295, 296, 297, 298, 299, 300, 123, 44, 61,
- 59, 58, 63, 124, 94, 38, 43, 45, 42, 47,
- 37, 126, 33, 91, 93, 46, 40, 41
+ 285, 286, 287, 288, 289, 290, 291, 125, 292, 293,
+ 294, 295, 296, 297, 298, 299, 123, 44, 61, 59,
+ 58, 63, 124, 94, 38, 43, 45, 42, 47, 37,
+ 126, 33, 91, 93, 46, 40, 41
};
# endif
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const yytype_uint8 yyr1[] =
{
- 0, 68, 69, 70, 70, 71, 71, 72, 73, 74,
- 75, 75, 76, 76, 77, 77, 77, 77, 77, 77,
- 77, 77, 77, 77, 77, 77, 77, 77, 77, 78,
- 78, 79, 79, 80, 80, 81, 82, 82, 83, 83,
- 84, 85, 86, 86, 87, 88, 88, 89, 90, 91,
- 92, 92, 93, 93, 94, 95, 93, 96, 97, 93,
- 93, 93, 98, 99, 100, 101, 102, 103, 104, 104,
- 105, 105, 106, 106, 107, 108, 109, 110, 110, 110,
- 111, 112, 113, 113, 114, 114, 115, 115, 116, 116,
- 117, 117, 118, 118, 119, 119, 119, 120, 120, 120,
- 121, 121, 122, 122, 123, 123, 124, 124, 125, 125,
- 126, 126, 127, 127, 128, 128, 129, 129, 130, 130,
- 131, 131, 132, 132, 133, 133, 134, 134, 135, 135,
- 135, 135, 136, 136, 136, 137, 137, 138, 138, 138,
- 139, 139, 139, 139, 140, 140, 140, 140, 140, 140,
- 140, 140, 140, 140, 141, 141, 141, 142, 142, 143,
- 143, 144, 144, 144, 144, 144, 145, 145, 145, 145,
- 146, 146, 147, 147, 148, 148, 148, 148, 148, 148,
- 149, 149, 149, 149, 150, 150, 151, 151, 152, 152,
- 153, 153, 154, 154, 155, 155, 155, 156, 156, 157,
- 157, 157, 157, 157, 157, 157, 158, 158, 159, 159,
- 160, 160, 161, 161, 162, 162
+ 0, 67, 68, 69, 69, 70, 70, 71, 72, 73,
+ 74, 74, 75, 75, 76, 76, 76, 76, 76, 76,
+ 76, 76, 76, 76, 76, 76, 76, 76, 76, 77,
+ 77, 78, 78, 79, 79, 80, 81, 81, 82, 82,
+ 83, 84, 85, 85, 86, 87, 87, 88, 89, 90,
+ 91, 91, 92, 92, 93, 94, 92, 95, 96, 92,
+ 92, 92, 97, 98, 99, 100, 101, 102, 103, 103,
+ 104, 104, 105, 105, 106, 107, 108, 109, 109, 109,
+ 110, 111, 112, 112, 113, 113, 114, 114, 115, 115,
+ 116, 116, 117, 117, 118, 118, 118, 119, 119, 119,
+ 120, 120, 121, 121, 122, 122, 123, 123, 124, 124,
+ 125, 125, 126, 126, 127, 127, 128, 128, 129, 129,
+ 130, 130, 131, 131, 132, 132, 133, 133, 134, 134,
+ 134, 134, 135, 135, 135, 136, 136, 137, 137, 137,
+ 138, 138, 138, 138, 139, 139, 139, 139, 139, 139,
+ 139, 139, 139, 139, 140, 140, 140, 141, 141, 142,
+ 142, 143, 143, 143, 143, 143, 144, 144, 144, 144,
+ 145, 145, 146, 146, 147, 147, 147, 147, 147, 147,
+ 148, 148, 148, 148, 149, 149, 150, 150, 151, 151,
+ 152, 152, 153, 153, 154, 154, 154, 155, 155, 156,
+ 156, 156, 156, 156, 156, 157, 157, 158, 158, 159,
+ 159, 160, 160, 161, 161
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
2, 3, 3, 5, 2, 4, 1, 2, 0, 1,
2, 3, 3, 5, 1, 1, 1, 0, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1
+ 1, 1, 1, 1, 1
};
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
static const yytype_uint8 yydefact[] =
{
5, 0, 4, 1, 197, 197, 0, 0, 0, 0,
- 0, 199, 200, 82, 0, 174, 0, 206, 207, 0,
- 0, 0, 0, 0, 0, 0, 0, 3, 205, 8,
- 175, 202, 203, 0, 48, 0, 0, 204, 0, 0,
- 188, 0, 2, 17, 197, 6, 14, 15, 16, 18,
- 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
- 0, 86, 94, 100, 104, 108, 112, 116, 120, 124,
- 128, 135, 137, 140, 144, 154, 157, 159, 158, 161,
- 177, 178, 176, 201, 198, 0, 0, 175, 0, 162,
- 145, 154, 0, 211, 210, 0, 88, 160, 159, 0,
- 83, 0, 0, 0, 0, 147, 42, 0, 36, 146,
- 0, 0, 148, 149, 0, 34, 175, 202, 203, 29,
- 0, 0, 0, 150, 151, 152, 153, 186, 180, 0,
- 189, 0, 0, 0, 209, 0, 208, 49, 0, 0,
+ 0, 199, 82, 0, 174, 0, 205, 206, 0, 0,
+ 0, 0, 0, 0, 0, 0, 3, 204, 8, 175,
+ 201, 202, 0, 48, 0, 0, 203, 0, 0, 188,
+ 0, 2, 17, 197, 6, 14, 15, 16, 18, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
+ 86, 94, 100, 104, 108, 112, 116, 120, 124, 128,
+ 135, 137, 140, 144, 154, 157, 159, 158, 161, 177,
+ 178, 176, 200, 198, 0, 0, 175, 0, 162, 145,
+ 154, 0, 210, 209, 0, 88, 160, 159, 0, 83,
+ 0, 0, 0, 0, 147, 42, 0, 36, 146, 0,
+ 0, 148, 149, 0, 34, 175, 201, 202, 29, 0,
+ 0, 0, 150, 151, 152, 153, 186, 180, 0, 189,
+ 0, 0, 0, 208, 0, 207, 49, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 155, 156, 93, 92, 0, 0,
- 0, 0, 0, 166, 0, 0, 167, 63, 62, 190,
- 194, 196, 195, 0, 85, 0, 84, 0, 54, 89,
- 90, 97, 102, 106, 110, 114, 118, 122, 126, 132,
- 154, 165, 64, 0, 76, 34, 0, 0, 77, 78,
- 0, 40, 43, 0, 35, 0, 0, 66, 33, 30,
- 191, 0, 0, 188, 182, 187, 181, 184, 179, 12,
- 87, 105, 0, 109, 113, 117, 121, 125, 131, 130,
- 129, 136, 138, 139, 141, 142, 143, 95, 96, 0,
- 164, 170, 172, 0, 0, 169, 0, 213, 212, 0,
- 45, 57, 38, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 81,
- 79, 44, 37, 0, 0, 0, 192, 189, 0, 10,
- 13, 0, 0, 163, 0, 171, 168, 0, 51, 0,
- 41, 46, 0, 0, 0, 215, 214, 82, 91, 154,
- 107, 0, 111, 115, 119, 123, 127, 134, 133, 0,
- 98, 99, 70, 67, 0, 53, 65, 0, 183, 185,
- 0, 0, 101, 173, 0, 0, 47, 39, 82, 0,
- 55, 0, 0, 0, 0, 71, 72, 0, 193, 11,
- 5, 52, 50, 58, 0, 0, 103, 60, 0, 0,
- 68, 70, 73, 80, 9, 0, 0, 61, 82, 31,
- 31, 0, 7, 82, 0, 32, 74, 75, 69, 0,
- 0, 0, 56, 59
+ 0, 0, 0, 155, 156, 93, 92, 0, 0, 0,
+ 0, 0, 166, 0, 0, 167, 63, 62, 190, 194,
+ 196, 195, 0, 85, 0, 84, 0, 54, 89, 90,
+ 97, 102, 106, 110, 114, 118, 122, 126, 132, 154,
+ 165, 64, 0, 76, 34, 0, 0, 77, 78, 0,
+ 40, 43, 0, 35, 0, 0, 66, 33, 30, 191,
+ 0, 0, 188, 182, 187, 181, 184, 179, 12, 87,
+ 105, 0, 109, 113, 117, 121, 125, 131, 130, 129,
+ 136, 138, 139, 141, 142, 143, 95, 96, 0, 164,
+ 170, 172, 0, 0, 169, 0, 212, 211, 0, 45,
+ 57, 38, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 81, 79,
+ 44, 37, 0, 0, 0, 192, 189, 0, 10, 13,
+ 0, 0, 163, 0, 171, 168, 0, 51, 0, 41,
+ 46, 0, 0, 0, 214, 213, 82, 91, 154, 107,
+ 0, 111, 115, 119, 123, 127, 134, 133, 0, 98,
+ 99, 70, 67, 0, 53, 65, 0, 183, 185, 0,
+ 0, 101, 173, 0, 0, 47, 39, 82, 0, 55,
+ 0, 0, 0, 0, 71, 72, 0, 193, 11, 5,
+ 52, 50, 58, 0, 0, 103, 60, 0, 0, 68,
+ 70, 73, 80, 9, 0, 0, 61, 82, 31, 31,
+ 0, 7, 82, 0, 32, 74, 75, 69, 0, 0,
+ 0, 56, 59
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
- -1, 1, 42, 2, 89, 44, 355, 280, 281, 119,
- 120, 366, 46, 47, 107, 251, 108, 252, 201, 202,
- 290, 291, 48, 49, 50, 51, 253, 345, 293, 356,
- 52, 53, 54, 55, 56, 57, 313, 334, 335, 336,
- 351, 58, 59, 198, 199, 99, 175, 60, 178, 179,
- 266, 61, 180, 62, 181, 63, 182, 64, 183, 65,
- 184, 66, 185, 67, 186, 68, 187, 69, 188, 70,
- 71, 72, 73, 74, 75, 76, 77, 78, 163, 243,
- 79, 80, 129, 130, 131, 81, 121, 122, 85, 82,
- 83, 137, 95, 249, 297
+ -1, 1, 41, 2, 88, 43, 354, 279, 280, 118,
+ 119, 365, 45, 46, 106, 250, 107, 251, 200, 201,
+ 289, 290, 47, 48, 49, 50, 252, 344, 292, 355,
+ 51, 52, 53, 54, 55, 56, 312, 333, 334, 335,
+ 350, 57, 58, 197, 198, 98, 174, 59, 177, 178,
+ 265, 60, 179, 61, 180, 62, 181, 63, 182, 64,
+ 183, 65, 184, 66, 185, 67, 186, 68, 187, 69,
+ 70, 71, 72, 73, 74, 75, 76, 77, 162, 242,
+ 78, 79, 128, 129, 130, 80, 120, 121, 84, 81,
+ 82, 136, 94, 248, 296
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
-#define YYPACT_NINF -273
+#define YYPACT_NINF -287
static const yytype_int16 yypact[] =
{
- -273, 19, 524, -273, -7, -7, 976, 768, 12, 12,
- 192, -273, -273, 976, 12, -273, 976, -273, -273, 57,
- 976, 24, 976, 12, 12, 976, 976, -273, -273, -273,
- -3, -273, -273, 585, -273, 976, 976, -273, 976, 976,
- 22, 976, -273, 416, -7, -273, -273, -273, -273, -273,
- -273, -273, -273, -273, -273, -273, -273, -273, -273, -273,
- 40, -273, -273, 8, 30, 49, 54, 61, 84, 21,
- 96, 155, 83, -273, -273, 88, -273, 99, 140, -273,
- -273, -273, -273, -273, -273, 17, 17, -273, 115, -273,
- -273, 184, 118, -273, -273, 379, 872, -273, 99, 17,
- 107, 976, 40, 646, 134, -273, 109, 55, -273, -273,
- 379, 976, -273, -273, 768, 471, -3, 119, 121, -273,
- 707, 58, 153, -273, -273, -273, -273, -273, -273, 45,
- 59, 976, -45, 12, -273, 976, -273, -273, 976, 976,
- 976, 976, 976, 976, 976, 976, 976, 976, 976, 976,
- 976, 976, 976, 976, -273, -273, -273, -273, 976, 976,
- 976, 127, 820, -273, 976, 168, -273, -273, -273, -273,
- -273, -273, -273, 12, -273, 7, 107, 175, -273, 171,
- -273, -273, 14, 194, 174, 176, 177, 197, 34, 96,
- 77, -273, -273, 9, -273, -273, 12, 57, 221, -273,
- 976, -273, -273, 24, -273, 7, 9, -273, -273, -273,
- -273, 112, 976, 187, -273, -273, -273, -273, -273, 203,
- -273, 30, 193, 49, 54, 61, 84, 21, 96, 96,
- 96, 155, 83, 83, -273, -273, -273, -273, -273, 67,
- -273, -273, -273, 27, 71, -273, 379, -273, -273, 768,
- 196, 195, 232, 37, 976, 976, 976, 976, 976, 976,
- 976, 976, 976, 976, 379, 976, 976, 207, 217, -273,
- -273, -273, -273, 768, 768, 206, -273, 211, 924, -273,
- 212, 7, 976, -273, 976, -273, -273, 7, 251, 976,
- -273, -273, 175, 37, 379, -273, -273, 976, -273, 100,
- 194, 213, 174, 176, 177, 197, 34, 96, 96, 7,
- -273, -273, 258, -273, 7, -273, -273, 976, -273, -273,
- 224, 219, -273, -273, 17, 768, -273, -273, 976, 7,
- -273, 976, 768, 976, 16, 258, -273, 57, -273, -273,
- -273, -273, -273, -273, 768, 37, -273, -273, 79, 216,
- -273, 258, -273, -273, 768, 231, 37, -273, 976, 768,
- 768, 237, -273, 976, 7, 768, -273, -273, -273, 7,
- 768, 768, -273, -273
+ -287, 29, 490, -287, -18, -18, 934, 730, 21, 21,
+ 965, -287, 934, 21, -287, 934, -287, -287, 36, 934,
+ 89, 934, 21, 21, 934, 934, -287, -287, -287, 105,
+ -287, -287, 550, -287, 934, 934, -287, 934, 934, 61,
+ 934, -287, 403, -18, -287, -287, -287, -287, -287, -287,
+ -287, -287, -287, -287, -287, -287, -287, -287, -287, 15,
+ -287, -287, 41, 106, 117, 129, 142, 158, 76, 162,
+ 131, 47, -287, -287, 141, -287, 113, 148, -287, -287,
+ -287, -287, -287, -287, 5, 5, -287, 147, -287, -287,
+ 169, 177, -287, -287, 370, 832, -287, 113, 5, 164,
+ 934, 15, 610, 123, -287, 159, 16, -287, -287, 370,
+ 934, -287, -287, 730, 438, 105, 175, 176, -287, 670,
+ 86, 178, -287, -287, -287, -287, -287, -287, 62, 63,
+ 934, 28, 21, -287, 934, -287, -287, 934, 934, 934,
+ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
+ 934, 934, 934, -287, -287, -287, -287, 934, 934, 934,
+ 181, 781, -287, 934, 189, -287, -287, -287, -287, -287,
+ -287, -287, 21, -287, 8, 164, 191, -287, 183, -287,
+ -287, 56, 201, 180, 182, 179, 194, 53, 162, 10,
+ -287, -287, 12, -287, -287, 21, 36, 225, -287, 934,
+ -287, -287, 89, -287, 8, 12, -287, -287, -287, -287,
+ 94, 934, 193, -287, -287, -287, -287, -287, 200, -287,
+ 106, 192, 117, 129, 142, 158, 76, 162, 162, 162,
+ 131, 47, 47, -287, -287, -287, -287, -287, 68, -287,
+ -287, -287, 46, 109, -287, 370, -287, -287, 730, 195,
+ 197, 227, 18, 934, 934, 934, 934, 934, 934, 934,
+ 934, 934, 934, 370, 934, 934, 199, 209, -287, -287,
+ -287, -287, 730, 730, 202, -287, 204, 883, -287, 206,
+ 8, 934, -287, 934, -287, -287, 8, 239, 934, -287,
+ -287, 191, 18, 370, -287, -287, 934, -287, 160, 201,
+ 218, 180, 182, 179, 194, 53, 162, 162, 8, -287,
+ -287, 250, -287, 8, -287, -287, 934, -287, -287, 231,
+ 228, -287, -287, 5, 730, -287, -287, 934, 8, -287,
+ 934, 730, 934, 66, 250, -287, 36, -287, -287, -287,
+ -287, -287, -287, 730, 18, -287, -287, -32, 226, -287,
+ 250, -287, -287, 730, 238, 18, -287, 934, 730, 730,
+ 240, -287, 934, 8, 730, -287, -287, -287, 8, 730,
+ 730, -287, -287
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -273, -273, -273, -70, -2, -273, -273, -273, -273, 0,
- -138, -84, -10, -273, -273, -273, 74, -14, -273, -273,
- -273, -273, -273, -273, -273, -273, -273, -273, -273, -273,
- -273, -273, -273, -273, -273, -273, -273, -72, -273, -55,
- -273, -273, -273, -273, 85, -263, -96, -12, -273, -273,
- 209, -115, -239, -273, -273, -273, -273, 143, 31, 157,
- 43, 160, 44, 162, 46, 163, 47, 165, 50, -66,
- 164, 91, 353, -273, 33, 300, 303, -273, -16, -273,
- -273, -273, -273, 101, 102, -273, -273, 106, 1, -273,
- -273, -74, 28, -61, -272
+ -287, -287, -287, -61, -2, -287, -287, -287, -287, 0,
+ -141, -80, -15, -287, -287, -287, 78, -10, -287, -287,
+ -287, -287, -287, -287, -287, -287, -287, -287, -287, -287,
+ -287, -287, -287, -287, -287, -287, -287, -68, -287, -50,
+ -287, -287, -287, -287, 88, -286, -105, 20, -287, -287,
+ 212, -77, -209, -287, -287, -287, -287, 150, 34, 152,
+ 33, 153, 35, 154, 38, 156, 40, 151, 42, -94,
+ 157, 75, 64, -287, 2, 290, 291, -287, 19, -287,
+ -287, -287, -287, 93, 95, -287, -287, 96, 26, -287,
+ -287, -73, 25, 17, -278
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
#define YYTABLE_NINF -197
static const yytype_int16 yytable[] =
{
- 43, 100, 45, 135, 102, 43, 86, 92, 247, 104,
- 247, 167, 168, 93, 205, 298, 217, 301, 134, 3,
- 220, 328, 218, 349, 222, 192, 310, 311, 194, 132,
- 189, 43, 84, 204, 330, 145, 146, 96, 295, 91,
- 138, 134, 101, 237, 238, 133, 255, 242, 114, 262,
- 326, 110, 111, 91, 350, 91, 134, 135, 91, 91,
- 139, 140, 166, 106, 147, 343, 256, 136, 91, 91,
- 127, 91, 91, 358, 248, 284, 248, 263, 94, 228,
- 229, 230, 191, 176, 363, 271, 128, 296, 135, 193,
- 136, 264, 346, 213, 285, 364, 210, 276, 176, 206,
- 369, 43, 141, 203, 103, 136, 211, 215, 142, 214,
- 154, 155, 43, 156, 207, 135, 143, 157, 43, 135,
- 209, 154, 155, 216, 156, 144, 265, 135, 157, 190,
- 359, 283, 267, 154, 155, 286, 156, 158, 148, 196,
- 157, 151, 152, 153, 273, 274, 197, 173, 239, 265,
- 287, 170, 244, 169, 170, 135, 171, 172, 200, 171,
- 172, 219, 160, 319, 161, 162, 240, 322, 309, 323,
- -196, 91, -195, 91, 91, 91, 91, 91, 91, 91,
- 91, 91, 91, 91, 91, 91, 91, 269, 189, 189,
- 189, 189, 189, 189, 189, 189, 307, 308, 329, 189,
- 189, 246, 338, 164, 212, 165, 162, 245, 10, 11,
- 12, 149, 150, 15, 250, 17, 18, 154, 155, 254,
- 321, 365, 365, 189, 268, 257, 324, 258, 28, 29,
- 259, 87, 260, 197, 176, 127, 31, 32, 261, 88,
- 232, 233, 279, 292, 282, 289, 294, 43, 332, 288,
- 341, 37, 176, 337, 312, 40, 314, 317, 41, 215,
- 320, 325, 333, 339, 331, 189, 340, 360, 344, 362,
- 354, 43, 43, 315, 316, 368, 367, 272, 327, 361,
- 352, 221, 176, 270, 159, 100, 300, 299, 91, 299,
- 91, 91, 91, 91, 91, 91, 91, 223, 299, 299,
- 302, 224, 303, 370, 225, 304, 226, 305, 371, 227,
- 97, 306, 231, 98, 277, 278, 100, 275, 0, 0,
- 0, 348, 299, 43, 0, 342, 0, 353, 0, 0,
- 43, 0, 347, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 43, 0, 357, 0, 100, 0, 0, 0,
- 0, 100, 43, 0, 45, 0, 0, 43, 43, 90,
- 0, 0, 0, 43, 299, 209, 0, 0, 43, 43,
- 372, 373, 0, 105, 0, 109, 0, 0, 112, 113,
- 174, 0, 0, 0, 0, 0, 0, 6, 123, 124,
- 0, 125, 126, 0, 0, 10, 11, 12, 0, 0,
- 15, 0, 17, 18, 0, 20, 0, 22, 0, 0,
- 0, 0, 25, 26, 0, 28, 29, -162, 87, 0,
- 0, 0, 0, 31, 32, 0, 88, 0, 0, 0,
- -162, -162, 0, 0, 0, 35, 36, 0, 37, 0,
- 38, 39, 40, 0, 0, 41, 0, -162, -162, 0,
- 0, 0, 0, 0, 0, 0, -162, -162, -162, -162,
- 0, 0, 0, 0, -162, -162, 0, 0, -162, -162,
- -162, -162, -190, 0, -162, 0, -162, 0, 0, 0,
- 0, -162, 0, 0, 0, -190, -190, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, -190, -190, 234, 235, 236, 0, 0, 0,
- 0, -190, -190, -190, -190, 0, 0, 0, 0, -190,
- -190, 0, 0, -190, -190, -190, -190, 4, 0, -190,
- 5, -190, 6, 7, 0, 8, -190, 9, 0, 0,
- 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
- 20, 21, 22, 23, 24, 0, 0, 25, 26, 27,
- 28, 29, 0, 30, 0, 0, 0, 0, 31, 32,
- 0, 33, 0, 0, 34, 0, 0, 0, 0, 0,
- 35, 36, 0, 37, 0, 38, 39, 40, 4, 0,
- 41, 5, 0, 6, 7, 0, 8, 0, 9, 0,
- 0, 10, 11, 12, 13, 14, 15, 16, 17, 18,
- 19, 20, 21, 22, 23, 24, 0, 0, 25, 26,
- 0, 28, 29, 115, 116, 0, 0, 0, 0, 117,
- 118, 0, 33, 0, 0, 34, 0, 0, 0, 0,
- 0, 35, 36, 0, 37, 0, 38, 39, 40, 4,
- 0, 41, 5, 0, 6, 7, 0, 8, 0, 9,
- 0, 0, 10, 11, 12, 13, 14, 15, 16, 17,
- 18, 19, 20, 21, 22, 23, 24, 0, 0, 25,
- 26, 0, 28, 29, 195, 30, 0, 0, 0, 0,
- 31, 32, 0, 33, 0, 0, 34, 0, 0, 0,
- 0, 0, 35, 36, 0, 37, 0, 38, 39, 40,
- 4, 0, 41, 5, 0, 6, 7, 0, 8, 0,
- 9, 0, 0, 10, 11, 12, 13, 14, 15, 16,
- 17, 18, 19, 20, 21, 22, 23, 24, 0, 0,
- 25, 26, 0, 28, 29, 208, 30, 0, 0, 0,
- 0, 31, 32, 0, 33, 0, 0, 34, 0, 0,
- 0, 0, 0, 35, 36, 0, 37, 0, 38, 39,
- 40, 4, 0, 41, 5, 0, 6, 7, 0, 8,
- 0, 9, 0, 0, 10, 11, 12, 13, 14, 15,
- 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
- 0, 25, 26, 0, 28, 29, 0, 30, 0, 0,
- 0, 0, 31, 32, 0, 33, 0, 0, 34, 0,
- 0, 0, 0, 0, 35, 36, 0, 37, 6, 38,
- 39, 40, 0, 0, 41, 0, 10, 11, 12, 0,
- 0, 15, 0, 17, 18, 0, 20, 0, 22, 0,
- 0, 0, 0, 25, 26, 0, 28, 29, 0, 87,
- 0, 0, 0, 0, 31, 32, 0, 88, 0, 0,
- 0, 0, 0, 0, 0, 0, 35, 36, 0, 37,
- 6, 38, 39, 40, 0, 0, 41, 241, 10, 11,
- 12, 0, 0, 15, 0, 17, 18, 0, 20, 177,
- 22, 0, 0, 0, 0, 25, 26, 0, 28, 29,
- 0, 87, 0, 0, 0, 0, 31, 32, 0, 88,
- 0, 0, 0, 0, 0, 0, 0, 0, 35, 36,
- 0, 37, 6, 38, 39, 40, 0, 0, 41, 0,
- 10, 11, 12, 0, 0, 15, 0, 17, 18, 0,
- 20, 0, 22, 0, 0, 0, 0, 25, 26, 0,
- 28, 29, 0, 87, 0, 0, 0, 0, 31, 32,
- 0, 88, 0, 0, 0, 0, 0, 0, 0, 0,
- 35, 36, 0, 37, 6, 38, 39, 40, 318, 0,
- 41, 0, 10, 11, 12, 0, 0, 15, 0, 17,
- 18, 0, 20, 0, 22, 0, 0, 0, 0, 25,
- 26, 0, 28, 29, 0, 87, 0, 0, 0, 0,
- 31, 32, 0, 88, 0, 0, 0, 0, 0, 0,
- 0, 0, 35, 36, 0, 37, 0, 38, 39, 40,
- 0, 0, 41
+ 42, 188, 44, 103, 204, 42, 133, 91, 90, 246,
+ 329, 166, 167, 246, 327, 134, 133, 133, 358, 294,
+ 83, 90, 92, 90, 263, 191, 90, 90, 193, 3,
+ 42, 85, 99, 203, 95, 101, 90, 90, 100, 90,
+ 90, 342, 153, 154, 297, 155, 300, 109, 110, 156,
+ 227, 228, 229, 216, 135, 309, 310, 219, 264, 134,
+ 131, 221, 134, 202, 135, 135, 357, 295, 261, 132,
+ 89, 363, 137, 348, 247, 134, 368, 362, 247, 325,
+ 236, 237, 102, 104, 241, 108, 93, 254, 111, 112,
+ 144, 145, 138, 283, 217, 262, 165, 189, 122, 123,
+ 42, 124, 125, 349, 150, 151, 152, 255, 126, 212,
+ 214, 42, 284, 206, 175, 134, 190, 42, 146, 208,
+ 192, 345, 270, 209, 127, 213, 215, 105, 195, 175,
+ 205, 282, 169, 210, 275, 196, 139, 170, 171, 90,
+ 286, 90, 90, 90, 90, 90, 90, 90, 90, 90,
+ 90, 90, 90, 90, 90, 113, 134, 218, 308, 188,
+ 188, 188, 188, 188, 188, 188, 188, 306, 307, 140,
+ 188, 188, 285, 153, 154, 159, 155, 160, 161, 238,
+ 156, 268, 141, 243, 168, 169, 148, 149, 328, 157,
+ 170, 171, 153, 154, 188, 155, 142, 245, 143, 156,
+ 318, 153, 154, 147, 321, 172, 322, 199, 264, 266,
+ 163, 134, 164, 161, 233, 234, 235, 364, 364, 239,
+ 267, 272, 273, 231, 232, -196, -195, 244, 211, 249,
+ 253, 256, 257, 259, 260, 258, 188, 196, 278, 337,
+ 126, 293, 281, 288, 291, 311, 42, 313, 287, 324,
+ 340, 214, 316, 319, 332, 298, 90, 298, 90, 90,
+ 90, 90, 90, 90, 90, 175, 298, 298, 330, 338,
+ 42, 42, 314, 315, 339, 361, 359, 367, 353, 366,
+ 271, 326, 360, 175, 351, 269, 158, 220, 299, 301,
+ 298, 222, 302, 223, 226, 224, 303, 320, 225, 304,
+ 96, 97, 305, 323, 230, 276, 274, 277, 0, 0,
+ 0, 0, 0, 175, 0, 0, 99, 0, 0, 0,
+ 0, 352, 42, 0, 341, 331, 0, 0, 0, 42,
+ 336, 346, 298, 0, 0, 0, 0, 0, 0, 0,
+ 0, 42, 0, 356, 0, 343, 0, 99, 0, 0,
+ 0, 42, 347, 44, 0, 0, 42, 42, 0, 0,
+ 0, 0, 42, 0, 208, 0, 0, 42, 42, 371,
+ 372, 173, 0, 0, 0, 0, 0, 99, 6, 0,
+ 369, 0, 99, 0, 0, 370, 10, 11, 0, 0,
+ 14, 0, 16, 17, 0, 19, 0, 21, 0, 0,
+ 0, 0, 24, 25, -162, 27, 28, 0, 86, 0,
+ 0, 0, 0, 30, 31, 0, 87, -162, -162, 0,
+ 0, 0, 0, 0, 0, 34, 35, 0, 36, 0,
+ 37, 38, 39, -162, -162, 40, 0, 0, 0, -190,
+ 0, 0, -162, -162, -162, -162, 0, 0, 0, 0,
+ -162, -162, -190, -190, -162, -162, -162, -162, 0, 0,
+ -162, 0, -162, 0, 0, 0, 0, -162, -190, -190,
+ 0, 0, 0, 0, 0, 0, 0, -190, -190, -190,
+ -190, 0, 0, 0, 0, -190, -190, 0, 0, -190,
+ -190, -190, -190, 4, 0, -190, 5, -190, 6, 7,
+ 0, 8, -190, 9, 0, 0, 10, 11, 12, 13,
+ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
+ 0, 0, 24, 25, 26, 27, 28, 0, 29, 0,
+ 0, 0, 0, 30, 31, 0, 32, 0, 0, 33,
+ 0, 0, 0, 0, 0, 34, 35, 0, 36, 0,
+ 37, 38, 39, 4, 0, 40, 5, 0, 6, 7,
+ 0, 8, 0, 9, 0, 0, 10, 11, 12, 13,
+ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
+ 0, 0, 24, 25, 0, 27, 28, 114, 115, 0,
+ 0, 0, 0, 116, 117, 0, 32, 0, 0, 33,
+ 0, 0, 0, 0, 0, 34, 35, 0, 36, 0,
+ 37, 38, 39, 4, 0, 40, 5, 0, 6, 7,
+ 0, 8, 0, 9, 0, 0, 10, 11, 12, 13,
+ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
+ 0, 0, 24, 25, 0, 27, 28, 194, 29, 0,
+ 0, 0, 0, 30, 31, 0, 32, 0, 0, 33,
+ 0, 0, 0, 0, 0, 34, 35, 0, 36, 0,
+ 37, 38, 39, 4, 0, 40, 5, 0, 6, 7,
+ 0, 8, 0, 9, 0, 0, 10, 11, 12, 13,
+ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
+ 0, 0, 24, 25, 0, 27, 28, 207, 29, 0,
+ 0, 0, 0, 30, 31, 0, 32, 0, 0, 33,
+ 0, 0, 0, 0, 0, 34, 35, 0, 36, 0,
+ 37, 38, 39, 4, 0, 40, 5, 0, 6, 7,
+ 0, 8, 0, 9, 0, 0, 10, 11, 12, 13,
+ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
+ 0, 0, 24, 25, 0, 27, 28, 0, 29, 0,
+ 0, 0, 0, 30, 31, 0, 32, 0, 0, 33,
+ 0, 0, 0, 0, 0, 34, 35, 0, 36, 6,
+ 37, 38, 39, 0, 0, 40, 0, 10, 11, 0,
+ 0, 14, 0, 16, 17, 0, 19, 0, 21, 0,
+ 0, 0, 0, 24, 25, 0, 27, 28, 0, 86,
+ 0, 0, 0, 0, 30, 31, 0, 87, 0, 0,
+ 0, 0, 0, 0, 0, 0, 34, 35, 0, 36,
+ 6, 37, 38, 39, 0, 0, 40, 240, 10, 11,
+ 0, 0, 14, 0, 16, 17, 0, 19, 176, 21,
+ 0, 0, 0, 0, 24, 25, 0, 27, 28, 0,
+ 86, 0, 0, 0, 0, 30, 31, 0, 87, 0,
+ 0, 0, 0, 0, 0, 0, 0, 34, 35, 0,
+ 36, 6, 37, 38, 39, 0, 0, 40, 0, 10,
+ 11, 0, 0, 14, 0, 16, 17, 0, 19, 0,
+ 21, 0, 0, 0, 0, 24, 25, 0, 27, 28,
+ 0, 86, 0, 0, 0, 0, 30, 31, 0, 87,
+ 0, 0, 0, 0, 0, 0, 0, 0, 34, 35,
+ 0, 36, 6, 37, 38, 39, 317, 0, 40, 0,
+ 10, 11, 0, 0, 14, 0, 16, 17, 0, 19,
+ 0, 21, 0, 0, 0, 0, 24, 25, 0, 27,
+ 28, 0, 86, 0, 0, 0, 0, 30, 31, 0,
+ 87, 10, 11, 0, 0, 14, 0, 16, 17, 34,
+ 35, 0, 36, 0, 37, 38, 39, 0, 0, 40,
+ 27, 28, 0, 86, 0, 0, 0, 0, 30, 31,
+ 0, 87, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 36, 0, 0, 0, 39, 0, 0,
+ 40
};
static const yytype_int16 yycheck[] =
{
- 2, 13, 2, 48, 16, 7, 5, 7, 1, 19,
- 1, 85, 86, 1, 110, 254, 131, 256, 1, 0,
- 135, 293, 67, 7, 139, 99, 265, 266, 102, 41,
- 96, 33, 39, 107, 297, 14, 15, 9, 1, 6,
- 32, 1, 14, 158, 159, 44, 32, 162, 51, 15,
- 289, 23, 24, 20, 38, 22, 1, 48, 25, 26,
- 52, 31, 78, 39, 43, 328, 52, 50, 35, 36,
- 48, 38, 39, 345, 67, 48, 67, 43, 66, 145,
- 146, 147, 98, 95, 356, 200, 64, 50, 48, 101,
- 50, 14, 331, 48, 67, 358, 38, 212, 110, 111,
- 363, 103, 53, 48, 47, 50, 48, 48, 54, 64,
- 33, 34, 114, 36, 114, 48, 55, 40, 120, 48,
- 120, 33, 34, 64, 36, 41, 49, 48, 40, 96,
- 51, 64, 193, 33, 34, 64, 36, 49, 42, 5,
- 40, 58, 59, 60, 205, 206, 12, 29, 160, 49,
- 246, 39, 164, 38, 39, 48, 44, 45, 49, 44,
- 45, 133, 63, 278, 65, 66, 39, 282, 264, 284,
- 51, 138, 51, 140, 141, 142, 143, 144, 145, 146,
- 147, 148, 149, 150, 151, 152, 153, 197, 254, 255,
- 256, 257, 258, 259, 260, 261, 262, 263, 294, 265,
- 266, 173, 317, 63, 51, 65, 66, 39, 16, 17,
- 18, 56, 57, 21, 39, 23, 24, 33, 34, 48,
- 281, 359, 360, 289, 196, 31, 287, 53, 36, 37,
- 54, 39, 55, 12, 246, 48, 44, 45, 41, 47,
- 149, 150, 39, 48, 51, 49, 14, 249, 309, 249,
- 324, 59, 264, 314, 47, 63, 39, 51, 66, 48,
- 48, 10, 4, 39, 51, 331, 47, 51, 329, 38,
- 340, 273, 274, 273, 274, 38, 360, 203, 292, 351,
- 335, 138, 294, 198, 75, 297, 255, 254, 255, 256,
- 257, 258, 259, 260, 261, 262, 263, 140, 265, 266,
- 257, 141, 258, 364, 142, 259, 143, 260, 369, 144,
- 10, 261, 148, 10, 213, 213, 328, 211, -1, -1,
- -1, 333, 289, 325, -1, 325, -1, 337, -1, -1,
- 332, -1, 332, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 344, -1, 344, -1, 358, -1, -1, -1,
- -1, 363, 354, -1, 354, -1, -1, 359, 360, 6,
- -1, -1, -1, 365, 331, 365, -1, -1, 370, 371,
- 370, 371, -1, 20, -1, 22, -1, -1, 25, 26,
- 1, -1, -1, -1, -1, -1, -1, 8, 35, 36,
- -1, 38, 39, -1, -1, 16, 17, 18, -1, -1,
- 21, -1, 23, 24, -1, 26, -1, 28, -1, -1,
- -1, -1, 33, 34, -1, 36, 37, 1, 39, -1,
- -1, -1, -1, 44, 45, -1, 47, -1, -1, -1,
- 14, 15, -1, -1, -1, 56, 57, -1, 59, -1,
- 61, 62, 63, -1, -1, 66, -1, 31, 32, -1,
- -1, -1, -1, -1, -1, -1, 40, 41, 42, 43,
- -1, -1, -1, -1, 48, 49, -1, -1, 52, 53,
- 54, 55, 1, -1, 58, -1, 60, -1, -1, -1,
- -1, 65, -1, -1, -1, 14, 15, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 31, 32, 151, 152, 153, -1, -1, -1,
- -1, 40, 41, 42, 43, -1, -1, -1, -1, 48,
- 49, -1, -1, 52, 53, 54, 55, 3, -1, 58,
- 6, 60, 8, 9, -1, 11, 65, 13, -1, -1,
- 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, 27, 28, 29, 30, -1, -1, 33, 34, 35,
- 36, 37, -1, 39, -1, -1, -1, -1, 44, 45,
- -1, 47, -1, -1, 50, -1, -1, -1, -1, -1,
- 56, 57, -1, 59, -1, 61, 62, 63, 3, -1,
- 66, 6, -1, 8, 9, -1, 11, -1, 13, -1,
- -1, 16, 17, 18, 19, 20, 21, 22, 23, 24,
- 25, 26, 27, 28, 29, 30, -1, -1, 33, 34,
- -1, 36, 37, 38, 39, -1, -1, -1, -1, 44,
- 45, -1, 47, -1, -1, 50, -1, -1, -1, -1,
- -1, 56, 57, -1, 59, -1, 61, 62, 63, 3,
- -1, 66, 6, -1, 8, 9, -1, 11, -1, 13,
- -1, -1, 16, 17, 18, 19, 20, 21, 22, 23,
- 24, 25, 26, 27, 28, 29, 30, -1, -1, 33,
- 34, -1, 36, 37, 38, 39, -1, -1, -1, -1,
- 44, 45, -1, 47, -1, -1, 50, -1, -1, -1,
- -1, -1, 56, 57, -1, 59, -1, 61, 62, 63,
- 3, -1, 66, 6, -1, 8, 9, -1, 11, -1,
- 13, -1, -1, 16, 17, 18, 19, 20, 21, 22,
- 23, 24, 25, 26, 27, 28, 29, 30, -1, -1,
- 33, 34, -1, 36, 37, 38, 39, -1, -1, -1,
- -1, 44, 45, -1, 47, -1, -1, 50, -1, -1,
- -1, -1, -1, 56, 57, -1, 59, -1, 61, 62,
- 63, 3, -1, 66, 6, -1, 8, 9, -1, 11,
- -1, 13, -1, -1, 16, 17, 18, 19, 20, 21,
- 22, 23, 24, 25, 26, 27, 28, 29, 30, -1,
- -1, 33, 34, -1, 36, 37, -1, 39, -1, -1,
- -1, -1, 44, 45, -1, 47, -1, -1, 50, -1,
- -1, -1, -1, -1, 56, 57, -1, 59, 8, 61,
- 62, 63, -1, -1, 66, -1, 16, 17, 18, -1,
- -1, 21, -1, 23, 24, -1, 26, -1, 28, -1,
- -1, -1, -1, 33, 34, -1, 36, 37, -1, 39,
- -1, -1, -1, -1, 44, 45, -1, 47, -1, -1,
- -1, -1, -1, -1, -1, -1, 56, 57, -1, 59,
- 8, 61, 62, 63, -1, -1, 66, 67, 16, 17,
- 18, -1, -1, 21, -1, 23, 24, -1, 26, 27,
- 28, -1, -1, -1, -1, 33, 34, -1, 36, 37,
- -1, 39, -1, -1, -1, -1, 44, 45, -1, 47,
- -1, -1, -1, -1, -1, -1, -1, -1, 56, 57,
- -1, 59, 8, 61, 62, 63, -1, -1, 66, -1,
- 16, 17, 18, -1, -1, 21, -1, 23, 24, -1,
- 26, -1, 28, -1, -1, -1, -1, 33, 34, -1,
- 36, 37, -1, 39, -1, -1, -1, -1, 44, 45,
- -1, 47, -1, -1, -1, -1, -1, -1, -1, -1,
- 56, 57, -1, 59, 8, 61, 62, 63, 64, -1,
- 66, -1, 16, 17, 18, -1, -1, 21, -1, 23,
- 24, -1, 26, -1, 28, -1, -1, -1, -1, 33,
- 34, -1, 36, 37, -1, 39, -1, -1, -1, -1,
- 44, 45, -1, 47, -1, -1, -1, -1, -1, -1,
- -1, -1, 56, 57, -1, 59, -1, 61, 62, 63,
- -1, -1, 66
+ 2, 95, 2, 18, 109, 7, 1, 7, 6, 1,
+ 296, 84, 85, 1, 292, 47, 1, 1, 50, 1,
+ 38, 19, 1, 21, 14, 98, 24, 25, 101, 0,
+ 32, 5, 12, 106, 9, 15, 34, 35, 13, 37,
+ 38, 327, 32, 33, 253, 35, 255, 22, 23, 39,
+ 144, 145, 146, 130, 49, 264, 265, 134, 48, 47,
+ 40, 138, 47, 47, 49, 49, 344, 49, 15, 43,
+ 6, 357, 31, 7, 66, 47, 362, 355, 66, 288,
+ 157, 158, 46, 19, 161, 21, 65, 31, 24, 25,
+ 14, 15, 51, 47, 66, 42, 77, 95, 34, 35,
+ 102, 37, 38, 37, 57, 58, 59, 51, 47, 47,
+ 47, 113, 66, 113, 94, 47, 97, 119, 42, 119,
+ 100, 330, 199, 37, 63, 63, 63, 38, 5, 109,
+ 110, 63, 38, 47, 211, 12, 30, 43, 44, 137,
+ 245, 139, 140, 141, 142, 143, 144, 145, 146, 147,
+ 148, 149, 150, 151, 152, 50, 47, 132, 263, 253,
+ 254, 255, 256, 257, 258, 259, 260, 261, 262, 52,
+ 264, 265, 63, 32, 33, 62, 35, 64, 65, 159,
+ 39, 196, 53, 163, 37, 38, 55, 56, 293, 48,
+ 43, 44, 32, 33, 288, 35, 54, 172, 40, 39,
+ 277, 32, 33, 41, 281, 28, 283, 48, 48, 192,
+ 62, 47, 64, 65, 150, 151, 152, 358, 359, 38,
+ 195, 204, 205, 148, 149, 50, 50, 38, 50, 38,
+ 47, 30, 52, 54, 40, 53, 330, 12, 38, 316,
+ 47, 14, 50, 48, 47, 46, 248, 38, 248, 10,
+ 323, 47, 50, 47, 4, 253, 254, 255, 256, 257,
+ 258, 259, 260, 261, 262, 245, 264, 265, 50, 38,
+ 272, 273, 272, 273, 46, 37, 50, 37, 339, 359,
+ 202, 291, 350, 263, 334, 197, 74, 137, 254, 256,
+ 288, 139, 257, 140, 143, 141, 258, 280, 142, 259,
+ 10, 10, 260, 286, 147, 212, 210, 212, -1, -1,
+ -1, -1, -1, 293, -1, -1, 296, -1, -1, -1,
+ -1, 336, 324, -1, 324, 308, -1, -1, -1, 331,
+ 313, 331, 330, -1, -1, -1, -1, -1, -1, -1,
+ -1, 343, -1, 343, -1, 328, -1, 327, -1, -1,
+ -1, 353, 332, 353, -1, -1, 358, 359, -1, -1,
+ -1, -1, 364, -1, 364, -1, -1, 369, 370, 369,
+ 370, 1, -1, -1, -1, -1, -1, 357, 8, -1,
+ 363, -1, 362, -1, -1, 368, 16, 17, -1, -1,
+ 20, -1, 22, 23, -1, 25, -1, 27, -1, -1,
+ -1, -1, 32, 33, 1, 35, 36, -1, 38, -1,
+ -1, -1, -1, 43, 44, -1, 46, 14, 15, -1,
+ -1, -1, -1, -1, -1, 55, 56, -1, 58, -1,
+ 60, 61, 62, 30, 31, 65, -1, -1, -1, 1,
+ -1, -1, 39, 40, 41, 42, -1, -1, -1, -1,
+ 47, 48, 14, 15, 51, 52, 53, 54, -1, -1,
+ 57, -1, 59, -1, -1, -1, -1, 64, 30, 31,
+ -1, -1, -1, -1, -1, -1, -1, 39, 40, 41,
+ 42, -1, -1, -1, -1, 47, 48, -1, -1, 51,
+ 52, 53, 54, 3, -1, 57, 6, 59, 8, 9,
+ -1, 11, 64, 13, -1, -1, 16, 17, 18, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
+ -1, -1, 32, 33, 34, 35, 36, -1, 38, -1,
+ -1, -1, -1, 43, 44, -1, 46, -1, -1, 49,
+ -1, -1, -1, -1, -1, 55, 56, -1, 58, -1,
+ 60, 61, 62, 3, -1, 65, 6, -1, 8, 9,
+ -1, 11, -1, 13, -1, -1, 16, 17, 18, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
+ -1, -1, 32, 33, -1, 35, 36, 37, 38, -1,
+ -1, -1, -1, 43, 44, -1, 46, -1, -1, 49,
+ -1, -1, -1, -1, -1, 55, 56, -1, 58, -1,
+ 60, 61, 62, 3, -1, 65, 6, -1, 8, 9,
+ -1, 11, -1, 13, -1, -1, 16, 17, 18, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
+ -1, -1, 32, 33, -1, 35, 36, 37, 38, -1,
+ -1, -1, -1, 43, 44, -1, 46, -1, -1, 49,
+ -1, -1, -1, -1, -1, 55, 56, -1, 58, -1,
+ 60, 61, 62, 3, -1, 65, 6, -1, 8, 9,
+ -1, 11, -1, 13, -1, -1, 16, 17, 18, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
+ -1, -1, 32, 33, -1, 35, 36, 37, 38, -1,
+ -1, -1, -1, 43, 44, -1, 46, -1, -1, 49,
+ -1, -1, -1, -1, -1, 55, 56, -1, 58, -1,
+ 60, 61, 62, 3, -1, 65, 6, -1, 8, 9,
+ -1, 11, -1, 13, -1, -1, 16, 17, 18, 19,
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
+ -1, -1, 32, 33, -1, 35, 36, -1, 38, -1,
+ -1, -1, -1, 43, 44, -1, 46, -1, -1, 49,
+ -1, -1, -1, -1, -1, 55, 56, -1, 58, 8,
+ 60, 61, 62, -1, -1, 65, -1, 16, 17, -1,
+ -1, 20, -1, 22, 23, -1, 25, -1, 27, -1,
+ -1, -1, -1, 32, 33, -1, 35, 36, -1, 38,
+ -1, -1, -1, -1, 43, 44, -1, 46, -1, -1,
+ -1, -1, -1, -1, -1, -1, 55, 56, -1, 58,
+ 8, 60, 61, 62, -1, -1, 65, 66, 16, 17,
+ -1, -1, 20, -1, 22, 23, -1, 25, 26, 27,
+ -1, -1, -1, -1, 32, 33, -1, 35, 36, -1,
+ 38, -1, -1, -1, -1, 43, 44, -1, 46, -1,
+ -1, -1, -1, -1, -1, -1, -1, 55, 56, -1,
+ 58, 8, 60, 61, 62, -1, -1, 65, -1, 16,
+ 17, -1, -1, 20, -1, 22, 23, -1, 25, -1,
+ 27, -1, -1, -1, -1, 32, 33, -1, 35, 36,
+ -1, 38, -1, -1, -1, -1, 43, 44, -1, 46,
+ -1, -1, -1, -1, -1, -1, -1, -1, 55, 56,
+ -1, 58, 8, 60, 61, 62, 63, -1, 65, -1,
+ 16, 17, -1, -1, 20, -1, 22, 23, -1, 25,
+ -1, 27, -1, -1, -1, -1, 32, 33, -1, 35,
+ 36, -1, 38, -1, -1, -1, -1, 43, 44, -1,
+ 46, 16, 17, -1, -1, 20, -1, 22, 23, 55,
+ 56, -1, 58, -1, 60, 61, 62, -1, -1, 65,
+ 35, 36, -1, 38, -1, -1, -1, -1, 43, 44,
+ -1, 46, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 58, -1, -1, -1, 62, -1, -1,
+ 65
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
static const yytype_uint8 yystos[] =
{
- 0, 69, 71, 0, 3, 6, 8, 9, 11, 13,
+ 0, 68, 70, 0, 3, 6, 8, 9, 11, 13,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, 27, 28, 29, 30, 33, 34, 35, 36, 37,
- 39, 44, 45, 47, 50, 56, 57, 59, 61, 62,
- 63, 66, 70, 72, 73, 77, 80, 81, 90, 91,
- 92, 93, 98, 99, 100, 101, 102, 103, 109, 110,
- 115, 119, 121, 123, 125, 127, 129, 131, 133, 135,
- 137, 138, 139, 140, 141, 142, 143, 144, 145, 148,
- 149, 153, 157, 158, 39, 156, 156, 39, 47, 72,
- 140, 142, 77, 1, 66, 160, 160, 143, 144, 113,
- 115, 160, 115, 47, 80, 140, 39, 82, 84, 140,
- 160, 160, 140, 140, 51, 38, 39, 44, 45, 77,
- 78, 154, 155, 140, 140, 140, 140, 48, 64, 150,
- 151, 152, 115, 156, 1, 48, 50, 159, 32, 52,
- 31, 53, 54, 55, 41, 14, 15, 43, 42, 56,
- 57, 58, 59, 60, 33, 34, 36, 40, 49, 118,
- 63, 65, 66, 146, 63, 65, 146, 159, 159, 38,
- 39, 44, 45, 29, 1, 114, 115, 27, 116, 117,
- 120, 122, 124, 126, 128, 130, 132, 134, 136, 137,
- 142, 146, 159, 115, 159, 38, 5, 12, 111, 112,
- 49, 86, 87, 48, 159, 114, 115, 77, 38, 77,
- 38, 48, 51, 48, 64, 48, 64, 119, 67, 160,
- 119, 125, 119, 127, 129, 131, 133, 135, 137, 137,
- 137, 138, 139, 139, 140, 140, 140, 119, 119, 115,
- 39, 67, 119, 147, 115, 39, 160, 1, 67, 161,
- 39, 83, 85, 94, 48, 32, 52, 31, 53, 54,
- 55, 41, 15, 43, 14, 49, 118, 161, 160, 80,
- 112, 119, 84, 161, 161, 155, 119, 151, 152, 39,
- 75, 76, 51, 64, 48, 67, 64, 114, 77, 49,
- 88, 89, 48, 96, 14, 1, 50, 162, 120, 142,
- 126, 120, 128, 130, 132, 134, 136, 137, 137, 114,
- 120, 120, 47, 104, 39, 77, 77, 51, 64, 119,
- 48, 161, 119, 119, 161, 10, 120, 85, 162, 114,
- 113, 51, 161, 4, 105, 106, 107, 161, 119, 39,
- 47, 159, 77, 113, 161, 95, 120, 77, 115, 7,
- 38, 108, 107, 80, 71, 74, 97, 77, 162, 51,
- 51, 105, 38, 162, 113, 78, 79, 79, 38, 113,
- 161, 161, 77, 77
+ 26, 27, 28, 29, 32, 33, 34, 35, 36, 38,
+ 43, 44, 46, 49, 55, 56, 58, 60, 61, 62,
+ 65, 69, 71, 72, 76, 79, 80, 89, 90, 91,
+ 92, 97, 98, 99, 100, 101, 102, 108, 109, 114,
+ 118, 120, 122, 124, 126, 128, 130, 132, 134, 136,
+ 137, 138, 139, 140, 141, 142, 143, 144, 147, 148,
+ 152, 156, 157, 38, 155, 155, 38, 46, 71, 139,
+ 141, 76, 1, 65, 159, 159, 142, 143, 112, 114,
+ 159, 114, 46, 79, 139, 38, 81, 83, 139, 159,
+ 159, 139, 139, 50, 37, 38, 43, 44, 76, 77,
+ 153, 154, 139, 139, 139, 139, 47, 63, 149, 150,
+ 151, 114, 155, 1, 47, 49, 158, 31, 51, 30,
+ 52, 53, 54, 40, 14, 15, 42, 41, 55, 56,
+ 57, 58, 59, 32, 33, 35, 39, 48, 117, 62,
+ 64, 65, 145, 62, 64, 145, 158, 158, 37, 38,
+ 43, 44, 28, 1, 113, 114, 26, 115, 116, 119,
+ 121, 123, 125, 127, 129, 131, 133, 135, 136, 141,
+ 145, 158, 114, 158, 37, 5, 12, 110, 111, 48,
+ 85, 86, 47, 158, 113, 114, 76, 37, 76, 37,
+ 47, 50, 47, 63, 47, 63, 118, 66, 159, 118,
+ 124, 118, 126, 128, 130, 132, 134, 136, 136, 136,
+ 137, 138, 138, 139, 139, 139, 118, 118, 114, 38,
+ 66, 118, 146, 114, 38, 159, 1, 66, 160, 38,
+ 82, 84, 93, 47, 31, 51, 30, 52, 53, 54,
+ 40, 15, 42, 14, 48, 117, 160, 159, 79, 111,
+ 118, 83, 160, 160, 154, 118, 150, 151, 38, 74,
+ 75, 50, 63, 47, 66, 63, 113, 76, 48, 87,
+ 88, 47, 95, 14, 1, 49, 161, 119, 141, 125,
+ 119, 127, 129, 131, 133, 135, 136, 136, 113, 119,
+ 119, 46, 103, 38, 76, 76, 50, 63, 118, 47,
+ 160, 118, 118, 160, 10, 119, 84, 161, 113, 112,
+ 50, 160, 4, 104, 105, 106, 160, 118, 38, 46,
+ 158, 76, 112, 160, 94, 119, 76, 114, 7, 37,
+ 107, 106, 79, 70, 73, 96, 76, 161, 50, 50,
+ 104, 37, 161, 112, 77, 78, 78, 37, 112, 160,
+ 160, 76, 76
};
#define yyerrok (yyerrstatus = 0)
case 2:
/* Line 1455 of yacc.c */
-#line 258 "parser.y"
+#line 257 "parser.y"
{ program_parsed(ctx, (yyvsp[(1) - (2)].source_elements)); ;}
break;
case 3:
/* Line 1455 of yacc.c */
-#line 261 "parser.y"
+#line 260 "parser.y"
{;}
break;
case 4:
/* Line 1455 of yacc.c */
-#line 262 "parser.y"
+#line 261 "parser.y"
{;}
break;
case 5:
/* Line 1455 of yacc.c */
-#line 266 "parser.y"
+#line 265 "parser.y"
{ (yyval.source_elements) = new_source_elements(ctx); ;}
break;
case 6:
/* Line 1455 of yacc.c */
-#line 268 "parser.y"
+#line 267 "parser.y"
{ (yyval.source_elements) = source_elements_add_statement((yyvsp[(1) - (2)].source_elements), (yyvsp[(2) - (2)].statement)); ;}
break;
case 7:
/* Line 1455 of yacc.c */
-#line 273 "parser.y"
+#line 272 "parser.y"
{ (yyval.expr) = new_function_expression(ctx, (yyvsp[(2) - (8)].identifier), (yyvsp[(4) - (8)].parameter_list), (yyvsp[(7) - (8)].source_elements), (yyvsp[(1) - (8)].srcptr), (yyvsp[(8) - (8)].srcptr)-(yyvsp[(1) - (8)].srcptr)+1); ;}
break;
case 8:
/* Line 1455 of yacc.c */
-#line 276 "parser.y"
+#line 275 "parser.y"
{ push_func(ctx); (yyval.srcptr) = (yyvsp[(1) - (1)].srcptr); ;}
break;
case 9:
/* Line 1455 of yacc.c */
-#line 280 "parser.y"
+#line 279 "parser.y"
{ (yyval.source_elements) = function_body_parsed(ctx, (yyvsp[(1) - (1)].source_elements)); ;}
break;
case 10:
/* Line 1455 of yacc.c */
-#line 284 "parser.y"
+#line 283 "parser.y"
{ (yyval.parameter_list) = new_parameter_list(ctx, (yyvsp[(1) - (1)].identifier)); ;}
break;
case 11:
/* Line 1455 of yacc.c */
-#line 286 "parser.y"
+#line 285 "parser.y"
{ (yyval.parameter_list) = parameter_list_add(ctx, (yyvsp[(1) - (3)].parameter_list), (yyvsp[(3) - (3)].identifier)); ;}
break;
case 12:
/* Line 1455 of yacc.c */
-#line 290 "parser.y"
+#line 289 "parser.y"
{ (yyval.parameter_list) = NULL; ;}
break;
case 13:
/* Line 1455 of yacc.c */
-#line 291 "parser.y"
+#line 290 "parser.y"
{ (yyval.parameter_list) = (yyvsp[(1) - (1)].parameter_list); ;}
break;
case 14:
/* Line 1455 of yacc.c */
-#line 295 "parser.y"
+#line 294 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 15:
/* Line 1455 of yacc.c */
-#line 296 "parser.y"
+#line 295 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 16:
/* Line 1455 of yacc.c */
-#line 297 "parser.y"
+#line 296 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 17:
/* Line 1455 of yacc.c */
-#line 298 "parser.y"
+#line 297 "parser.y"
{ (yyval.statement) = new_empty_statement(ctx); ;}
break;
case 18:
/* Line 1455 of yacc.c */
-#line 299 "parser.y"
+#line 298 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 19:
/* Line 1455 of yacc.c */
-#line 300 "parser.y"
+#line 299 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 20:
/* Line 1455 of yacc.c */
-#line 301 "parser.y"
+#line 300 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 21:
/* Line 1455 of yacc.c */
-#line 302 "parser.y"
+#line 301 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 22:
/* Line 1455 of yacc.c */
-#line 303 "parser.y"
+#line 302 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 23:
/* Line 1455 of yacc.c */
-#line 304 "parser.y"
+#line 303 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 24:
/* Line 1455 of yacc.c */
-#line 305 "parser.y"
+#line 304 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 25:
/* Line 1455 of yacc.c */
-#line 306 "parser.y"
+#line 305 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 26:
/* Line 1455 of yacc.c */
-#line 307 "parser.y"
+#line 306 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 27:
/* Line 1455 of yacc.c */
-#line 308 "parser.y"
+#line 307 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 28:
/* Line 1455 of yacc.c */
-#line 309 "parser.y"
+#line 308 "parser.y"
{ (yyval.statement) = (yyvsp[(1) - (1)].statement); ;}
break;
case 29:
/* Line 1455 of yacc.c */
-#line 313 "parser.y"
+#line 312 "parser.y"
{ (yyval.statement_list) = new_statement_list(ctx, (yyvsp[(1) - (1)].statement)); ;}
break;
case 30:
/* Line 1455 of yacc.c */
-#line 315 "parser.y"
+#line 314 "parser.y"
{ (yyval.statement_list) = statement_list_add((yyvsp[(1) - (2)].statement_list), (yyvsp[(2) - (2)].statement)); ;}
break;
case 31:
/* Line 1455 of yacc.c */
-#line 319 "parser.y"
+#line 318 "parser.y"
{ (yyval.statement_list) = NULL; ;}
break;
case 32:
/* Line 1455 of yacc.c */
-#line 320 "parser.y"
+#line 319 "parser.y"
{ (yyval.statement_list) = (yyvsp[(1) - (1)].statement_list); ;}
break;
case 33:
/* Line 1455 of yacc.c */
-#line 324 "parser.y"
+#line 323 "parser.y"
{ (yyval.statement) = new_block_statement(ctx, (yyvsp[(2) - (3)].statement_list)); ;}
break;
case 34:
/* Line 1455 of yacc.c */
-#line 325 "parser.y"
+#line 324 "parser.y"
{ (yyval.statement) = new_block_statement(ctx, NULL); ;}
break;
case 35:
/* Line 1455 of yacc.c */
-#line 330 "parser.y"
+#line 329 "parser.y"
{ (yyval.statement) = new_var_statement(ctx, (yyvsp[(2) - (3)].variable_list)); ;}
break;
case 36:
/* Line 1455 of yacc.c */
-#line 334 "parser.y"
+#line 333 "parser.y"
{ (yyval.variable_list) = new_variable_list(ctx, (yyvsp[(1) - (1)].variable_declaration)); ;}
break;
case 37:
/* Line 1455 of yacc.c */
-#line 336 "parser.y"
+#line 335 "parser.y"
{ (yyval.variable_list) = variable_list_add(ctx, (yyvsp[(1) - (3)].variable_list), (yyvsp[(3) - (3)].variable_declaration)); ;}
break;
case 38:
/* Line 1455 of yacc.c */
-#line 341 "parser.y"
+#line 340 "parser.y"
{ (yyval.variable_list) = new_variable_list(ctx, (yyvsp[(1) - (1)].variable_declaration)); ;}
break;
case 39:
/* Line 1455 of yacc.c */
-#line 343 "parser.y"
+#line 342 "parser.y"
{ (yyval.variable_list) = variable_list_add(ctx, (yyvsp[(1) - (3)].variable_list), (yyvsp[(3) - (3)].variable_declaration)); ;}
break;
case 40:
/* Line 1455 of yacc.c */
-#line 348 "parser.y"
+#line 347 "parser.y"
{ (yyval.variable_declaration) = new_variable_declaration(ctx, (yyvsp[(1) - (2)].identifier), (yyvsp[(2) - (2)].expr)); ;}
break;
case 41:
/* Line 1455 of yacc.c */
-#line 353 "parser.y"
+#line 352 "parser.y"
{ (yyval.variable_declaration) = new_variable_declaration(ctx, (yyvsp[(1) - (2)].identifier), (yyvsp[(2) - (2)].expr)); ;}
break;
case 42:
/* Line 1455 of yacc.c */
-#line 357 "parser.y"
+#line 356 "parser.y"
{ (yyval.expr) = NULL; ;}
break;
case 43:
/* Line 1455 of yacc.c */
-#line 358 "parser.y"
+#line 357 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 44:
/* Line 1455 of yacc.c */
-#line 363 "parser.y"
+#line 362 "parser.y"
{ (yyval.expr) = (yyvsp[(2) - (2)].expr); ;}
break;
case 45:
/* Line 1455 of yacc.c */
-#line 367 "parser.y"
+#line 366 "parser.y"
{ (yyval.expr) = NULL; ;}
break;
case 46:
/* Line 1455 of yacc.c */
-#line 368 "parser.y"
+#line 367 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 47:
/* Line 1455 of yacc.c */
-#line 373 "parser.y"
+#line 372 "parser.y"
{ (yyval.expr) = (yyvsp[(2) - (2)].expr); ;}
break;
case 48:
/* Line 1455 of yacc.c */
-#line 377 "parser.y"
+#line 376 "parser.y"
{ (yyval.statement) = new_empty_statement(ctx); ;}
break;
case 49:
/* Line 1455 of yacc.c */
-#line 382 "parser.y"
+#line 381 "parser.y"
{ (yyval.statement) = new_expression_statement(ctx, (yyvsp[(1) - (2)].expr)); ;}
break;
case 50:
/* Line 1455 of yacc.c */
-#line 387 "parser.y"
+#line 386 "parser.y"
{ (yyval.statement) = new_if_statement(ctx, (yyvsp[(3) - (7)].expr), (yyvsp[(5) - (7)].statement), (yyvsp[(7) - (7)].statement)); ;}
break;
case 51:
/* Line 1455 of yacc.c */
-#line 389 "parser.y"
+#line 388 "parser.y"
{ (yyval.statement) = new_if_statement(ctx, (yyvsp[(3) - (5)].expr), (yyvsp[(5) - (5)].statement), NULL); ;}
break;
case 52:
/* Line 1455 of yacc.c */
-#line 394 "parser.y"
+#line 393 "parser.y"
{ (yyval.statement) = new_while_statement(ctx, TRUE, (yyvsp[(5) - (7)].expr), (yyvsp[(2) - (7)].statement)); ;}
break;
case 53:
/* Line 1455 of yacc.c */
-#line 396 "parser.y"
+#line 395 "parser.y"
{ (yyval.statement) = new_while_statement(ctx, FALSE, (yyvsp[(3) - (5)].expr), (yyvsp[(5) - (5)].statement)); ;}
break;
case 54:
/* Line 1455 of yacc.c */
-#line 398 "parser.y"
+#line 397 "parser.y"
{ if(!explicit_error(ctx, (yyvsp[(3) - (3)].expr), ';')) YYABORT; ;}
break;
case 55:
/* Line 1455 of yacc.c */
-#line 400 "parser.y"
+#line 399 "parser.y"
{ if(!explicit_error(ctx, (yyvsp[(6) - (6)].expr), ';')) YYABORT; ;}
break;
case 56:
/* Line 1455 of yacc.c */
-#line 402 "parser.y"
+#line 401 "parser.y"
{ (yyval.statement) = new_for_statement(ctx, NULL, (yyvsp[(3) - (11)].expr), (yyvsp[(6) - (11)].expr), (yyvsp[(9) - (11)].expr), (yyvsp[(11) - (11)].statement)); ;}
break;
case 57:
/* Line 1455 of yacc.c */
-#line 404 "parser.y"
+#line 403 "parser.y"
{ if(!explicit_error(ctx, (yyvsp[(4) - (4)].variable_list), ';')) YYABORT; ;}
break;
case 58:
/* Line 1455 of yacc.c */
-#line 406 "parser.y"
+#line 405 "parser.y"
{ if(!explicit_error(ctx, (yyvsp[(7) - (7)].expr), ';')) YYABORT; ;}
break;
case 59:
/* Line 1455 of yacc.c */
-#line 408 "parser.y"
+#line 407 "parser.y"
{ (yyval.statement) = new_for_statement(ctx, (yyvsp[(4) - (12)].variable_list), NULL, (yyvsp[(7) - (12)].expr), (yyvsp[(10) - (12)].expr), (yyvsp[(12) - (12)].statement)); ;}
break;
case 60:
/* Line 1455 of yacc.c */
-#line 410 "parser.y"
+#line 409 "parser.y"
{ (yyval.statement) = new_forin_statement(ctx, NULL, (yyvsp[(3) - (7)].expr), (yyvsp[(5) - (7)].expr), (yyvsp[(7) - (7)].statement)); ;}
break;
case 61:
/* Line 1455 of yacc.c */
-#line 412 "parser.y"
+#line 411 "parser.y"
{ (yyval.statement) = new_forin_statement(ctx, (yyvsp[(4) - (8)].variable_declaration), NULL, (yyvsp[(6) - (8)].expr), (yyvsp[(8) - (8)].statement)); ;}
break;
case 62:
/* Line 1455 of yacc.c */
-#line 417 "parser.y"
+#line 416 "parser.y"
{ (yyval.statement) = new_continue_statement(ctx, (yyvsp[(2) - (3)].identifier)); ;}
break;
case 63:
/* Line 1455 of yacc.c */
-#line 422 "parser.y"
+#line 421 "parser.y"
{ (yyval.statement) = new_break_statement(ctx, (yyvsp[(2) - (3)].identifier)); ;}
break;
case 64:
/* Line 1455 of yacc.c */
-#line 427 "parser.y"
+#line 426 "parser.y"
{ (yyval.statement) = new_return_statement(ctx, (yyvsp[(2) - (3)].expr)); ;}
break;
case 65:
/* Line 1455 of yacc.c */
-#line 432 "parser.y"
+#line 431 "parser.y"
{ (yyval.statement) = new_with_statement(ctx, (yyvsp[(3) - (5)].expr), (yyvsp[(5) - (5)].statement)); ;}
break;
case 66:
/* Line 1455 of yacc.c */
-#line 437 "parser.y"
+#line 436 "parser.y"
{ (yyval.statement) = new_labelled_statement(ctx, (yyvsp[(1) - (3)].identifier), (yyvsp[(3) - (3)].statement)); ;}
break;
case 67:
/* Line 1455 of yacc.c */
-#line 442 "parser.y"
+#line 441 "parser.y"
{ (yyval.statement) = new_switch_statement(ctx, (yyvsp[(3) - (5)].expr), (yyvsp[(5) - (5)].case_clausule)); ;}
break;
case 68:
/* Line 1455 of yacc.c */
-#line 447 "parser.y"
+#line 446 "parser.y"
{ (yyval.case_clausule) = new_case_block(ctx, (yyvsp[(2) - (3)].case_list), NULL, NULL); ;}
break;
case 69:
/* Line 1455 of yacc.c */
-#line 449 "parser.y"
+#line 448 "parser.y"
{ (yyval.case_clausule) = new_case_block(ctx, (yyvsp[(2) - (5)].case_list), (yyvsp[(3) - (5)].case_clausule), (yyvsp[(4) - (5)].case_list)); ;}
break;
case 70:
/* Line 1455 of yacc.c */
-#line 453 "parser.y"
+#line 452 "parser.y"
{ (yyval.case_list) = NULL; ;}
break;
case 71:
/* Line 1455 of yacc.c */
-#line 454 "parser.y"
+#line 453 "parser.y"
{ (yyval.case_list) = (yyvsp[(1) - (1)].case_list); ;}
break;
case 72:
/* Line 1455 of yacc.c */
-#line 458 "parser.y"
+#line 457 "parser.y"
{ (yyval.case_list) = new_case_list(ctx, (yyvsp[(1) - (1)].case_clausule)); ;}
break;
case 73:
/* Line 1455 of yacc.c */
-#line 460 "parser.y"
+#line 459 "parser.y"
{ (yyval.case_list) = case_list_add(ctx, (yyvsp[(1) - (2)].case_list), (yyvsp[(2) - (2)].case_clausule)); ;}
break;
case 74:
/* Line 1455 of yacc.c */
-#line 465 "parser.y"
+#line 464 "parser.y"
{ (yyval.case_clausule) = new_case_clausule(ctx, (yyvsp[(2) - (4)].expr), (yyvsp[(4) - (4)].statement_list)); ;}
break;
case 75:
/* Line 1455 of yacc.c */
-#line 470 "parser.y"
+#line 469 "parser.y"
{ (yyval.case_clausule) = new_case_clausule(ctx, NULL, (yyvsp[(3) - (3)].statement_list)); ;}
break;
case 76:
/* Line 1455 of yacc.c */
-#line 475 "parser.y"
+#line 474 "parser.y"
{ (yyval.statement) = new_throw_statement(ctx, (yyvsp[(2) - (3)].expr)); ;}
break;
case 77:
/* Line 1455 of yacc.c */
-#line 479 "parser.y"
+#line 478 "parser.y"
{ (yyval.statement) = new_try_statement(ctx, (yyvsp[(2) - (3)].statement), (yyvsp[(3) - (3)].catch_block), NULL); ;}
break;
case 78:
/* Line 1455 of yacc.c */
-#line 480 "parser.y"
+#line 479 "parser.y"
{ (yyval.statement) = new_try_statement(ctx, (yyvsp[(2) - (3)].statement), NULL, (yyvsp[(3) - (3)].statement)); ;}
break;
case 79:
/* Line 1455 of yacc.c */
-#line 482 "parser.y"
+#line 481 "parser.y"
{ (yyval.statement) = new_try_statement(ctx, (yyvsp[(2) - (4)].statement), (yyvsp[(3) - (4)].catch_block), (yyvsp[(4) - (4)].statement)); ;}
break;
case 80:
/* Line 1455 of yacc.c */
-#line 487 "parser.y"
+#line 486 "parser.y"
{ (yyval.catch_block) = new_catch_block(ctx, (yyvsp[(3) - (5)].identifier), (yyvsp[(5) - (5)].statement)); ;}
break;
case 81:
/* Line 1455 of yacc.c */
-#line 491 "parser.y"
+#line 490 "parser.y"
{ (yyval.statement) = (yyvsp[(2) - (2)].statement); ;}
break;
case 82:
/* Line 1455 of yacc.c */
-#line 495 "parser.y"
+#line 494 "parser.y"
{ (yyval.expr) = NULL; ;}
break;
case 83:
/* Line 1455 of yacc.c */
-#line 496 "parser.y"
+#line 495 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 84:
/* Line 1455 of yacc.c */
-#line 499 "parser.y"
+#line 498 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 85:
/* Line 1455 of yacc.c */
-#line 500 "parser.y"
+#line 499 "parser.y"
{ set_error(ctx, IDS_SYNTAX_ERROR); YYABORT; ;}
break;
case 86:
/* Line 1455 of yacc.c */
-#line 504 "parser.y"
+#line 503 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 87:
/* Line 1455 of yacc.c */
-#line 506 "parser.y"
+#line 505 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_COMMA, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 88:
/* Line 1455 of yacc.c */
-#line 510 "parser.y"
+#line 509 "parser.y"
{ (yyval.expr) = NULL; ;}
break;
case 89:
/* Line 1455 of yacc.c */
-#line 511 "parser.y"
+#line 510 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 90:
/* Line 1455 of yacc.c */
-#line 516 "parser.y"
+#line 515 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 91:
/* Line 1455 of yacc.c */
-#line 518 "parser.y"
+#line 517 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_COMMA, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 92:
/* Line 1455 of yacc.c */
-#line 521 "parser.y"
+#line 520 "parser.y"
{ (yyval.ival) = (yyvsp[(1) - (1)].ival); ;}
break;
case 93:
/* Line 1455 of yacc.c */
-#line 522 "parser.y"
+#line 521 "parser.y"
{ (yyval.ival) = EXPR_ASSIGNDIV; ;}
break;
case 94:
/* Line 1455 of yacc.c */
-#line 526 "parser.y"
+#line 525 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 95:
/* Line 1455 of yacc.c */
-#line 528 "parser.y"
+#line 527 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_ASSIGN, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 96:
/* Line 1455 of yacc.c */
-#line 530 "parser.y"
+#line 529 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, (yyvsp[(2) - (3)].ival), (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 97:
/* Line 1455 of yacc.c */
-#line 535 "parser.y"
+#line 534 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 98:
/* Line 1455 of yacc.c */
-#line 537 "parser.y"
+#line 536 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_ASSIGN, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 99:
/* Line 1455 of yacc.c */
-#line 539 "parser.y"
+#line 538 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, (yyvsp[(2) - (3)].ival), (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 100:
/* Line 1455 of yacc.c */
-#line 543 "parser.y"
+#line 542 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 101:
/* Line 1455 of yacc.c */
-#line 545 "parser.y"
+#line 544 "parser.y"
{ (yyval.expr) = new_conditional_expression(ctx, (yyvsp[(1) - (5)].expr), (yyvsp[(3) - (5)].expr), (yyvsp[(5) - (5)].expr)); ;}
break;
case 102:
/* Line 1455 of yacc.c */
-#line 550 "parser.y"
+#line 549 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 103:
/* Line 1455 of yacc.c */
-#line 552 "parser.y"
+#line 551 "parser.y"
{ (yyval.expr) = new_conditional_expression(ctx, (yyvsp[(1) - (5)].expr), (yyvsp[(3) - (5)].expr), (yyvsp[(5) - (5)].expr)); ;}
break;
case 104:
/* Line 1455 of yacc.c */
-#line 556 "parser.y"
+#line 555 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 105:
/* Line 1455 of yacc.c */
-#line 558 "parser.y"
+#line 557 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_OR, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 106:
/* Line 1455 of yacc.c */
-#line 563 "parser.y"
+#line 562 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 107:
/* Line 1455 of yacc.c */
-#line 565 "parser.y"
+#line 564 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_OR, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 108:
/* Line 1455 of yacc.c */
-#line 569 "parser.y"
+#line 568 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 109:
/* Line 1455 of yacc.c */
-#line 571 "parser.y"
+#line 570 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_AND, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 110:
/* Line 1455 of yacc.c */
-#line 576 "parser.y"
+#line 575 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 111:
/* Line 1455 of yacc.c */
-#line 578 "parser.y"
+#line 577 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_AND, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 112:
/* Line 1455 of yacc.c */
-#line 582 "parser.y"
+#line 581 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 113:
/* Line 1455 of yacc.c */
-#line 584 "parser.y"
+#line 583 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_BOR, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 114:
/* Line 1455 of yacc.c */
-#line 589 "parser.y"
+#line 588 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 115:
/* Line 1455 of yacc.c */
-#line 591 "parser.y"
+#line 590 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_BOR, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 116:
/* Line 1455 of yacc.c */
-#line 595 "parser.y"
+#line 594 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 117:
/* Line 1455 of yacc.c */
-#line 597 "parser.y"
+#line 596 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_BXOR, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 118:
/* Line 1455 of yacc.c */
-#line 602 "parser.y"
+#line 601 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 119:
/* Line 1455 of yacc.c */
-#line 604 "parser.y"
+#line 603 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_BXOR, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 120:
/* Line 1455 of yacc.c */
-#line 608 "parser.y"
+#line 607 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 121:
/* Line 1455 of yacc.c */
-#line 610 "parser.y"
+#line 609 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_BAND, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 122:
/* Line 1455 of yacc.c */
-#line 615 "parser.y"
+#line 614 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 123:
/* Line 1455 of yacc.c */
-#line 617 "parser.y"
+#line 616 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_BAND, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 124:
/* Line 1455 of yacc.c */
-#line 621 "parser.y"
+#line 620 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 125:
/* Line 1455 of yacc.c */
-#line 623 "parser.y"
+#line 622 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, (yyvsp[(2) - (3)].ival), (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 126:
/* Line 1455 of yacc.c */
-#line 627 "parser.y"
+#line 626 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 127:
/* Line 1455 of yacc.c */
-#line 629 "parser.y"
+#line 628 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, (yyvsp[(2) - (3)].ival), (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 128:
/* Line 1455 of yacc.c */
-#line 633 "parser.y"
+#line 632 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 129:
/* Line 1455 of yacc.c */
-#line 635 "parser.y"
+#line 634 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, (yyvsp[(2) - (3)].ival), (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 130:
/* Line 1455 of yacc.c */
-#line 637 "parser.y"
+#line 636 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_INSTANCEOF, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 131:
/* Line 1455 of yacc.c */
-#line 639 "parser.y"
+#line 638 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_IN, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 132:
/* Line 1455 of yacc.c */
-#line 643 "parser.y"
+#line 642 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 133:
/* Line 1455 of yacc.c */
-#line 645 "parser.y"
+#line 644 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, (yyvsp[(2) - (3)].ival), (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 134:
/* Line 1455 of yacc.c */
-#line 647 "parser.y"
+#line 646 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_INSTANCEOF, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 135:
/* Line 1455 of yacc.c */
-#line 651 "parser.y"
+#line 650 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 136:
/* Line 1455 of yacc.c */
-#line 653 "parser.y"
+#line 652 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, (yyvsp[(2) - (3)].ival), (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 137:
/* Line 1455 of yacc.c */
-#line 658 "parser.y"
+#line 657 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 138:
/* Line 1455 of yacc.c */
-#line 660 "parser.y"
+#line 659 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_ADD, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 139:
/* Line 1455 of yacc.c */
-#line 662 "parser.y"
+#line 661 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_SUB, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 140:
/* Line 1455 of yacc.c */
-#line 666 "parser.y"
+#line 665 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 141:
/* Line 1455 of yacc.c */
-#line 668 "parser.y"
+#line 667 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_MUL, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 142:
/* Line 1455 of yacc.c */
-#line 670 "parser.y"
+#line 669 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_DIV, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 143:
/* Line 1455 of yacc.c */
-#line 672 "parser.y"
+#line 671 "parser.y"
{ (yyval.expr) = new_binary_expression(ctx, EXPR_MOD, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
break;
case 144:
/* Line 1455 of yacc.c */
-#line 676 "parser.y"
+#line 675 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 145:
/* Line 1455 of yacc.c */
-#line 678 "parser.y"
+#line 677 "parser.y"
{ (yyval.expr) = new_unary_expression(ctx, EXPR_DELETE, (yyvsp[(2) - (2)].expr)); ;}
break;
case 146:
/* Line 1455 of yacc.c */
-#line 679 "parser.y"
+#line 678 "parser.y"
{ (yyval.expr) = new_unary_expression(ctx, EXPR_VOID, (yyvsp[(2) - (2)].expr)); ;}
break;
case 147:
/* Line 1455 of yacc.c */
-#line 681 "parser.y"
+#line 680 "parser.y"
{ (yyval.expr) = new_unary_expression(ctx, EXPR_TYPEOF, (yyvsp[(2) - (2)].expr)); ;}
break;
case 148:
/* Line 1455 of yacc.c */
-#line 682 "parser.y"
+#line 681 "parser.y"
{ (yyval.expr) = new_unary_expression(ctx, EXPR_PREINC, (yyvsp[(2) - (2)].expr)); ;}
break;
case 149:
/* Line 1455 of yacc.c */
-#line 683 "parser.y"
+#line 682 "parser.y"
{ (yyval.expr) = new_unary_expression(ctx, EXPR_PREDEC, (yyvsp[(2) - (2)].expr)); ;}
break;
case 150:
/* Line 1455 of yacc.c */
-#line 684 "parser.y"
+#line 683 "parser.y"
{ (yyval.expr) = new_unary_expression(ctx, EXPR_PLUS, (yyvsp[(2) - (2)].expr)); ;}
break;
case 151:
/* Line 1455 of yacc.c */
-#line 685 "parser.y"
+#line 684 "parser.y"
{ (yyval.expr) = new_unary_expression(ctx, EXPR_MINUS, (yyvsp[(2) - (2)].expr)); ;}
break;
case 152:
/* Line 1455 of yacc.c */
-#line 686 "parser.y"
+#line 685 "parser.y"
{ (yyval.expr) = new_unary_expression(ctx, EXPR_BITNEG, (yyvsp[(2) - (2)].expr)); ;}
break;
case 153:
/* Line 1455 of yacc.c */
-#line 687 "parser.y"
+#line 686 "parser.y"
{ (yyval.expr) = new_unary_expression(ctx, EXPR_LOGNEG, (yyvsp[(2) - (2)].expr)); ;}
break;
case 154:
/* Line 1455 of yacc.c */
-#line 692 "parser.y"
+#line 691 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 155:
/* Line 1455 of yacc.c */
-#line 694 "parser.y"
+#line 693 "parser.y"
{ (yyval.expr) = new_unary_expression(ctx, EXPR_POSTINC, (yyvsp[(1) - (2)].expr)); ;}
break;
case 156:
/* Line 1455 of yacc.c */
-#line 696 "parser.y"
+#line 695 "parser.y"
{ (yyval.expr) = new_unary_expression(ctx, EXPR_POSTDEC, (yyvsp[(1) - (2)].expr)); ;}
break;
case 157:
/* Line 1455 of yacc.c */
-#line 701 "parser.y"
+#line 700 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 158:
/* Line 1455 of yacc.c */
-#line 702 "parser.y"
+#line 701 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 159:
/* Line 1455 of yacc.c */
-#line 706 "parser.y"
+#line 705 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 160:
/* Line 1455 of yacc.c */
-#line 707 "parser.y"
+#line 706 "parser.y"
{ (yyval.expr) = new_new_expression(ctx, (yyvsp[(2) - (2)].expr), NULL); ;}
break;
case 161:
/* Line 1455 of yacc.c */
-#line 711 "parser.y"
+#line 710 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 162:
/* Line 1455 of yacc.c */
-#line 712 "parser.y"
+#line 711 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 163:
/* Line 1455 of yacc.c */
-#line 714 "parser.y"
+#line 713 "parser.y"
{ (yyval.expr) = new_array_expression(ctx, (yyvsp[(1) - (4)].expr), (yyvsp[(3) - (4)].expr)); ;}
break;
case 164:
/* Line 1455 of yacc.c */
-#line 716 "parser.y"
+#line 715 "parser.y"
{ (yyval.expr) = new_member_expression(ctx, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].identifier)); ;}
break;
case 165:
/* Line 1455 of yacc.c */
-#line 718 "parser.y"
+#line 717 "parser.y"
{ (yyval.expr) = new_new_expression(ctx, (yyvsp[(2) - (3)].expr), (yyvsp[(3) - (3)].argument_list)); ;}
break;
case 166:
/* Line 1455 of yacc.c */
-#line 723 "parser.y"
+#line 722 "parser.y"
{ (yyval.expr) = new_call_expression(ctx, (yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].argument_list)); ;}
break;
case 167:
/* Line 1455 of yacc.c */
-#line 725 "parser.y"
+#line 724 "parser.y"
{ (yyval.expr) = new_call_expression(ctx, (yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].argument_list)); ;}
break;
case 168:
/* Line 1455 of yacc.c */
-#line 727 "parser.y"
+#line 726 "parser.y"
{ (yyval.expr) = new_array_expression(ctx, (yyvsp[(1) - (4)].expr), (yyvsp[(3) - (4)].expr)); ;}
break;
case 169:
/* Line 1455 of yacc.c */
-#line 729 "parser.y"
+#line 728 "parser.y"
{ (yyval.expr) = new_member_expression(ctx, (yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].identifier)); ;}
break;
case 170:
/* Line 1455 of yacc.c */
-#line 733 "parser.y"
+#line 732 "parser.y"
{ (yyval.argument_list) = NULL; ;}
break;
case 171:
/* Line 1455 of yacc.c */
-#line 734 "parser.y"
+#line 733 "parser.y"
{ (yyval.argument_list) = (yyvsp[(2) - (3)].argument_list); ;}
break;
case 172:
/* Line 1455 of yacc.c */
-#line 738 "parser.y"
+#line 737 "parser.y"
{ (yyval.argument_list) = new_argument_list(ctx, (yyvsp[(1) - (1)].expr)); ;}
break;
case 173:
/* Line 1455 of yacc.c */
-#line 740 "parser.y"
+#line 739 "parser.y"
{ (yyval.argument_list) = argument_list_add(ctx, (yyvsp[(1) - (3)].argument_list), (yyvsp[(3) - (3)].expr)); ;}
break;
case 174:
/* Line 1455 of yacc.c */
-#line 744 "parser.y"
+#line 743 "parser.y"
{ (yyval.expr) = new_this_expression(ctx); ;}
break;
case 175:
/* Line 1455 of yacc.c */
-#line 745 "parser.y"
+#line 744 "parser.y"
{ (yyval.expr) = new_identifier_expression(ctx, (yyvsp[(1) - (1)].identifier)); ;}
break;
case 176:
/* Line 1455 of yacc.c */
-#line 746 "parser.y"
+#line 745 "parser.y"
{ (yyval.expr) = new_literal_expression(ctx, (yyvsp[(1) - (1)].literal)); ;}
break;
case 177:
/* Line 1455 of yacc.c */
-#line 747 "parser.y"
+#line 746 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 178:
/* Line 1455 of yacc.c */
-#line 748 "parser.y"
+#line 747 "parser.y"
{ (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
break;
case 179:
/* Line 1455 of yacc.c */
-#line 749 "parser.y"
+#line 748 "parser.y"
{ (yyval.expr) = (yyvsp[(2) - (3)].expr); ;}
break;
case 180:
/* Line 1455 of yacc.c */
-#line 753 "parser.y"
+#line 752 "parser.y"
{ (yyval.expr) = new_array_literal_expression(ctx, NULL, 0); ;}
break;
case 181:
/* Line 1455 of yacc.c */
-#line 754 "parser.y"
+#line 753 "parser.y"
{ (yyval.expr) = new_array_literal_expression(ctx, NULL, (yyvsp[(2) - (3)].ival)+1); ;}
break;
case 182:
/* Line 1455 of yacc.c */
-#line 755 "parser.y"
+#line 754 "parser.y"
{ (yyval.expr) = new_array_literal_expression(ctx, (yyvsp[(2) - (3)].element_list), 0); ;}
break;
case 183:
/* Line 1455 of yacc.c */
-#line 757 "parser.y"
+#line 756 "parser.y"
{ (yyval.expr) = new_array_literal_expression(ctx, (yyvsp[(2) - (5)].element_list), (yyvsp[(4) - (5)].ival)+1); ;}
break;
case 184:
/* Line 1455 of yacc.c */
-#line 762 "parser.y"
+#line 761 "parser.y"
{ (yyval.element_list) = new_element_list(ctx, (yyvsp[(1) - (2)].ival), (yyvsp[(2) - (2)].expr)); ;}
break;
case 185:
/* Line 1455 of yacc.c */
-#line 764 "parser.y"
+#line 763 "parser.y"
{ (yyval.element_list) = element_list_add(ctx, (yyvsp[(1) - (4)].element_list), (yyvsp[(3) - (4)].ival), (yyvsp[(4) - (4)].expr)); ;}
break;
case 186:
/* Line 1455 of yacc.c */
-#line 768 "parser.y"
+#line 767 "parser.y"
{ (yyval.ival) = 1; ;}
break;
case 187:
/* Line 1455 of yacc.c */
-#line 769 "parser.y"
+#line 768 "parser.y"
{ (yyval.ival) = (yyvsp[(1) - (2)].ival) + 1; ;}
break;
case 188:
/* Line 1455 of yacc.c */
-#line 773 "parser.y"
+#line 772 "parser.y"
{ (yyval.ival) = 0; ;}
break;
case 189:
/* Line 1455 of yacc.c */
-#line 774 "parser.y"
+#line 773 "parser.y"
{ (yyval.ival) = (yyvsp[(1) - (1)].ival); ;}
break;
case 190:
/* Line 1455 of yacc.c */
-#line 778 "parser.y"
+#line 777 "parser.y"
{ (yyval.expr) = new_prop_and_value_expression(ctx, NULL); ;}
break;
case 191:
/* Line 1455 of yacc.c */
-#line 780 "parser.y"
+#line 779 "parser.y"
{ (yyval.expr) = new_prop_and_value_expression(ctx, (yyvsp[(2) - (3)].property_list)); ;}
break;
case 192:
/* Line 1455 of yacc.c */
-#line 785 "parser.y"
+#line 784 "parser.y"
{ (yyval.property_list) = new_property_list(ctx, (yyvsp[(1) - (3)].literal), (yyvsp[(3) - (3)].expr)); ;}
break;
case 193:
/* Line 1455 of yacc.c */
-#line 787 "parser.y"
+#line 786 "parser.y"
{ (yyval.property_list) = property_list_add(ctx, (yyvsp[(1) - (5)].property_list), (yyvsp[(3) - (5)].literal), (yyvsp[(5) - (5)].expr)); ;}
break;
case 194:
/* Line 1455 of yacc.c */
-#line 791 "parser.y"
+#line 790 "parser.y"
{ (yyval.literal) = new_string_literal(ctx, (yyvsp[(1) - (1)].identifier)); ;}
break;
case 195:
/* Line 1455 of yacc.c */
-#line 792 "parser.y"
+#line 791 "parser.y"
{ (yyval.literal) = new_string_literal(ctx, (yyvsp[(1) - (1)].wstr)); ;}
break;
case 196:
/* Line 1455 of yacc.c */
-#line 793 "parser.y"
+#line 792 "parser.y"
{ (yyval.literal) = (yyvsp[(1) - (1)].literal); ;}
break;
case 197:
/* Line 1455 of yacc.c */
-#line 797 "parser.y"
+#line 796 "parser.y"
{ (yyval.identifier) = NULL; ;}
break;
case 198:
/* Line 1455 of yacc.c */
-#line 798 "parser.y"
+#line 797 "parser.y"
{ (yyval.identifier) = (yyvsp[(1) - (1)].identifier); ;}
break;
case 199:
/* Line 1455 of yacc.c */
-#line 802 "parser.y"
+#line 801 "parser.y"
{ (yyval.literal) = new_null_literal(ctx); ;}
break;
case 200:
/* Line 1455 of yacc.c */
-#line 803 "parser.y"
- { (yyval.literal) = new_undefined_literal(ctx); ;}
+#line 802 "parser.y"
+ { (yyval.literal) = (yyvsp[(1) - (1)].literal); ;}
break;
case 201:
/* Line 1455 of yacc.c */
-#line 804 "parser.y"
+#line 803 "parser.y"
{ (yyval.literal) = (yyvsp[(1) - (1)].literal); ;}
break;
case 202:
/* Line 1455 of yacc.c */
-#line 805 "parser.y"
- { (yyval.literal) = (yyvsp[(1) - (1)].literal); ;}
+#line 804 "parser.y"
+ { (yyval.literal) = new_string_literal(ctx, (yyvsp[(1) - (1)].wstr)); ;}
break;
case 203:
/* Line 1455 of yacc.c */
-#line 806 "parser.y"
- { (yyval.literal) = new_string_literal(ctx, (yyvsp[(1) - (1)].wstr)); ;}
+#line 805 "parser.y"
+ { (yyval.literal) = parse_regexp(ctx);
+ if(!(yyval.literal)) YYABORT; ;}
break;
case 204:
case 205:
/* Line 1455 of yacc.c */
-#line 809 "parser.y"
- { (yyval.literal) = parse_regexp(ctx);
- if(!(yyval.literal)) YYABORT; ;}
- break;
-
- case 206:
-
-/* Line 1455 of yacc.c */
-#line 814 "parser.y"
+#line 812 "parser.y"
{ (yyval.literal) = new_boolean_literal(ctx, VARIANT_TRUE); ;}
break;
- case 207:
+ case 206:
/* Line 1455 of yacc.c */
-#line 815 "parser.y"
+#line 813 "parser.y"
{ (yyval.literal) = new_boolean_literal(ctx, VARIANT_FALSE); ;}
break;
- case 209:
+ case 208:
/* Line 1455 of yacc.c */
-#line 819 "parser.y"
+#line 817 "parser.y"
{ if(!allow_auto_semicolon(ctx)) {YYABORT;} ;}
break;
- case 211:
+ case 210:
/* Line 1455 of yacc.c */
-#line 823 "parser.y"
+#line 821 "parser.y"
{ set_error(ctx, IDS_LBRACKET); YYABORT; ;}
break;
- case 213:
+ case 212:
/* Line 1455 of yacc.c */
-#line 827 "parser.y"
+#line 825 "parser.y"
{ set_error(ctx, IDS_RBRACKET); YYABORT; ;}
break;
- case 215:
+ case 214:
/* Line 1455 of yacc.c */
-#line 831 "parser.y"
+#line 829 "parser.y"
{ set_error(ctx, IDS_SEMICOLON); YYABORT; ;}
break;
/* Line 1455 of yacc.c */
-#line 3509 "parser.tab.c"
+#line 3497 "parser.tab.c"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
/* Line 1675 of yacc.c */
-#line 833 "parser.y"
+#line 831 "parser.y"
static BOOL allow_auto_semicolon(parser_ctx_t *ctx)
{
literal_t *ret = parser_alloc(ctx, sizeof(literal_t));
- ret->vt = VT_BSTR;
+ ret->type = LT_STRING;
ret->u.wstr = str;
return ret;
{
literal_t *ret = parser_alloc(ctx, sizeof(literal_t));
- ret->vt = VT_NULL;
-
- return ret;
-}
-
-static literal_t *new_undefined_literal(parser_ctx_t *ctx)
-{
- literal_t *ret = parser_alloc(ctx, sizeof(literal_t));
-
- ret->vt = VT_EMPTY;
+ ret->type = LT_NULL;
return ret;
}
{
literal_t *ret = parser_alloc(ctx, sizeof(literal_t));
- ret->vt = VT_BOOL;
+ ret->type = LT_BOOL;
ret->u.bval = bval;
return ret;
void parser_release(parser_ctx_t *ctx)
{
- obj_literal_t *iter;
-
if(--ctx->ref)
return;
- for(iter = ctx->obj_literals; iter; iter = iter->next)
- jsdisp_release(iter->obj);
-
+ script_release(ctx->script);
+ heap_free(ctx->begin);
jsheap_free(&ctx->heap);
heap_free(ctx);
}
parser_ctx->hres = JSCRIPT_ERROR|IDS_SYNTAX_ERROR;
parser_ctx->is_html = delimiter && !strcmpiW(delimiter, html_tagW);
- parser_ctx->begin = parser_ctx->ptr = code;
- parser_ctx->end = code + strlenW(code);
+ parser_ctx->begin = heap_strdupW(code);
+ if(!parser_ctx->begin) {
+ heap_free(parser_ctx);
+ return E_OUTOFMEMORY;
+ }
+
+ parser_ctx->ptr = parser_ctx->begin;
+ parser_ctx->end = parser_ctx->begin + strlenW(parser_ctx->begin);
script_addref(ctx);
parser_ctx->script = ctx;