diff options
Diffstat (limited to 'src/prebuilt/ast-parser-gen.c')
-rw-r--r-- | src/prebuilt/ast-parser-gen.c | 1242 |
1 files changed, 629 insertions, 613 deletions
diff --git a/src/prebuilt/ast-parser-gen.c b/src/prebuilt/ast-parser-gen.c index c49768c5..797ea43f 100644 --- a/src/prebuilt/ast-parser-gen.c +++ b/src/prebuilt/ast-parser-gen.c @@ -352,9 +352,10 @@ extern int wasm_ast_parser_debug; WASM_TOKEN_TYPE_ASSERT_RETURN = 322, WASM_TOKEN_TYPE_ASSERT_RETURN_NAN = 323, WASM_TOKEN_TYPE_ASSERT_TRAP = 324, - WASM_TOKEN_TYPE_INPUT = 325, - WASM_TOKEN_TYPE_OUTPUT = 326, - WASM_TOKEN_TYPE_LOW = 327 + WASM_TOKEN_TYPE_ASSERT_EXHAUSTION = 325, + WASM_TOKEN_TYPE_INPUT = 326, + WASM_TOKEN_TYPE_OUTPUT = 327, + WASM_TOKEN_TYPE_LOW = 328 }; #endif @@ -387,7 +388,7 @@ int wasm_ast_parser_parse (WasmAstLexer* lexer, WasmAstParser* parser); /* Copy the second part of user declarations. */ -#line 391 "src/prebuilt/ast-parser-gen.c" /* yacc.c:358 */ +#line 392 "src/prebuilt/ast-parser-gen.c" /* yacc.c:358 */ #ifdef short # undef short @@ -631,21 +632,21 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 10 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 790 +#define YYLAST 794 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 73 +#define YYNTOKENS 74 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 63 /* YYNRULES -- Number of rules. */ -#define YYNRULES 170 +#define YYNRULES 171 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 398 +#define YYNSTATES 402 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned by yylex, with out-of-bounds checking. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 327 +#define YYMAXUTOK 328 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -686,7 +687,7 @@ static const yytype_uint8 yytranslate[] = 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72 + 65, 66, 67, 68, 69, 70, 71, 72, 73 }; #if WASM_AST_PARSER_DEBUG @@ -709,8 +710,8 @@ static const yytype_uint16 yyrline[] = 1102, 1105, 1116, 1120, 1127, 1131, 1134, 1142, 1150, 1167, 1183, 1194, 1201, 1208, 1214, 1254, 1264, 1286, 1296, 1322, 1327, 1335, 1343, 1353, 1359, 1365, 1371, 1377, 1383, 1388, - 1397, 1402, 1403, 1409, 1418, 1419, 1427, 1439, 1440, 1447, - 1512 + 1394, 1403, 1408, 1409, 1415, 1424, 1425, 1433, 1445, 1446, + 1453, 1519 }; #endif @@ -730,16 +731,16 @@ static const char *const yytname[] = "TABLE", "ELEM", "MEMORY", "DATA", "OFFSET", "IMPORT", "EXPORT", "REGISTER", "INVOKE", "GET", "ASSERT_MALFORMED", "ASSERT_INVALID", "ASSERT_UNLINKABLE", "ASSERT_RETURN", "ASSERT_RETURN_NAN", "ASSERT_TRAP", - "INPUT", "OUTPUT", "LOW", "$accept", "non_empty_text_list", "text_list", - "quoted_text", "value_type_list", "elem_type", "global_type", - "func_type", "func_sig", "table_sig", "memory_sig", "limits", "type_use", - "nat", "literal", "var", "var_list", "bind_var_opt", "bind_var", - "labeling_opt", "offset_opt", "align_opt", "instr", "plain_instr", - "block_instr", "block", "expr", "expr1", "if_", "instr_list", - "expr_list", "const_expr", "func_fields", "func_body", "func_info", - "func", "offset", "elem", "table", "data", "memory", "global", - "import_kind", "import", "inline_import", "export_kind", "export", - "inline_export_opt", "inline_export", "type_def", "start", + "ASSERT_EXHAUSTION", "INPUT", "OUTPUT", "LOW", "$accept", + "non_empty_text_list", "text_list", "quoted_text", "value_type_list", + "elem_type", "global_type", "func_type", "func_sig", "table_sig", + "memory_sig", "limits", "type_use", "nat", "literal", "var", "var_list", + "bind_var_opt", "bind_var", "labeling_opt", "offset_opt", "align_opt", + "instr", "plain_instr", "block_instr", "block", "expr", "expr1", "if_", + "instr_list", "expr_list", "const_expr", "func_fields", "func_body", + "func_info", "func", "offset", "elem", "table", "data", "memory", + "global", "import_kind", "import", "inline_import", "export_kind", + "export", "inline_export_opt", "inline_export", "type_def", "start", "module_fields", "raw_module", "module", "script_var_opt", "action", "assertion", "cmd", "cmd_list", "const", "const_list", "script", "script_start", YY_NULLPTR @@ -758,14 +759,14 @@ static const yytype_uint16 yytoknum[] = 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327 + 325, 326, 327, 328 }; # endif -#define YYPACT_NINF -276 +#define YYPACT_NINF -271 #define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-276))) + (!!((Yystate) == (-271))) #define YYTABLE_NINF -30 @@ -776,46 +777,47 @@ static const yytype_uint16 yytoknum[] = STATE-NUM. */ static const yytype_int16 yypact[] = { - -276, 33, -276, 76, 58, -276, -276, -276, -276, -276, - -276, 72, 154, 97, 97, 176, 176, 176, 185, 185, - 187, -276, 208, -276, -276, 97, -276, 154, 154, 140, - 154, 154, 154, 143, -276, 191, 12, 154, 154, -276, - 139, 227, 218, -276, 220, 228, 242, 243, 231, -276, - 245, 247, -276, -276, 98, -276, -276, -276, -276, -276, - -276, -276, -276, -276, -276, -276, -276, 237, -276, -276, - -276, -276, 215, -276, -276, -276, -276, 72, 212, 43, - 72, 72, 99, 72, 99, 154, 154, -276, 109, 401, - -276, -276, -276, 249, 209, 252, 255, 48, 256, 322, - 267, -276, -276, 268, 267, 208, 154, 270, -276, -276, - -276, 271, 281, -276, -276, 72, 72, 72, 212, 212, - -276, 212, 212, -276, 212, 212, 212, 212, 212, 239, - 239, 109, -276, -276, -276, -276, -276, -276, -276, -276, - 434, 467, -276, -276, -276, -276, -276, -276, 272, 274, - 500, -276, 276, -276, 277, 20, -276, 467, 61, 61, - 183, 275, 83, -276, 72, 72, 72, 467, 279, 280, - -276, 125, 104, 275, 275, 282, 208, 278, 283, 285, - 113, 293, -276, 212, 72, -276, 72, 154, 154, -276, - -276, -276, -276, -276, -276, 212, -276, -276, -276, -276, - -276, -276, -276, -276, 253, 253, -276, 605, 295, 745, - -276, -276, 179, 296, 302, 566, 434, 312, 195, 313, - -276, 273, -276, 323, 316, 329, 467, 330, 327, 275, - -276, 344, 353, -276, -276, -276, 354, 279, -276, -276, - 167, -276, -276, 208, 364, -276, 365, 315, 366, -276, - 114, 369, 212, 212, 212, 212, -276, 370, 95, 367, - 103, 127, 374, 154, 371, 368, 360, 132, 363, 214, - -276, -276, -276, -276, -276, -276, -276, -276, 382, -276, - -276, 383, -276, -276, 389, -276, -276, -276, 348, -276, - -276, 74, -276, -276, -276, -276, 413, -276, -276, 208, - -276, 72, 72, 72, 72, -276, 415, 416, 422, 432, - -276, 434, -276, 446, 533, 533, 448, 449, -276, -276, - 72, 72, 72, 72, 170, 177, -276, -276, -276, -276, - 679, 456, -276, 465, 479, 274, 61, 275, 275, -276, - -276, -276, -276, -276, 434, 644, -276, -276, 533, -276, - -276, -276, 467, -276, 482, -276, 198, 467, 712, 279, - -276, 488, 498, 512, 514, 515, 521, -276, -276, 470, - 485, 545, 547, 467, -276, -276, -276, -276, -276, -276, - -276, 72, -276, -276, 549, 554, -276, 188, 550, 565, - -276, 467, 563, 580, 467, -276, 581, -276 + -271, 26, -271, 77, 84, -271, -271, -271, -271, -271, + -271, 82, 94, 107, 107, 124, 124, 124, 157, 157, + 159, 157, -271, 106, -271, -271, 107, -271, 94, 94, + 123, 94, 94, 94, -12, -271, 160, 18, 94, 94, + 94, -271, 39, 140, 179, -271, 186, 194, 198, 215, + 213, -271, 230, 238, 245, -271, -271, 111, -271, -271, + -271, -271, -271, -271, -271, -271, -271, -271, -271, -271, + 248, -271, -271, -271, -271, 216, -271, -271, -271, -271, + -271, 82, 70, 85, 82, 82, 117, 82, 117, 94, + 94, -271, 200, 405, -271, -271, -271, 266, 142, 267, + 270, 58, 271, 326, 272, -271, -271, 273, 272, 106, + 94, 274, -271, -271, -271, 275, 285, -271, -271, 82, + 82, 82, 70, 70, -271, 70, 70, -271, 70, 70, + 70, 70, 70, 246, 246, 200, -271, -271, -271, -271, + -271, -271, -271, -271, 438, 471, -271, -271, -271, -271, + -271, -271, 276, 279, 504, -271, 280, -271, 281, 25, + -271, 471, 87, 87, 196, 282, 118, -271, 82, 82, + 82, 471, 283, 284, -271, 220, 184, 282, 282, 286, + 106, 293, 287, 289, 53, 299, -271, 70, 82, -271, + 82, 94, 94, -271, -271, -271, -271, -271, -271, 70, + -271, -271, -271, -271, -271, -271, -271, -271, 254, 254, + -271, 609, 300, 749, -271, -271, 197, 306, 316, 570, + 438, 317, 209, 327, -271, 322, -271, 333, 330, 334, + 471, 347, 350, 282, -271, 290, 358, -271, -271, -271, + 368, 283, -271, -271, 223, -271, -271, 106, 369, -271, + 370, 227, 373, -271, 65, 374, 70, 70, 70, 70, + -271, 375, 121, 366, 151, 177, 371, 94, 376, 372, + 367, 48, 381, 125, -271, -271, -271, -271, -271, -271, + -271, -271, 384, -271, -271, 386, -271, -271, 387, -271, + -271, -271, 352, -271, -271, 105, -271, -271, -271, -271, + 417, -271, -271, 106, -271, 82, 82, 82, 82, -271, + 419, 420, 426, 436, -271, 438, -271, 450, 537, 537, + 452, 453, -271, -271, 82, 82, 82, 82, 182, 189, + -271, -271, -271, -271, 683, 460, -271, 469, 483, 279, + 87, 282, 282, -271, -271, -271, -271, -271, 438, 648, + -271, -271, 537, -271, -271, -271, 471, -271, 486, -271, + 226, 471, 716, 283, -271, 492, 502, 516, 518, 519, + 525, -271, -271, 474, 489, 549, 551, 471, -271, -271, + -271, -271, -271, -271, -271, 82, -271, -271, 553, 558, + -271, 191, 554, 569, -271, 471, 567, 584, 471, -271, + 585, -271 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -823,70 +825,71 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_uint8 yydefact[] = { - 164, 169, 170, 0, 0, 148, 162, 160, 161, 165, + 165, 170, 171, 0, 0, 148, 163, 161, 162, 166, 1, 30, 0, 149, 149, 0, 0, 0, 0, 0, - 0, 32, 135, 31, 6, 149, 150, 0, 0, 0, - 0, 0, 0, 0, 167, 0, 0, 0, 0, 2, - 0, 0, 0, 167, 0, 0, 0, 0, 0, 158, - 0, 0, 147, 3, 0, 146, 140, 141, 138, 142, - 139, 137, 144, 145, 136, 143, 163, 0, 152, 153, - 154, 155, 0, 157, 168, 156, 159, 30, 0, 0, - 30, 30, 0, 30, 0, 0, 0, 151, 0, 82, - 22, 27, 26, 0, 0, 0, 0, 0, 129, 0, - 0, 100, 28, 129, 0, 4, 0, 0, 23, 24, - 25, 0, 0, 43, 44, 33, 33, 33, 0, 0, - 28, 0, 0, 49, 0, 0, 0, 0, 0, 35, - 35, 0, 60, 61, 62, 63, 45, 42, 64, 65, - 82, 82, 39, 40, 41, 91, 94, 87, 0, 13, - 82, 134, 13, 132, 0, 0, 10, 82, 0, 0, - 0, 0, 0, 130, 33, 33, 33, 82, 84, 0, - 28, 0, 0, 0, 0, 130, 4, 5, 0, 0, - 0, 0, 166, 0, 7, 7, 7, 0, 0, 34, - 7, 7, 7, 46, 47, 0, 50, 51, 52, 53, - 54, 55, 56, 36, 37, 37, 59, 0, 0, 0, - 83, 98, 0, 0, 0, 0, 82, 0, 0, 0, - 133, 0, 86, 0, 0, 0, 82, 0, 0, 19, - 9, 0, 0, 7, 7, 7, 0, 84, 72, 71, - 0, 102, 29, 4, 0, 18, 0, 0, 0, 106, - 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, - 0, 0, 0, 0, 0, 82, 0, 0, 0, 48, - 38, 57, 58, 96, 7, 7, 119, 118, 0, 97, - 12, 0, 111, 122, 0, 120, 17, 20, 0, 103, - 73, 0, 74, 99, 85, 101, 0, 121, 107, 4, - 105, 30, 30, 30, 30, 117, 0, 0, 0, 0, - 21, 82, 8, 0, 82, 82, 0, 0, 131, 70, - 33, 33, 33, 33, 0, 0, 95, 11, 110, 28, - 0, 0, 75, 0, 0, 13, 0, 0, 0, 124, - 127, 125, 126, 89, 82, 0, 88, 92, 82, 123, - 66, 68, 82, 67, 14, 16, 0, 82, 0, 81, - 109, 0, 0, 0, 0, 0, 0, 90, 93, 0, - 0, 0, 0, 82, 80, 108, 113, 112, 116, 114, - 115, 33, 7, 104, 77, 0, 69, 0, 0, 79, - 15, 82, 0, 0, 82, 76, 0, 78 + 0, 0, 32, 135, 31, 6, 149, 150, 0, 0, + 0, 0, 0, 0, 0, 168, 0, 0, 0, 0, + 0, 2, 0, 0, 0, 168, 0, 0, 0, 0, + 0, 158, 0, 0, 0, 147, 3, 0, 146, 140, + 141, 138, 142, 139, 137, 144, 145, 136, 143, 164, + 0, 152, 153, 154, 155, 0, 157, 169, 156, 159, + 160, 30, 0, 0, 30, 30, 0, 30, 0, 0, + 0, 151, 0, 82, 22, 27, 26, 0, 0, 0, + 0, 0, 129, 0, 0, 100, 28, 129, 0, 4, + 0, 0, 23, 24, 25, 0, 0, 43, 44, 33, + 33, 33, 0, 0, 28, 0, 0, 49, 0, 0, + 0, 0, 0, 35, 35, 0, 60, 61, 62, 63, + 45, 42, 64, 65, 82, 82, 39, 40, 41, 91, + 94, 87, 0, 13, 82, 134, 13, 132, 0, 0, + 10, 82, 0, 0, 0, 0, 0, 130, 33, 33, + 33, 82, 84, 0, 28, 0, 0, 0, 0, 130, + 4, 5, 0, 0, 0, 0, 167, 0, 7, 7, + 7, 0, 0, 34, 7, 7, 7, 46, 47, 0, + 50, 51, 52, 53, 54, 55, 56, 36, 37, 37, + 59, 0, 0, 0, 83, 98, 0, 0, 0, 0, + 82, 0, 0, 0, 133, 0, 86, 0, 0, 0, + 82, 0, 0, 19, 9, 0, 0, 7, 7, 7, + 0, 84, 72, 71, 0, 102, 29, 4, 0, 18, + 0, 0, 0, 106, 0, 0, 0, 0, 0, 0, + 128, 0, 0, 0, 0, 0, 0, 0, 0, 82, + 0, 0, 0, 48, 38, 57, 58, 96, 7, 7, + 119, 118, 0, 97, 12, 0, 111, 122, 0, 120, + 17, 20, 0, 103, 73, 0, 74, 99, 85, 101, + 0, 121, 107, 4, 105, 30, 30, 30, 30, 117, + 0, 0, 0, 0, 21, 82, 8, 0, 82, 82, + 0, 0, 131, 70, 33, 33, 33, 33, 0, 0, + 95, 11, 110, 28, 0, 0, 75, 0, 0, 13, + 0, 0, 0, 124, 127, 125, 126, 89, 82, 0, + 88, 92, 82, 123, 66, 68, 82, 67, 14, 16, + 0, 82, 0, 81, 109, 0, 0, 0, 0, 0, + 0, 90, 93, 0, 0, 0, 0, 82, 80, 108, + 113, 112, 116, 114, 115, 33, 7, 104, 77, 0, + 69, 0, 0, 79, 15, 82, 0, 0, 82, 76, + 0, 78 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -276, 569, -150, -3, -174, 373, -142, 506, -139, -148, - -156, -152, -144, -112, 481, 14, -111, -39, -11, -109, - 483, 418, -276, -97, -276, -138, -81, -276, -276, -137, - 384, -136, -266, -275, -107, -276, -37, -276, -276, -276, - -276, -276, -276, -276, -12, -276, -276, 527, 80, -276, - -276, -276, 184, -276, 23, 219, -276, -276, -276, -276, - 597, -276, -276 + -271, 572, -134, -7, -178, 385, -146, 505, -143, -152, + -160, -142, -148, -138, 481, 10, -115, -43, -11, -113, + 472, 416, -271, -101, -271, -133, -85, -271, -271, -141, + 393, -137, -270, -266, -96, -271, -39, -271, -271, -271, + -271, -271, -271, -271, 71, -271, -271, 520, 73, -271, + -271, -271, 206, -271, 40, 219, -271, -271, -271, -271, + 583, -271, -271 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 177, 178, 25, 265, 231, 157, 95, 213, 227, - 244, 228, 140, 92, 111, 242, 171, 22, 189, 190, - 204, 271, 141, 142, 143, 266, 144, 169, 332, 145, - 238, 223, 146, 147, 148, 56, 102, 57, 58, 59, - 60, 61, 251, 62, 149, 181, 63, 162, 150, 64, - 65, 41, 5, 6, 27, 7, 8, 9, 1, 74, - 48, 2, 3 + -1, 181, 182, 26, 269, 235, 161, 99, 217, 231, + 248, 232, 144, 96, 115, 246, 175, 23, 193, 194, + 208, 275, 145, 146, 147, 270, 148, 173, 336, 149, + 242, 227, 150, 151, 152, 59, 106, 60, 61, 62, + 63, 64, 255, 65, 153, 185, 66, 166, 154, 67, + 68, 43, 5, 6, 28, 7, 8, 9, 1, 77, + 50, 2, 3 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -894,239 +897,240 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 23, 101, 168, 101, 210, 214, 216, 191, 192, 195, - 258, 260, 261, 219, 232, 168, 225, 226, 246, 101, - 222, 245, 245, 101, 43, 44, 248, 45, 46, 47, - 222, 236, 221, 208, 50, 51, 4, 28, 89, 346, - 347, 97, 98, 217, 103, 343, 94, 105, 42, 229, - 229, 155, 21, 267, 268, 233, 234, 235, 156, 240, - 291, 229, 229, 170, 224, 11, 23, 176, 96, 23, - 23, 156, 23, 368, 13, 14, 10, 330, 367, 187, - 188, 21, 106, 107, 312, 158, 161, 237, 90, 222, - 284, 173, 93, 296, 230, 290, 100, 292, 104, 311, - 324, 325, 99, 179, 90, 312, 26, 314, 91, 278, - 168, 11, 168, 312, 108, 109, 110, 287, 168, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 319, 241, - 90, 315, 193, 194, 91, 196, 197, 312, 198, 199, - 200, 201, 202, 52, 77, 78, 79, 53, 321, 334, - 80, 322, 81, 82, 83, 84, 237, 85, 86, 252, - 301, 243, 24, 187, 188, 253, 302, 254, 303, 255, - 304, 295, 90, 259, 354, 262, 91, 159, 163, 29, - 312, 355, 366, 175, 263, 264, 245, 312, 33, 365, - 36, 363, 390, 11, 364, 49, 362, 257, 312, 30, - 31, 32, 371, 90, 37, 13, 14, 91, 387, 269, - 331, 350, 351, 352, 353, 369, 39, 90, 356, -29, - 372, 91, 66, -29, 68, 229, 229, 183, 274, 275, - 54, 55, 69, 168, 72, 73, 385, 34, 35, 38, - 72, 87, 187, 188, 274, 275, 70, 71, 168, 75, - 359, 76, 88, 151, 393, 152, 153, 396, 94, 160, - 317, 168, 335, 336, 337, 338, 306, 307, 308, 309, - 99, 172, 386, 180, 203, 182, 211, 212, 374, 218, - 90, 220, 209, 281, 239, 247, 53, 249, 250, 270, - 23, 23, 23, 23, 113, 114, 164, 256, 165, 273, - 276, 166, 118, 119, 120, 121, 277, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 279, 280, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 282, 221, 183, - 184, 185, 186, 283, 285, 113, 114, 164, 230, 165, - 187, 188, 166, 118, 119, 120, 121, 288, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 289, 293, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 297, 298, - 300, 209, 299, 305, 310, 318, 320, 313, 312, 323, - 167, 113, 114, 115, 316, 116, 326, 327, 117, 118, - 119, 120, 121, 328, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 329, 112, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 113, 114, 115, 333, 116, 339, - 340, 117, 118, 119, 120, 121, 341, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 342, 207, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 113, 114, 115, - 344, 116, 348, 349, 117, 118, 119, 120, 121, 358, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 360, - 209, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 113, 114, 115, 361, 116, 370, 381, 117, 118, 119, - 120, 121, 375, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 376, 215, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 113, 114, 115, 377, 116, 378, 379, - 117, 118, 119, 120, 121, 380, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 382, 345, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 113, 114, 115, 383, - 116, 384, 388, 117, 118, 119, 120, 121, 389, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 392, 391, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 113, - 114, 164, 394, 165, 395, 397, 166, 118, 119, 120, - 121, 40, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 286, 154, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 206, 205, 183, 184, 185, 186, 113, 114, - 164, 294, 165, 272, 0, 166, 118, 119, 120, 121, - 174, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 67, 0, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 0, 0, 0, 184, 185, 186, 113, 114, 164, - 0, 165, 0, 0, 166, 118, 119, 120, 121, 0, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 0, - 0, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 0, 0, 113, 114, 164, 186, 165, 357, 0, 166, - 118, 119, 120, 121, 0, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 0, 0, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 113, 114, 164, 0, 165, - 373, 0, 166, 118, 119, 120, 121, 0, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 0, 0, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 113, 114, - 164, 0, 165, 0, 0, 166, 118, 119, 120, 121, - 0, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 0, 0, 131, 132, 133, 134, 135, 136, 137, 138, - 139 + 24, 105, 172, 105, 214, 218, 220, 195, 196, 199, + 262, 264, 265, 223, 236, 172, 229, 230, 250, 105, + 226, 45, 46, 105, 47, 48, 49, 233, 233, 4, + 226, 52, 53, 54, 240, 249, 249, 225, 93, 233, + 233, 101, 102, 55, 107, 347, 252, 56, 212, 109, + 13, 14, 350, 351, 29, 237, 238, 239, 221, 244, + 295, 159, 271, 272, 325, 174, 44, 326, 160, 180, + 24, 11, 100, 24, 24, 94, 24, 10, 371, 95, + 13, 14, 110, 111, 191, 192, 372, 241, 98, 226, + 228, 22, 97, 288, 22, 291, 104, 160, 108, 256, + 328, 329, 25, 183, 294, 257, 296, 258, 334, 259, + 172, 305, 172, 300, 41, 316, 27, 306, 172, 307, + 103, 308, 94, 94, 282, 315, 95, 30, 323, 234, + -29, 316, 197, 198, -29, 200, 201, 11, 202, 203, + 204, 205, 206, 57, 58, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 318, 241, 81, 82, 83, + 34, 316, 37, 84, 51, 85, 86, 87, 88, 338, + 89, 90, 162, 165, 163, 167, 11, 263, 177, 266, + 179, 319, 370, 69, 267, 268, 358, 316, 156, 369, + 71, 367, 316, 359, 368, 394, 366, 261, 72, 316, + 249, 316, 73, 233, 233, 112, 113, 114, 391, 273, + 335, 354, 355, 356, 357, 373, 75, 76, 360, 74, + 376, 31, 32, 33, 245, 94, 38, 299, 94, 95, + 375, 94, 95, 172, 78, 95, 389, 35, 36, 39, + 40, 247, 79, 191, 192, 187, 278, 279, 172, 80, + 363, 75, 91, 92, 397, 191, 192, 400, 278, 279, + 321, 172, 339, 340, 341, 342, 310, 311, 312, 313, + 155, 157, 390, 98, 164, 103, 176, 184, 378, 186, + 215, 207, 216, 222, 303, 224, 213, 94, 243, 251, + 274, 253, 254, 292, 24, 24, 24, 24, 117, 118, + 168, 56, 169, 260, 277, 170, 122, 123, 124, 125, + 280, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 281, 283, 135, 136, 137, 138, 139, 140, 141, 142, + 143, 284, 285, 187, 188, 189, 190, 286, 287, 117, + 118, 168, 225, 169, 191, 192, 170, 122, 123, 124, + 125, 289, 126, 127, 128, 129, 130, 131, 132, 133, + 134, 234, 293, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 297, 301, 302, 213, 317, 304, 309, 314, + 322, 320, 316, 324, 171, 117, 118, 119, 330, 120, + 331, 332, 121, 122, 123, 124, 125, 327, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 333, 116, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 117, 118, + 119, 337, 120, 343, 344, 121, 122, 123, 124, 125, + 345, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 346, 211, 135, 136, 137, 138, 139, 140, 141, 142, + 143, 117, 118, 119, 348, 120, 352, 353, 121, 122, + 123, 124, 125, 362, 126, 127, 128, 129, 130, 131, + 132, 133, 134, 364, 213, 135, 136, 137, 138, 139, + 140, 141, 142, 143, 117, 118, 119, 365, 120, 374, + 385, 121, 122, 123, 124, 125, 379, 126, 127, 128, + 129, 130, 131, 132, 133, 134, 380, 219, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 117, 118, 119, + 381, 120, 382, 383, 121, 122, 123, 124, 125, 384, + 126, 127, 128, 129, 130, 131, 132, 133, 134, 386, + 349, 135, 136, 137, 138, 139, 140, 141, 142, 143, + 117, 118, 119, 387, 120, 388, 392, 121, 122, 123, + 124, 125, 393, 126, 127, 128, 129, 130, 131, 132, + 133, 134, 396, 395, 135, 136, 137, 138, 139, 140, + 141, 142, 143, 117, 118, 168, 398, 169, 399, 401, + 170, 122, 123, 124, 125, 42, 126, 127, 128, 129, + 130, 131, 132, 133, 134, 158, 209, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 210, 290, 187, 188, + 189, 190, 117, 118, 168, 276, 169, 178, 70, 170, + 122, 123, 124, 125, 298, 126, 127, 128, 129, 130, + 131, 132, 133, 134, 0, 0, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 0, 0, 0, 188, 189, + 190, 117, 118, 168, 0, 169, 0, 0, 170, 122, + 123, 124, 125, 0, 126, 127, 128, 129, 130, 131, + 132, 133, 134, 0, 0, 135, 136, 137, 138, 139, + 140, 141, 142, 143, 0, 0, 117, 118, 168, 190, + 169, 361, 0, 170, 122, 123, 124, 125, 0, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 0, 0, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 117, + 118, 168, 0, 169, 377, 0, 170, 122, 123, 124, + 125, 0, 126, 127, 128, 129, 130, 131, 132, 133, + 134, 0, 0, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 117, 118, 168, 0, 169, 0, 0, 170, + 122, 123, 124, 125, 0, 126, 127, 128, 129, 130, + 131, 132, 133, 134, 0, 0, 135, 136, 137, 138, + 139, 140, 141, 142, 143 }; static const yytype_int16 yycheck[] = { - 11, 82, 99, 84, 141, 149, 150, 116, 117, 120, - 184, 185, 186, 152, 162, 112, 158, 159, 174, 100, - 157, 173, 174, 104, 27, 28, 176, 30, 31, 32, - 167, 167, 12, 140, 37, 38, 3, 14, 77, 314, - 315, 80, 81, 150, 83, 311, 3, 84, 25, 161, - 162, 3, 9, 191, 192, 164, 165, 166, 10, 170, - 234, 173, 174, 100, 3, 53, 77, 104, 79, 80, - 81, 10, 83, 348, 62, 63, 0, 3, 344, 59, - 60, 9, 85, 86, 10, 97, 98, 168, 5, 226, - 226, 103, 78, 243, 11, 233, 82, 235, 84, 4, - 274, 275, 3, 106, 5, 10, 9, 4, 9, 216, - 207, 53, 209, 10, 5, 6, 7, 229, 215, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 265, 4, - 5, 4, 118, 119, 9, 121, 122, 10, 124, 125, - 126, 127, 128, 4, 46, 47, 48, 8, 16, 299, - 52, 19, 54, 55, 56, 57, 237, 59, 60, 46, - 46, 57, 8, 59, 60, 52, 52, 54, 54, 56, - 56, 4, 5, 184, 4, 186, 9, 97, 98, 3, - 10, 4, 338, 103, 187, 188, 338, 10, 3, 337, - 3, 335, 4, 53, 336, 4, 335, 183, 10, 15, - 16, 17, 4, 5, 20, 62, 63, 9, 382, 195, - 291, 320, 321, 322, 323, 352, 8, 5, 329, 5, - 357, 9, 4, 9, 4, 337, 338, 48, 49, 50, - 3, 4, 4, 330, 3, 4, 373, 18, 19, 20, - 3, 4, 59, 60, 49, 50, 4, 4, 345, 4, - 331, 4, 37, 4, 391, 46, 4, 394, 3, 3, - 263, 358, 301, 302, 303, 304, 252, 253, 254, 255, - 3, 3, 381, 3, 35, 4, 4, 3, 359, 3, - 5, 4, 3, 10, 4, 3, 8, 4, 3, 36, - 301, 302, 303, 304, 13, 14, 15, 4, 17, 4, - 4, 20, 21, 22, 23, 24, 4, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 4, 4, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 4, 12, 48, - 49, 50, 51, 4, 4, 13, 14, 15, 11, 17, - 59, 60, 20, 21, 22, 23, 24, 3, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 4, 4, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 4, 4, - 4, 3, 57, 4, 4, 4, 16, 10, 10, 16, - 58, 13, 14, 15, 10, 17, 4, 4, 20, 21, - 22, 23, 24, 4, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 55, 3, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 13, 14, 15, 4, 17, 4, - 4, 20, 21, 22, 23, 24, 4, 26, 27, 28, + 11, 86, 103, 88, 145, 153, 154, 120, 121, 124, + 188, 189, 190, 156, 166, 116, 162, 163, 178, 104, + 161, 28, 29, 108, 31, 32, 33, 165, 166, 3, + 171, 38, 39, 40, 171, 177, 178, 12, 81, 177, + 178, 84, 85, 4, 87, 315, 180, 8, 144, 88, + 62, 63, 318, 319, 14, 168, 169, 170, 154, 174, + 238, 3, 195, 196, 16, 104, 26, 19, 10, 108, + 81, 53, 83, 84, 85, 5, 87, 0, 348, 9, + 62, 63, 89, 90, 59, 60, 352, 172, 3, 230, + 3, 9, 82, 230, 9, 233, 86, 10, 88, 46, + 278, 279, 8, 110, 237, 52, 239, 54, 3, 56, + 211, 46, 213, 247, 8, 10, 9, 52, 219, 54, + 3, 56, 5, 5, 220, 4, 9, 3, 269, 11, + 5, 10, 122, 123, 9, 125, 126, 53, 128, 129, + 130, 131, 132, 3, 4, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 4, 241, 46, 47, 48, + 3, 10, 3, 52, 4, 54, 55, 56, 57, 303, + 59, 60, 101, 102, 101, 102, 53, 188, 107, 190, + 107, 4, 342, 4, 191, 192, 4, 10, 46, 341, + 4, 339, 10, 4, 340, 4, 339, 187, 4, 10, + 342, 10, 4, 341, 342, 5, 6, 7, 386, 199, + 295, 324, 325, 326, 327, 356, 3, 4, 333, 4, + 361, 15, 16, 17, 4, 5, 20, 4, 5, 9, + 4, 5, 9, 334, 4, 9, 377, 18, 19, 20, + 21, 57, 4, 59, 60, 48, 49, 50, 349, 4, + 335, 3, 4, 37, 395, 59, 60, 398, 49, 50, + 267, 362, 305, 306, 307, 308, 256, 257, 258, 259, + 4, 4, 385, 3, 3, 3, 3, 3, 363, 4, + 4, 35, 3, 3, 57, 4, 3, 5, 4, 3, + 36, 4, 3, 3, 305, 306, 307, 308, 13, 14, + 15, 8, 17, 4, 4, 20, 21, 22, 23, 24, + 4, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 4, 4, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 4, 10, 48, 49, 50, 51, 4, 4, 13, + 14, 15, 12, 17, 59, 60, 20, 21, 22, 23, + 24, 4, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 11, 4, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 4, 4, 4, 3, 10, 4, 4, 4, + 4, 10, 10, 16, 58, 13, 14, 15, 4, 17, + 4, 4, 20, 21, 22, 23, 24, 16, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 55, 3, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 13, 14, + 15, 4, 17, 4, 4, 20, 21, 22, 23, 24, + 4, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 4, 3, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 13, 14, 15, 4, 17, 4, 4, 20, 21, + 22, 23, 24, 3, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 4, 3, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 13, 14, 15, 4, 17, 3, + 16, 20, 21, 22, 23, 24, 4, 26, 27, 28, 29, 30, 31, 32, 33, 34, 4, 3, 37, 38, 39, 40, 41, 42, 43, 44, 45, 13, 14, 15, - 4, 17, 4, 4, 20, 21, 22, 23, 24, 3, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 4, + 4, 17, 4, 4, 20, 21, 22, 23, 24, 4, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 50, 3, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 13, 14, 15, 4, 17, 3, 16, 20, 21, 22, + 13, 14, 15, 4, 17, 4, 3, 20, 21, 22, 23, 24, 4, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 4, 3, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 13, 14, 15, 4, 17, 4, 4, - 20, 21, 22, 23, 24, 4, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 50, 3, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 13, 14, 15, 4, - 17, 4, 3, 20, 21, 22, 23, 24, 4, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 3, 19, + 33, 34, 3, 19, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 13, 14, 15, 19, 17, 4, 4, + 20, 21, 22, 23, 24, 23, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 100, 134, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 135, 232, 48, 49, + 50, 51, 13, 14, 15, 209, 17, 107, 45, 20, + 21, 22, 23, 24, 241, 26, 27, 28, 29, 30, + 31, 32, 33, 34, -1, -1, 37, 38, 39, 40, + 41, 42, 43, 44, 45, -1, -1, -1, 49, 50, + 51, 13, 14, 15, -1, 17, -1, -1, 20, 21, + 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, 37, 38, 39, 40, 41, + 42, 43, 44, 45, -1, -1, 13, 14, 15, 51, + 17, 18, -1, 20, 21, 22, 23, 24, -1, 26, + 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, 37, 38, 39, 40, 41, 42, 43, 44, 45, 13, - 14, 15, 19, 17, 4, 4, 20, 21, 22, 23, - 24, 22, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 228, 96, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 131, 130, 48, 49, 50, 51, 13, 14, - 15, 237, 17, 205, -1, 20, 21, 22, 23, 24, - 103, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 43, -1, 37, 38, 39, 40, 41, 42, 43, 44, - 45, -1, -1, -1, 49, 50, 51, 13, 14, 15, - -1, 17, -1, -1, 20, 21, 22, 23, 24, -1, - 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, - -1, 37, 38, 39, 40, 41, 42, 43, 44, 45, - -1, -1, 13, 14, 15, 51, 17, 18, -1, 20, + 14, 15, -1, 17, 18, -1, 20, 21, 22, 23, + 24, -1, 26, 27, 28, 29, 30, 31, 32, 33, + 34, -1, -1, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 13, 14, 15, -1, 17, -1, -1, 20, 21, 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 13, 14, 15, -1, 17, - 18, -1, 20, 21, 22, 23, 24, -1, 26, 27, - 28, 29, 30, 31, 32, 33, 34, -1, -1, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 13, 14, - 15, -1, 17, -1, -1, 20, 21, 22, 23, 24, - -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, - -1, -1, 37, 38, 39, 40, 41, 42, 43, 44, - 45 + 41, 42, 43, 44, 45 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint8 yystos[] = { - 0, 131, 134, 135, 3, 125, 126, 128, 129, 130, + 0, 132, 135, 136, 3, 126, 127, 129, 130, 131, 0, 53, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 9, 90, 91, 8, 76, 9, 127, 127, 3, - 125, 125, 125, 3, 128, 128, 3, 125, 128, 8, - 74, 124, 127, 76, 76, 76, 76, 76, 133, 4, - 76, 76, 4, 8, 3, 4, 108, 110, 111, 112, - 113, 114, 116, 119, 122, 123, 4, 133, 4, 4, - 4, 4, 3, 4, 132, 4, 4, 46, 47, 48, - 52, 54, 55, 56, 57, 59, 60, 4, 37, 90, - 5, 9, 86, 88, 3, 80, 91, 90, 90, 3, - 88, 99, 109, 90, 88, 109, 76, 76, 5, 6, - 7, 87, 3, 13, 14, 15, 17, 20, 21, 22, - 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 85, 95, 96, 97, 99, 102, 105, 106, 107, 117, - 121, 4, 46, 4, 80, 3, 10, 79, 117, 121, - 3, 117, 120, 121, 15, 17, 20, 58, 96, 100, - 109, 89, 3, 117, 120, 121, 109, 74, 75, 76, - 3, 118, 4, 48, 49, 50, 51, 59, 60, 91, - 92, 92, 92, 88, 88, 89, 88, 88, 88, 88, - 88, 88, 88, 35, 93, 93, 87, 3, 107, 3, - 102, 4, 3, 81, 85, 3, 85, 107, 3, 81, - 4, 12, 102, 104, 3, 79, 79, 82, 84, 86, - 11, 78, 82, 92, 92, 92, 104, 99, 103, 4, - 89, 4, 88, 57, 83, 84, 83, 3, 75, 4, - 3, 115, 46, 52, 54, 56, 4, 88, 77, 91, - 77, 77, 91, 76, 76, 77, 98, 98, 98, 88, - 36, 94, 94, 4, 49, 50, 4, 4, 107, 4, - 4, 10, 4, 4, 104, 4, 78, 86, 3, 4, - 98, 77, 98, 4, 103, 4, 75, 4, 4, 57, - 4, 46, 52, 54, 56, 4, 88, 88, 88, 88, - 4, 4, 10, 10, 4, 4, 10, 76, 4, 102, - 16, 16, 19, 16, 77, 77, 4, 4, 4, 55, - 3, 99, 101, 4, 75, 90, 90, 90, 90, 4, - 4, 4, 4, 105, 4, 3, 106, 106, 4, 4, - 92, 92, 92, 92, 4, 4, 89, 18, 3, 99, - 4, 4, 81, 85, 79, 82, 83, 105, 106, 102, - 3, 4, 102, 18, 99, 4, 4, 4, 4, 4, - 4, 16, 50, 4, 4, 102, 92, 77, 3, 4, - 4, 19, 3, 102, 19, 4, 102, 4 + 69, 70, 9, 91, 92, 8, 77, 9, 128, 128, + 3, 126, 126, 126, 3, 129, 129, 3, 126, 129, + 129, 8, 75, 125, 128, 77, 77, 77, 77, 77, + 134, 4, 77, 77, 77, 4, 8, 3, 4, 109, + 111, 112, 113, 114, 115, 117, 120, 123, 124, 4, + 134, 4, 4, 4, 4, 3, 4, 133, 4, 4, + 4, 46, 47, 48, 52, 54, 55, 56, 57, 59, + 60, 4, 37, 91, 5, 9, 87, 89, 3, 81, + 92, 91, 91, 3, 89, 100, 110, 91, 89, 110, + 77, 77, 5, 6, 7, 88, 3, 13, 14, 15, + 17, 20, 21, 22, 23, 24, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 86, 96, 97, 98, 100, 103, + 106, 107, 108, 118, 122, 4, 46, 4, 81, 3, + 10, 80, 118, 122, 3, 118, 121, 122, 15, 17, + 20, 58, 97, 101, 110, 90, 3, 118, 121, 122, + 110, 75, 76, 77, 3, 119, 4, 48, 49, 50, + 51, 59, 60, 92, 93, 93, 93, 89, 89, 90, + 89, 89, 89, 89, 89, 89, 89, 35, 94, 94, + 88, 3, 108, 3, 103, 4, 3, 82, 86, 3, + 86, 108, 3, 82, 4, 12, 103, 105, 3, 80, + 80, 83, 85, 87, 11, 79, 83, 93, 93, 93, + 105, 100, 104, 4, 90, 4, 89, 57, 84, 85, + 84, 3, 76, 4, 3, 116, 46, 52, 54, 56, + 4, 89, 78, 92, 78, 78, 92, 77, 77, 78, + 99, 99, 99, 89, 36, 95, 95, 4, 49, 50, + 4, 4, 108, 4, 4, 10, 4, 4, 105, 4, + 79, 87, 3, 4, 99, 78, 99, 4, 104, 4, + 76, 4, 4, 57, 4, 46, 52, 54, 56, 4, + 89, 89, 89, 89, 4, 4, 10, 10, 4, 4, + 10, 77, 4, 103, 16, 16, 19, 16, 78, 78, + 4, 4, 4, 55, 3, 100, 102, 4, 76, 91, + 91, 91, 91, 4, 4, 4, 4, 106, 4, 3, + 107, 107, 4, 4, 93, 93, 93, 93, 4, 4, + 90, 18, 3, 100, 4, 4, 82, 86, 80, 83, + 84, 106, 107, 103, 3, 4, 103, 18, 100, 4, + 4, 4, 4, 4, 4, 16, 50, 4, 4, 103, + 93, 78, 3, 4, 4, 19, 3, 103, 19, 4, + 103, 4 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint8 yyr1[] = { - 0, 73, 74, 74, 75, 75, 76, 77, 77, 78, - 79, 79, 80, 81, 81, 81, 81, 82, 83, 84, - 84, 85, 86, 87, 87, 87, 88, 88, 89, 89, - 90, 90, 91, 92, 92, 93, 93, 94, 94, 95, - 95, 95, 96, 96, 96, 96, 96, 96, 96, 96, - 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, - 96, 96, 96, 96, 96, 96, 97, 97, 97, 97, - 98, 99, 100, 100, 100, 100, 101, 101, 101, 101, - 101, 101, 102, 102, 103, 103, 104, 105, 105, 105, - 105, 106, 106, 106, 107, 108, 108, 108, 108, 109, - 109, 110, 110, 111, 111, 112, 112, 113, 113, 113, - 114, 114, 115, 115, 115, 115, 115, 116, 116, 116, - 116, 116, 116, 117, 118, 118, 118, 118, 119, 120, - 120, 121, 122, 122, 123, 124, 124, 124, 124, 124, - 124, 124, 124, 124, 124, 124, 125, 125, 126, 127, - 127, 128, 128, 129, 129, 129, 129, 129, 129, 129, - 130, 130, 130, 130, 131, 131, 132, 133, 133, 134, - 135 + 0, 74, 75, 75, 76, 76, 77, 78, 78, 79, + 80, 80, 81, 82, 82, 82, 82, 83, 84, 85, + 85, 86, 87, 88, 88, 88, 89, 89, 90, 90, + 91, 91, 92, 93, 93, 94, 94, 95, 95, 96, + 96, 96, 97, 97, 97, 97, 97, 97, 97, 97, + 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, + 97, 97, 97, 97, 97, 97, 98, 98, 98, 98, + 99, 100, 101, 101, 101, 101, 102, 102, 102, 102, + 102, 102, 103, 103, 104, 104, 105, 106, 106, 106, + 106, 107, 107, 107, 108, 109, 109, 109, 109, 110, + 110, 111, 111, 112, 112, 113, 113, 114, 114, 114, + 115, 115, 116, 116, 116, 116, 116, 117, 117, 117, + 117, 117, 117, 118, 119, 119, 119, 119, 120, 121, + 121, 122, 123, 123, 124, 125, 125, 125, 125, 125, + 125, 125, 125, 125, 125, 125, 126, 126, 127, 128, + 128, 129, 129, 130, 130, 130, 130, 130, 130, 130, + 130, 131, 131, 131, 131, 132, 132, 133, 134, 134, + 135, 136 }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ @@ -1148,8 +1152,8 @@ static const yytype_uint8 yyr2[] = 1, 4, 4, 5, 4, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 5, 1, 0, 1, 6, 5, 5, 5, 5, 5, 5, 4, 5, - 1, 1, 1, 5, 0, 2, 4, 0, 2, 1, - 1 + 5, 1, 1, 1, 5, 0, 2, 4, 0, 2, + 1, 1 }; @@ -1648,331 +1652,331 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio case 5: /* NAT */ #line 259 "src/ast-parser.y" /* yacc.c:1257 */ {} -#line 1652 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1656 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; case 6: /* INT */ #line 259 "src/ast-parser.y" /* yacc.c:1257 */ {} -#line 1658 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1662 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; case 7: /* FLOAT */ #line 259 "src/ast-parser.y" /* yacc.c:1257 */ {} -#line 1664 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1668 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; case 8: /* TEXT */ #line 259 "src/ast-parser.y" /* yacc.c:1257 */ {} -#line 1670 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1674 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; case 9: /* VAR */ #line 259 "src/ast-parser.y" /* yacc.c:1257 */ {} -#line 1676 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1680 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; case 35: /* OFFSET_EQ_NAT */ #line 259 "src/ast-parser.y" /* yacc.c:1257 */ {} -#line 1682 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1686 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; case 36: /* ALIGN_EQ_NAT */ #line 259 "src/ast-parser.y" /* yacc.c:1257 */ {} -#line 1688 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1692 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 74: /* non_empty_text_list */ + case 75: /* non_empty_text_list */ #line 282 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_text_list(parser->allocator, &((*yyvaluep).text_list)); } -#line 1694 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1698 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 75: /* text_list */ + case 76: /* text_list */ #line 282 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_text_list(parser->allocator, &((*yyvaluep).text_list)); } -#line 1700 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1704 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 76: /* quoted_text */ + case 77: /* quoted_text */ #line 281 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_string_slice(parser->allocator, &((*yyvaluep).text)); } -#line 1706 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1710 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 77: /* value_type_list */ + case 78: /* value_type_list */ #line 283 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_type_vector(parser->allocator, &((*yyvaluep).types)); } -#line 1712 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1716 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 80: /* func_type */ + case 81: /* func_type */ #line 273 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_func_signature(parser->allocator, &((*yyvaluep).func_sig)); } -#line 1718 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1722 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 81: /* func_sig */ + case 82: /* func_sig */ #line 273 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_func_signature(parser->allocator, &((*yyvaluep).func_sig)); } -#line 1724 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1728 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 85: /* type_use */ + case 86: /* type_use */ #line 285 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_var(parser->allocator, &((*yyvaluep).var)); } -#line 1730 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1734 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 87: /* literal */ + case 88: /* literal */ #line 279 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_string_slice(parser->allocator, &((*yyvaluep).literal).text); } -#line 1736 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1740 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 88: /* var */ + case 89: /* var */ #line 285 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_var(parser->allocator, &((*yyvaluep).var)); } -#line 1742 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1746 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 89: /* var_list */ + case 90: /* var_list */ #line 284 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_var_vector_and_elements(parser->allocator, &((*yyvaluep).vars)); } -#line 1748 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1752 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 90: /* bind_var_opt */ + case 91: /* bind_var_opt */ #line 281 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_string_slice(parser->allocator, &((*yyvaluep).text)); } -#line 1754 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1758 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 91: /* bind_var */ + case 92: /* bind_var */ #line 281 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_string_slice(parser->allocator, &((*yyvaluep).text)); } -#line 1760 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1764 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 92: /* labeling_opt */ + case 93: /* labeling_opt */ #line 281 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_string_slice(parser->allocator, &((*yyvaluep).text)); } -#line 1766 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1770 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 95: /* instr */ + case 96: /* instr */ #line 270 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); } -#line 1772 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1776 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 96: /* plain_instr */ + case 97: /* plain_instr */ #line 269 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_expr(parser->allocator, ((*yyvaluep).expr)); } -#line 1778 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1782 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 97: /* block_instr */ + case 98: /* block_instr */ #line 269 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_expr(parser->allocator, ((*yyvaluep).expr)); } -#line 1784 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1788 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 98: /* block */ + case 99: /* block */ #line 260 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_block(parser->allocator, &((*yyvaluep).block)); } -#line 1790 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1794 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 99: /* expr */ + case 100: /* expr */ #line 270 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); } -#line 1796 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1800 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 100: /* expr1 */ + case 101: /* expr1 */ #line 270 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); } -#line 1802 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1806 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 101: /* if_ */ + case 102: /* if_ */ #line 270 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); } -#line 1808 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1812 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 102: /* instr_list */ + case 103: /* instr_list */ #line 270 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); } -#line 1814 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1818 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 103: /* expr_list */ + case 104: /* expr_list */ #line 270 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); } -#line 1820 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1824 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 104: /* const_expr */ + case 105: /* const_expr */ #line 270 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); } -#line 1826 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1830 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 105: /* func_fields */ + case 106: /* func_fields */ #line 271 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_func_fields(parser->allocator, ((*yyvaluep).func_fields)); } -#line 1832 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1836 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 106: /* func_body */ + case 107: /* func_body */ #line 271 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_func_fields(parser->allocator, ((*yyvaluep).func_fields)); } -#line 1838 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1842 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 107: /* func_info */ + case 108: /* func_info */ #line 272 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_func(parser->allocator, ((*yyvaluep).func)); wasm_free(parser->allocator, ((*yyvaluep).func)); } -#line 1844 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1848 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 108: /* func */ + case 109: /* func */ #line 266 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_exported_func(parser->allocator, &((*yyvaluep).exported_func)); } -#line 1850 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1854 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 109: /* offset */ + case 110: /* offset */ #line 270 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); } -#line 1856 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1860 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 110: /* elem */ + case 111: /* elem */ #line 264 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_elem_segment(parser->allocator, &((*yyvaluep).elem_segment)); } -#line 1862 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1866 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 111: /* table */ + case 112: /* table */ #line 268 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_exported_table(parser->allocator, &((*yyvaluep).exported_table)); } -#line 1868 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1872 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 112: /* data */ + case 113: /* data */ #line 276 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_data_segment(parser->allocator, &((*yyvaluep).data_segment)); } -#line 1874 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1878 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 113: /* memory */ + case 114: /* memory */ #line 267 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_exported_memory(parser->allocator, &((*yyvaluep).exported_memory)); } -#line 1880 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1884 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 115: /* import_kind */ + case 116: /* import_kind */ #line 275 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_import(parser->allocator, ((*yyvaluep).import)); wasm_free(parser->allocator, ((*yyvaluep).import)); } -#line 1886 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1890 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 116: /* import */ + case 117: /* import */ #line 275 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_import(parser->allocator, ((*yyvaluep).import)); wasm_free(parser->allocator, ((*yyvaluep).import)); } -#line 1892 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1896 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 117: /* inline_import */ + case 118: /* inline_import */ #line 275 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_import(parser->allocator, ((*yyvaluep).import)); wasm_free(parser->allocator, ((*yyvaluep).import)); } -#line 1898 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1902 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 118: /* export_kind */ + case 119: /* export_kind */ #line 265 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_export(parser->allocator, &((*yyvaluep).export_)); } -#line 1904 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1908 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 119: /* export */ + case 120: /* export */ #line 265 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_export(parser->allocator, &((*yyvaluep).export_)); } -#line 1910 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1914 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 122: /* type_def */ + case 123: /* type_def */ #line 274 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_func_type(parser->allocator, &((*yyvaluep).func_type)); } -#line 1916 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1920 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 123: /* start */ + case 124: /* start */ #line 285 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_var(parser->allocator, &((*yyvaluep).var)); } -#line 1922 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1926 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 124: /* module_fields */ + case 125: /* module_fields */ #line 277 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_module(parser->allocator, ((*yyvaluep).module)); wasm_free(parser->allocator, ((*yyvaluep).module)); } -#line 1928 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1932 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 125: /* raw_module */ + case 126: /* raw_module */ #line 278 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_raw_module(parser->allocator, &((*yyvaluep).raw_module)); } -#line 1934 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1938 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 126: /* module */ + case 127: /* module */ #line 277 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_module(parser->allocator, ((*yyvaluep).module)); wasm_free(parser->allocator, ((*yyvaluep).module)); } -#line 1940 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1944 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 127: /* script_var_opt */ + case 128: /* script_var_opt */ #line 285 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_var(parser->allocator, &((*yyvaluep).var)); } -#line 1946 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1950 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 129: /* assertion */ + case 130: /* assertion */ #line 261 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_command(parser->allocator, ((*yyvaluep).command)); wasm_free(parser->allocator, ((*yyvaluep).command)); } -#line 1952 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1956 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 130: /* cmd */ + case 131: /* cmd */ #line 261 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_command(parser->allocator, ((*yyvaluep).command)); wasm_free(parser->allocator, ((*yyvaluep).command)); } -#line 1958 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1962 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 131: /* cmd_list */ + case 132: /* cmd_list */ #line 262 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_command_vector_and_elements(parser->allocator, &((*yyvaluep).commands)); } -#line 1964 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1968 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 133: /* const_list */ + case 134: /* const_list */ #line 263 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_const_vector(parser->allocator, &((*yyvaluep).consts)); } -#line 1970 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1974 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; - case 134: /* script */ + case 135: /* script */ #line 280 "src/ast-parser.y" /* yacc.c:1257 */ { wasm_destroy_script(&((*yyvaluep).script)); } -#line 1976 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ +#line 1980 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */ break; @@ -2271,7 +2275,7 @@ yyreduce: node->next = NULL; (yyval.text_list).first = (yyval.text_list).last = node; } -#line 2275 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2279 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 3: @@ -2284,13 +2288,13 @@ yyreduce: (yyval.text_list).last->next = node; (yyval.text_list).last = node; } -#line 2288 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2292 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 4: #line 314 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.text_list).first = (yyval.text_list).last = NULL; } -#line 2294 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2298 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 6: @@ -2308,13 +2312,13 @@ yyreduce: (yyval.text).start = data; (yyval.text).length = size; } -#line 2312 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2316 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 7: #line 337 "src/ast-parser.y" /* yacc.c:1646 */ { WASM_ZERO_MEMORY((yyval.types)); } -#line 2318 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2322 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 8: @@ -2323,13 +2327,13 @@ yyreduce: (yyval.types) = (yyvsp[-1].types); wasm_append_type_value(parser->allocator, &(yyval.types), &(yyvsp[0].type)); } -#line 2327 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2331 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 9: #line 344 "src/ast-parser.y" /* yacc.c:1646 */ {} -#line 2333 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2337 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 10: @@ -2339,7 +2343,7 @@ yyreduce: (yyval.global).type = (yyvsp[0].type); (yyval.global).mutable_ = WASM_FALSE; } -#line 2343 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2347 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 11: @@ -2349,19 +2353,19 @@ yyreduce: (yyval.global).type = (yyvsp[-1].type); (yyval.global).mutable_ = WASM_TRUE; } -#line 2353 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2357 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 12: #line 359 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.func_sig) = (yyvsp[-1].func_sig); } -#line 2359 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2363 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 13: #line 362 "src/ast-parser.y" /* yacc.c:1646 */ { WASM_ZERO_MEMORY((yyval.func_sig)); } -#line 2365 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2369 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 14: @@ -2370,7 +2374,7 @@ yyreduce: WASM_ZERO_MEMORY((yyval.func_sig)); (yyval.func_sig).param_types = (yyvsp[-1].types); } -#line 2374 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2378 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 15: @@ -2380,7 +2384,7 @@ yyreduce: (yyval.func_sig).param_types = (yyvsp[-5].types); (yyval.func_sig).result_types = (yyvsp[-1].types); } -#line 2384 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2388 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 16: @@ -2389,19 +2393,19 @@ yyreduce: WASM_ZERO_MEMORY((yyval.func_sig)); (yyval.func_sig).result_types = (yyvsp[-1].types); } -#line 2393 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2397 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 17: #line 379 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.table).elem_limits = (yyvsp[-1].limits); } -#line 2399 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2403 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 18: #line 382 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.memory).page_limits = (yyvsp[0].limits); } -#line 2405 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2409 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 19: @@ -2411,7 +2415,7 @@ yyreduce: (yyval.limits).initial = (yyvsp[0].u64); (yyval.limits).max = 0; } -#line 2415 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2419 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 20: @@ -2421,13 +2425,13 @@ yyreduce: (yyval.limits).initial = (yyvsp[-1].u64); (yyval.limits).max = (yyvsp[0].u64); } -#line 2425 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2429 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 21: #line 397 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.var) = (yyvsp[-1].var); } -#line 2431 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2435 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 22: @@ -2440,7 +2444,7 @@ yyreduce: WASM_PRINTF_STRING_SLICE_ARG((yyvsp[0].literal).text)); } } -#line 2444 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2448 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 23: @@ -2449,7 +2453,7 @@ yyreduce: (yyval.literal).type = (yyvsp[0].literal).type; DUPTEXT((yyval.literal).text, (yyvsp[0].literal).text); } -#line 2453 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2457 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 24: @@ -2458,7 +2462,7 @@ yyreduce: (yyval.literal).type = (yyvsp[0].literal).type; DUPTEXT((yyval.literal).text, (yyvsp[0].literal).text); } -#line 2462 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2466 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 25: @@ -2467,7 +2471,7 @@ yyreduce: (yyval.literal).type = (yyvsp[0].literal).type; DUPTEXT((yyval.literal).text, (yyvsp[0].literal).text); } -#line 2471 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2475 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 26: @@ -2477,7 +2481,7 @@ yyreduce: (yyval.var).type = WASM_VAR_TYPE_INDEX; (yyval.var).index = (yyvsp[0].u64); } -#line 2481 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2485 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 27: @@ -2487,13 +2491,13 @@ yyreduce: (yyval.var).type = WASM_VAR_TYPE_NAME; DUPTEXT((yyval.var).name, (yyvsp[0].text)); } -#line 2491 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2495 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 28: #line 441 "src/ast-parser.y" /* yacc.c:1646 */ { WASM_ZERO_MEMORY((yyval.vars)); } -#line 2497 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2501 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 29: @@ -2502,31 +2506,31 @@ yyreduce: (yyval.vars) = (yyvsp[-1].vars); wasm_append_var_value(parser->allocator, &(yyval.vars), &(yyvsp[0].var)); } -#line 2506 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2510 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 30: #line 448 "src/ast-parser.y" /* yacc.c:1646 */ { WASM_ZERO_MEMORY((yyval.text)); } -#line 2512 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2516 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 32: #line 452 "src/ast-parser.y" /* yacc.c:1646 */ { DUPTEXT((yyval.text), (yyvsp[0].text)); } -#line 2518 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2522 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 33: #line 456 "src/ast-parser.y" /* yacc.c:1646 */ { WASM_ZERO_MEMORY((yyval.text)); } -#line 2524 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2528 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 35: #line 461 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.u64) = 0; } -#line 2530 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2534 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 36: @@ -2539,13 +2543,13 @@ yyreduce: WASM_PRINTF_STRING_SLICE_ARG((yyvsp[0].text))); } } -#line 2543 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2547 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 37: #line 472 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.u32) = USE_NATURAL_ALIGNMENT; } -#line 2549 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2553 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 38: @@ -2558,25 +2562,25 @@ yyreduce: WASM_PRINTF_STRING_SLICE_ARG((yyvsp[0].text))); } } -#line 2562 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2566 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 39: #line 484 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.expr_list) = join_exprs1(&(yylsp[0]), (yyvsp[0].expr)); } -#line 2568 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2572 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 40: #line 485 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.expr_list) = join_exprs1(&(yylsp[0]), (yyvsp[0].expr)); } -#line 2574 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2578 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 41: #line 486 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.expr_list) = (yyvsp[0].expr_list); } -#line 2580 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2584 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 42: @@ -2584,7 +2588,7 @@ yyreduce: { (yyval.expr) = wasm_new_unreachable_expr(parser->allocator); } -#line 2588 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2592 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 43: @@ -2592,7 +2596,7 @@ yyreduce: { (yyval.expr) = wasm_new_nop_expr(parser->allocator); } -#line 2596 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2600 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 44: @@ -2600,7 +2604,7 @@ yyreduce: { (yyval.expr) = wasm_new_drop_expr(parser->allocator); } -#line 2604 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2608 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 45: @@ -2608,7 +2612,7 @@ yyreduce: { (yyval.expr) = wasm_new_select_expr(parser->allocator); } -#line 2612 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2616 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 46: @@ -2617,7 +2621,7 @@ yyreduce: (yyval.expr) = wasm_new_br_expr(parser->allocator); (yyval.expr)->br.var = (yyvsp[0].var); } -#line 2621 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2625 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 47: @@ -2626,7 +2630,7 @@ yyreduce: (yyval.expr) = wasm_new_br_if_expr(parser->allocator); (yyval.expr)->br_if.var = (yyvsp[0].var); } -#line 2630 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2634 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 48: @@ -2636,7 +2640,7 @@ yyreduce: (yyval.expr)->br_table.targets = (yyvsp[-1].vars); (yyval.expr)->br_table.default_target = (yyvsp[0].var); } -#line 2640 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2644 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 49: @@ -2644,7 +2648,7 @@ yyreduce: { (yyval.expr) = wasm_new_return_expr(parser->allocator); } -#line 2648 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2652 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 50: @@ -2653,7 +2657,7 @@ yyreduce: (yyval.expr) = wasm_new_call_expr(parser->allocator); (yyval.expr)->call.var = (yyvsp[0].var); } -#line 2657 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2661 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 51: @@ -2662,7 +2666,7 @@ yyreduce: (yyval.expr) = wasm_new_call_indirect_expr(parser->allocator); (yyval.expr)->call_indirect.var = (yyvsp[0].var); } -#line 2666 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2670 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 52: @@ -2671,7 +2675,7 @@ yyreduce: (yyval.expr) = wasm_new_get_local_expr(parser->allocator); (yyval.expr)->get_local.var = (yyvsp[0].var); } -#line 2675 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2679 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 53: @@ -2680,7 +2684,7 @@ yyreduce: (yyval.expr) = wasm_new_set_local_expr(parser->allocator); (yyval.expr)->set_local.var = (yyvsp[0].var); } -#line 2684 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2688 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 54: @@ -2689,7 +2693,7 @@ yyreduce: (yyval.expr) = wasm_new_tee_local_expr(parser->allocator); (yyval.expr)->tee_local.var = (yyvsp[0].var); } -#line 2693 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2697 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 55: @@ -2698,7 +2702,7 @@ yyreduce: (yyval.expr) = wasm_new_get_global_expr(parser->allocator); (yyval.expr)->get_global.var = (yyvsp[0].var); } -#line 2702 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2706 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 56: @@ -2707,7 +2711,7 @@ yyreduce: (yyval.expr) = wasm_new_set_global_expr(parser->allocator); (yyval.expr)->set_global.var = (yyvsp[0].var); } -#line 2711 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2715 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 57: @@ -2718,7 +2722,7 @@ yyreduce: (yyval.expr)->load.offset = (yyvsp[-1].u64); (yyval.expr)->load.align = (yyvsp[0].u32); } -#line 2722 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2726 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 58: @@ -2729,7 +2733,7 @@ yyreduce: (yyval.expr)->store.offset = (yyvsp[-1].u64); (yyval.expr)->store.align = (yyvsp[0].u32); } -#line 2733 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2737 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 59: @@ -2746,7 +2750,7 @@ yyreduce: } wasm_free(parser->allocator, (char*)(yyvsp[0].literal).text.start); } -#line 2750 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2754 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 60: @@ -2755,7 +2759,7 @@ yyreduce: (yyval.expr) = wasm_new_unary_expr(parser->allocator); (yyval.expr)->unary.opcode = (yyvsp[0].opcode); } -#line 2759 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2763 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 61: @@ -2764,7 +2768,7 @@ yyreduce: (yyval.expr) = wasm_new_binary_expr(parser->allocator); (yyval.expr)->binary.opcode = (yyvsp[0].opcode); } -#line 2768 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2772 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 62: @@ -2773,7 +2777,7 @@ yyreduce: (yyval.expr) = wasm_new_compare_expr(parser->allocator); (yyval.expr)->compare.opcode = (yyvsp[0].opcode); } -#line 2777 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2781 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 63: @@ -2782,7 +2786,7 @@ yyreduce: (yyval.expr) = wasm_new_convert_expr(parser->allocator); (yyval.expr)->convert.opcode = (yyvsp[0].opcode); } -#line 2786 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2790 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 64: @@ -2790,7 +2794,7 @@ yyreduce: { (yyval.expr) = wasm_new_current_memory_expr(parser->allocator); } -#line 2794 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2798 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 65: @@ -2798,7 +2802,7 @@ yyreduce: { (yyval.expr) = wasm_new_grow_memory_expr(parser->allocator); } -#line 2802 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2806 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 66: @@ -2809,7 +2813,7 @@ yyreduce: (yyval.expr)->block.label = (yyvsp[-3].text); CHECK_END_LABEL((yylsp[0]), (yyval.expr)->block.label, (yyvsp[0].text)); } -#line 2813 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2817 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 67: @@ -2820,7 +2824,7 @@ yyreduce: (yyval.expr)->loop.label = (yyvsp[-3].text); CHECK_END_LABEL((yylsp[0]), (yyval.expr)->block.label, (yyvsp[0].text)); } -#line 2824 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2828 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 68: @@ -2831,7 +2835,7 @@ yyreduce: (yyval.expr)->if_.true_.label = (yyvsp[-3].text); CHECK_END_LABEL((yylsp[0]), (yyval.expr)->block.label, (yyvsp[0].text)); } -#line 2835 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2839 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 69: @@ -2844,7 +2848,7 @@ yyreduce: CHECK_END_LABEL((yylsp[-3]), (yyval.expr)->block.label, (yyvsp[-3].text)); CHECK_END_LABEL((yylsp[0]), (yyval.expr)->block.label, (yyvsp[0].text)); } -#line 2848 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2852 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 70: @@ -2854,13 +2858,13 @@ yyreduce: (yyval.block).sig = (yyvsp[-1].types); (yyval.block).first = (yyvsp[0].expr_list).first; } -#line 2858 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2862 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 71: #line 629 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.expr_list) = (yyvsp[-1].expr_list); } -#line 2864 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2868 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 72: @@ -2868,7 +2872,7 @@ yyreduce: { (yyval.expr_list) = join_exprs2(&(yylsp[-1]), &(yyvsp[0].expr_list), (yyvsp[-1].expr)); } -#line 2872 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2876 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 73: @@ -2879,7 +2883,7 @@ yyreduce: expr->block.label = (yyvsp[-1].text); (yyval.expr_list) = join_exprs1(&(yylsp[-2]), expr); } -#line 2883 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2887 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 74: @@ -2890,7 +2894,7 @@ yyreduce: expr->loop.label = (yyvsp[-1].text); (yyval.expr_list) = join_exprs1(&(yylsp[-2]), expr); } -#line 2894 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2898 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 75: @@ -2902,7 +2906,7 @@ yyreduce: if_->if_.true_.label = (yyvsp[-2].text); if_->if_.true_.sig = (yyvsp[-1].types); } -#line 2906 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2910 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 76: @@ -2913,7 +2917,7 @@ yyreduce: expr->if_.false_ = (yyvsp[-1].expr_list).first; (yyval.expr_list) = join_exprs1(&(yylsp[-7]), expr); } -#line 2917 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2921 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 77: @@ -2923,7 +2927,7 @@ yyreduce: expr->if_.true_.first = (yyvsp[-1].expr_list).first; (yyval.expr_list) = join_exprs1(&(yylsp[-3]), expr); } -#line 2927 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2931 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 78: @@ -2934,7 +2938,7 @@ yyreduce: expr->if_.false_ = (yyvsp[-1].expr_list).first; (yyval.expr_list) = join_exprs2(&(yylsp[-8]), &(yyvsp[-8].expr_list), expr); } -#line 2938 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2942 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 79: @@ -2944,7 +2948,7 @@ yyreduce: expr->if_.true_.first = (yyvsp[-1].expr_list).first; (yyval.expr_list) = join_exprs2(&(yylsp[-4]), &(yyvsp[-4].expr_list), expr); } -#line 2948 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2952 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 80: @@ -2955,7 +2959,7 @@ yyreduce: expr->if_.false_ = (yyvsp[0].expr_list).first; (yyval.expr_list) = join_exprs2(&(yylsp[-2]), &(yyvsp[-2].expr_list), expr); } -#line 2959 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2963 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 81: @@ -2965,13 +2969,13 @@ yyreduce: expr->if_.true_.first = (yyvsp[0].expr_list).first; (yyval.expr_list) = join_exprs2(&(yylsp[-1]), &(yyvsp[-1].expr_list), expr); } -#line 2969 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2973 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 82: #line 693 "src/ast-parser.y" /* yacc.c:1646 */ { WASM_ZERO_MEMORY((yyval.expr_list)); } -#line 2975 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2979 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 83: @@ -2982,13 +2986,13 @@ yyreduce: (yyval.expr_list).last = (yyvsp[0].expr_list).last ? (yyvsp[0].expr_list).last : (yyvsp[-1].expr_list).last; (yyval.expr_list).size = (yyvsp[-1].expr_list).size + (yyvsp[0].expr_list).size; } -#line 2986 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2990 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 84: #line 702 "src/ast-parser.y" /* yacc.c:1646 */ { WASM_ZERO_MEMORY((yyval.expr_list)); } -#line 2992 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 2996 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 85: @@ -2999,7 +3003,7 @@ yyreduce: (yyval.expr_list).last = (yyvsp[0].expr_list).last ? (yyvsp[0].expr_list).last : (yyvsp[-1].expr_list).last; (yyval.expr_list).size = (yyvsp[-1].expr_list).size + (yyvsp[0].expr_list).size; } -#line 3003 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3007 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 88: @@ -3010,7 +3014,7 @@ yyreduce: (yyval.func_fields)->types = (yyvsp[-2].types); (yyval.func_fields)->next = (yyvsp[0].func_fields); } -#line 3014 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3018 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 89: @@ -3021,7 +3025,7 @@ yyreduce: (yyval.func_fields)->types = (yyvsp[-2].types); (yyval.func_fields)->next = (yyvsp[0].func_fields); } -#line 3025 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3029 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 90: @@ -3034,7 +3038,7 @@ yyreduce: (yyval.func_fields)->bound_type.type = (yyvsp[-2].type); (yyval.func_fields)->next = (yyvsp[0].func_fields); } -#line 3038 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3042 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 91: @@ -3045,7 +3049,7 @@ yyreduce: (yyval.func_fields)->first_expr = (yyvsp[0].expr_list).first; (yyval.func_fields)->next = NULL; } -#line 3049 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3053 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 92: @@ -3056,7 +3060,7 @@ yyreduce: (yyval.func_fields)->types = (yyvsp[-2].types); (yyval.func_fields)->next = (yyvsp[0].func_fields); } -#line 3060 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3064 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 93: @@ -3069,7 +3073,7 @@ yyreduce: (yyval.func_fields)->bound_type.type = (yyvsp[-2].type); (yyval.func_fields)->next = (yyvsp[0].func_fields); } -#line 3073 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3077 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 94: @@ -3127,7 +3131,7 @@ yyreduce: field = next; } } -#line 3131 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3135 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 95: @@ -3140,7 +3144,7 @@ yyreduce: (yyval.exported_func).func->name = (yyvsp[-4].text); (yyval.exported_func).export_ = (yyvsp[-3].optional_export); } -#line 3144 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3148 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 96: @@ -3152,7 +3156,7 @@ yyreduce: (yyval.exported_func).func->decl.type_var = (yyvsp[-2].var); (yyval.exported_func).func->name = (yyvsp[-3].text); } -#line 3156 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3160 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 97: @@ -3163,7 +3167,7 @@ yyreduce: (yyval.exported_func).func->name = (yyvsp[-3].text); (yyval.exported_func).export_ = (yyvsp[-2].optional_export); } -#line 3167 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3171 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 98: @@ -3173,7 +3177,7 @@ yyreduce: (yyval.exported_func).func = (yyvsp[-1].func); (yyval.exported_func).func->name = (yyvsp[-2].text); } -#line 3177 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3181 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 99: @@ -3181,7 +3185,7 @@ yyreduce: { (yyval.expr_list) = (yyvsp[-1].expr_list); } -#line 3185 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3189 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 101: @@ -3192,7 +3196,7 @@ yyreduce: (yyval.elem_segment).offset = (yyvsp[-2].expr_list).first; (yyval.elem_segment).vars = (yyvsp[-1].vars); } -#line 3196 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3200 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 102: @@ -3205,7 +3209,7 @@ yyreduce: (yyval.elem_segment).offset = (yyvsp[-2].expr_list).first; (yyval.elem_segment).vars = (yyvsp[-1].vars); } -#line 3209 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3213 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 103: @@ -3216,7 +3220,7 @@ yyreduce: (yyval.exported_table).has_elem_segment = WASM_FALSE; (yyval.exported_table).export_ = (yyvsp[-2].optional_export); } -#line 3220 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3224 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 104: @@ -3237,7 +3241,7 @@ yyreduce: (yyval.exported_table).elem_segment.vars = (yyvsp[-2].vars); (yyval.exported_table).export_ = (yyvsp[-6].optional_export); } -#line 3241 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3245 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 105: @@ -3249,7 +3253,7 @@ yyreduce: dup_text_list(parser->allocator, &(yyvsp[-1].text_list), &(yyval.data_segment).data, &(yyval.data_segment).size); wasm_destroy_text_list(parser->allocator, &(yyvsp[-1].text_list)); } -#line 3253 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3257 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 106: @@ -3263,7 +3267,7 @@ yyreduce: dup_text_list(parser->allocator, &(yyvsp[-1].text_list), &(yyval.data_segment).data, &(yyval.data_segment).size); wasm_destroy_text_list(parser->allocator, &(yyvsp[-1].text_list)); } -#line 3267 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3271 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 107: @@ -3275,7 +3279,7 @@ yyreduce: (yyval.exported_memory).has_data_segment = WASM_FALSE; (yyval.exported_memory).export_ = (yyvsp[-2].optional_export); } -#line 3279 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3283 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 108: @@ -3300,7 +3304,7 @@ yyreduce: (yyval.exported_memory).memory.page_limits.has_max = WASM_TRUE; (yyval.exported_memory).export_ = (yyvsp[-5].optional_export); } -#line 3304 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3308 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 109: @@ -3325,7 +3329,7 @@ yyreduce: (yyval.exported_memory).memory.page_limits.has_max = WASM_TRUE; (yyval.exported_memory).export_.has_export = WASM_FALSE; } -#line 3329 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3333 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 110: @@ -3337,7 +3341,7 @@ yyreduce: (yyval.exported_global).global.init_expr = (yyvsp[-1].expr_list).first; (yyval.exported_global).export_ = (yyvsp[-3].optional_export); } -#line 3341 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3345 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 111: @@ -3349,7 +3353,7 @@ yyreduce: (yyval.exported_global).global.init_expr = (yyvsp[-1].expr_list).first; (yyval.exported_global).export_.has_export = WASM_FALSE; } -#line 3353 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3357 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 112: @@ -3361,7 +3365,7 @@ yyreduce: (yyval.import)->func.decl.flags = WASM_FUNC_DECLARATION_FLAG_HAS_FUNC_TYPE; (yyval.import)->func.decl.type_var = (yyvsp[-1].var); } -#line 3365 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3369 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 113: @@ -3372,7 +3376,7 @@ yyreduce: (yyval.import)->func.name = (yyvsp[-2].text); (yyval.import)->func.decl.sig = (yyvsp[-1].func_sig); } -#line 3376 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3380 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 114: @@ -3383,7 +3387,7 @@ yyreduce: (yyval.import)->table = (yyvsp[-1].table); (yyval.import)->table.name = (yyvsp[-2].text); } -#line 3387 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3391 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 115: @@ -3394,7 +3398,7 @@ yyreduce: (yyval.import)->memory = (yyvsp[-1].memory); (yyval.import)->memory.name = (yyvsp[-2].text); } -#line 3398 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3402 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 116: @@ -3405,7 +3409,7 @@ yyreduce: (yyval.import)->global = (yyvsp[-1].global); (yyval.import)->global.name = (yyvsp[-2].text); } -#line 3409 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3413 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 117: @@ -3415,7 +3419,7 @@ yyreduce: (yyval.import)->module_name = (yyvsp[-3].text); (yyval.import)->field_name = (yyvsp[-2].text); } -#line 3419 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3423 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 118: @@ -3427,7 +3431,7 @@ yyreduce: (yyval.import)->func.decl.flags = WASM_FUNC_DECLARATION_FLAG_HAS_FUNC_TYPE; (yyval.import)->func.decl.type_var = (yyvsp[-1].var); } -#line 3431 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3435 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 119: @@ -3438,7 +3442,7 @@ yyreduce: (yyval.import)->func.name = (yyvsp[-3].text); (yyval.import)->func.decl.sig = (yyvsp[-1].func_sig); } -#line 3442 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3446 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 120: @@ -3449,7 +3453,7 @@ yyreduce: (yyval.import)->table = (yyvsp[-1].table); (yyval.import)->table.name = (yyvsp[-3].text); } -#line 3453 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3457 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 121: @@ -3460,7 +3464,7 @@ yyreduce: (yyval.import)->memory = (yyvsp[-1].memory); (yyval.import)->memory.name = (yyvsp[-3].text); } -#line 3464 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3468 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 122: @@ -3471,7 +3475,7 @@ yyreduce: (yyval.import)->global = (yyvsp[-1].global); (yyval.import)->global.name = (yyvsp[-3].text); } -#line 3475 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3479 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 123: @@ -3481,7 +3485,7 @@ yyreduce: (yyval.import)->module_name = (yyvsp[-2].text); (yyval.import)->field_name = (yyvsp[-1].text); } -#line 3485 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3489 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 124: @@ -3491,7 +3495,7 @@ yyreduce: (yyval.export_).kind = WASM_EXTERNAL_KIND_FUNC; (yyval.export_).var = (yyvsp[-1].var); } -#line 3495 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3499 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 125: @@ -3501,7 +3505,7 @@ yyreduce: (yyval.export_).kind = WASM_EXTERNAL_KIND_TABLE; (yyval.export_).var = (yyvsp[-1].var); } -#line 3505 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3509 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 126: @@ -3511,7 +3515,7 @@ yyreduce: (yyval.export_).kind = WASM_EXTERNAL_KIND_MEMORY; (yyval.export_).var = (yyvsp[-1].var); } -#line 3515 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3519 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 127: @@ -3521,7 +3525,7 @@ yyreduce: (yyval.export_).kind = WASM_EXTERNAL_KIND_GLOBAL; (yyval.export_).var = (yyvsp[-1].var); } -#line 3525 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3529 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 128: @@ -3530,16 +3534,16 @@ yyreduce: (yyval.export_) = (yyvsp[-1].export_); (yyval.export_).name = (yyvsp[-2].text); } -#line 3534 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3538 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 129: #line 1098 "src/ast-parser.y" /* yacc.c:1646 */ - { + { WASM_ZERO_MEMORY((yyval.optional_export)); (yyval.optional_export).has_export = WASM_FALSE; } -#line 3543 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3547 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 131: @@ -3549,7 +3553,7 @@ yyreduce: (yyval.optional_export).has_export = WASM_TRUE; (yyval.optional_export).export_.name = (yyvsp[-1].text); } -#line 3553 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3557 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 132: @@ -3558,7 +3562,7 @@ yyreduce: WASM_ZERO_MEMORY((yyval.func_type)); (yyval.func_type).sig = (yyvsp[-1].func_sig); } -#line 3562 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3566 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 133: @@ -3567,13 +3571,13 @@ yyreduce: (yyval.func_type).name = (yyvsp[-2].text); (yyval.func_type).sig = (yyvsp[-1].func_sig); } -#line 3571 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3575 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 134: #line 1127 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.var) = (yyvsp[-1].var); } -#line 3577 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3581 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 135: @@ -3581,7 +3585,7 @@ yyreduce: { (yyval.module) = new_module(parser->allocator); } -#line 3585 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3589 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 136: @@ -3594,7 +3598,7 @@ yyreduce: &field->func_type); INSERT_BINDING((yyval.module), func_type, func_types, (yylsp[0]), (yyvsp[0].func_type).name); } -#line 3598 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3602 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 137: @@ -3607,7 +3611,7 @@ yyreduce: INSERT_BINDING((yyval.module), global, globals, (yylsp[0]), (yyvsp[0].exported_global).global.name); APPEND_INLINE_EXPORT((yyval.module), GLOBAL, (yylsp[0]), (yyvsp[0].exported_global), (yyval.module)->globals.size - 1); } -#line 3611 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3615 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 138: @@ -3629,7 +3633,7 @@ yyreduce: } } -#line 3633 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3637 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 139: @@ -3650,7 +3654,7 @@ yyreduce: &data_segment_field->data_segment); } } -#line 3654 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3658 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 140: @@ -3666,7 +3670,7 @@ yyreduce: APPEND_INLINE_EXPORT((yyval.module), FUNC, (yylsp[0]), (yyvsp[0].exported_func), (yyval.module)->funcs.size - 1); wasm_free(parser->allocator, (yyvsp[0].exported_func).func); } -#line 3670 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3674 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 141: @@ -3678,7 +3682,7 @@ yyreduce: APPEND_ITEM_TO_VECTOR((yyval.module), ElemSegment, elem_segment, elem_segments, &field->elem_segment); } -#line 3682 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3686 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 142: @@ -3690,7 +3694,7 @@ yyreduce: APPEND_ITEM_TO_VECTOR((yyval.module), DataSegment, data_segment, data_segments, &field->data_segment); } -#line 3694 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3698 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 143: @@ -3701,7 +3705,7 @@ yyreduce: APPEND_FIELD_TO_LIST((yyval.module), field, START, start, (yylsp[0]), (yyvsp[0].var)); (yyval.module)->start = &field->start; } -#line 3705 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3709 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 144: @@ -3746,7 +3750,7 @@ yyreduce: wasm_free(parser->allocator, (yyvsp[0].import)); APPEND_ITEM_TO_VECTOR((yyval.module), Import, import, imports, &field->import); } -#line 3750 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3754 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 145: @@ -3758,7 +3762,7 @@ yyreduce: APPEND_ITEM_TO_VECTOR((yyval.module), Export, export, exports, &field->export_); INSERT_BINDING((yyval.module), export, exports, (yylsp[0]), (yyvsp[0].export_).name); } -#line 3762 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3766 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 146: @@ -3785,7 +3789,7 @@ yyreduce: } } } -#line 3789 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3793 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 147: @@ -3797,7 +3801,7 @@ yyreduce: dup_text_list(parser->allocator, &(yyvsp[-1].text_list), &(yyval.raw_module).binary.data, &(yyval.raw_module).binary.size); wasm_destroy_text_list(parser->allocator, &(yyvsp[-1].text_list)); } -#line 3801 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3805 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 148: @@ -3823,7 +3827,7 @@ yyreduce: (yyval.module)->loc = (yyvsp[0].raw_module).binary.loc; } } -#line 3827 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3831 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 149: @@ -3833,7 +3837,7 @@ yyreduce: (yyval.var).type = WASM_VAR_TYPE_INDEX; (yyval.var).index = INVALID_VAR_INDEX; } -#line 3837 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3841 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 150: @@ -3843,7 +3847,7 @@ yyreduce: (yyval.var).type = WASM_VAR_TYPE_NAME; DUPTEXT((yyval.var).name, (yyvsp[0].text)); } -#line 3847 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3851 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 151: @@ -3856,7 +3860,7 @@ yyreduce: (yyval.action).invoke.name = (yyvsp[-2].text); (yyval.action).invoke.args = (yyvsp[-1].consts); } -#line 3860 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3864 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 152: @@ -3868,7 +3872,7 @@ yyreduce: (yyval.action).type = WASM_ACTION_TYPE_GET; (yyval.action).invoke.name = (yyvsp[-1].text); } -#line 3872 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3876 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 153: @@ -3879,7 +3883,7 @@ yyreduce: (yyval.command)->assert_malformed.module = (yyvsp[-2].raw_module); (yyval.command)->assert_malformed.text = (yyvsp[-1].text); } -#line 3883 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3887 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 154: @@ -3890,7 +3894,7 @@ yyreduce: (yyval.command)->assert_invalid.module = (yyvsp[-2].raw_module); (yyval.command)->assert_invalid.text = (yyvsp[-1].text); } -#line 3894 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3898 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 155: @@ -3901,7 +3905,7 @@ yyreduce: (yyval.command)->assert_unlinkable.module = (yyvsp[-2].raw_module); (yyval.command)->assert_unlinkable.text = (yyvsp[-1].text); } -#line 3905 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3909 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 156: @@ -3912,7 +3916,7 @@ yyreduce: (yyval.command)->assert_uninstantiable.module = (yyvsp[-2].raw_module); (yyval.command)->assert_uninstantiable.text = (yyvsp[-1].text); } -#line 3916 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3920 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 157: @@ -3923,7 +3927,7 @@ yyreduce: (yyval.command)->assert_return.action = (yyvsp[-2].action); (yyval.command)->assert_return.expected = (yyvsp[-1].consts); } -#line 3927 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3931 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 158: @@ -3933,7 +3937,7 @@ yyreduce: (yyval.command)->type = WASM_COMMAND_TYPE_ASSERT_RETURN_NAN; (yyval.command)->assert_return_nan.action = (yyvsp[-1].action); } -#line 3937 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3941 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 159: @@ -3944,32 +3948,43 @@ yyreduce: (yyval.command)->assert_trap.action = (yyvsp[-2].action); (yyval.command)->assert_trap.text = (yyvsp[-1].text); } -#line 3948 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3952 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; case 160: -#line 1397 "src/ast-parser.y" /* yacc.c:1646 */ +#line 1394 "src/ast-parser.y" /* yacc.c:1646 */ + { + (yyval.command) = new_command(parser->allocator); + (yyval.command)->type = WASM_COMMAND_TYPE_ASSERT_EXHAUSTION; + (yyval.command)->assert_trap.action = (yyvsp[-2].action); + (yyval.command)->assert_trap.text = (yyvsp[-1].text); + } +#line 3963 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ + break; + + case 161: +#line 1403 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.command) = new_command(parser->allocator); (yyval.command)->type = WASM_COMMAND_TYPE_ACTION; (yyval.command)->action = (yyvsp[0].action); } -#line 3958 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3973 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; - case 162: -#line 1403 "src/ast-parser.y" /* yacc.c:1646 */ + case 163: +#line 1409 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.command) = new_command(parser->allocator); (yyval.command)->type = WASM_COMMAND_TYPE_MODULE; (yyval.command)->module = *(yyvsp[0].module); wasm_free(parser->allocator, (yyvsp[0].module)); } -#line 3969 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3984 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; - case 163: -#line 1409 "src/ast-parser.y" /* yacc.c:1646 */ + case 164: +#line 1415 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.command) = new_command(parser->allocator); (yyval.command)->type = WASM_COMMAND_TYPE_REGISTER; @@ -3977,27 +3992,27 @@ yyreduce: (yyval.command)->register_.var = (yyvsp[-1].var); (yyval.command)->register_.var.loc = (yylsp[-1]); } -#line 3981 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 3996 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; - case 164: -#line 1418 "src/ast-parser.y" /* yacc.c:1646 */ + case 165: +#line 1424 "src/ast-parser.y" /* yacc.c:1646 */ { WASM_ZERO_MEMORY((yyval.commands)); } -#line 3987 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 4002 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; - case 165: -#line 1419 "src/ast-parser.y" /* yacc.c:1646 */ + case 166: +#line 1425 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.commands) = (yyvsp[-1].commands); wasm_append_command_value(parser->allocator, &(yyval.commands), (yyvsp[0].command)); wasm_free(parser->allocator, (yyvsp[0].command)); } -#line 3997 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 4012 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; - case 166: -#line 1427 "src/ast-parser.y" /* yacc.c:1646 */ + case 167: +#line 1433 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.const_).loc = (yylsp[-2]); if (WASM_FAILED(parse_const((yyvsp[-2].type), (yyvsp[-1].literal).type, (yyvsp[-1].literal).text.start, @@ -4008,26 +4023,26 @@ yyreduce: } wasm_free(parser->allocator, (char*)(yyvsp[-1].literal).text.start); } -#line 4012 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 4027 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; - case 167: -#line 1439 "src/ast-parser.y" /* yacc.c:1646 */ + case 168: +#line 1445 "src/ast-parser.y" /* yacc.c:1646 */ { WASM_ZERO_MEMORY((yyval.consts)); } -#line 4018 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 4033 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; - case 168: -#line 1440 "src/ast-parser.y" /* yacc.c:1646 */ + case 169: +#line 1446 "src/ast-parser.y" /* yacc.c:1646 */ { (yyval.consts) = (yyvsp[-1].consts); wasm_append_const_value(parser->allocator, &(yyval.consts), &(yyvsp[0].const_)); } -#line 4027 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 4042 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; - case 169: -#line 1447 "src/ast-parser.y" /* yacc.c:1646 */ + case 170: +#line 1453 "src/ast-parser.y" /* yacc.c:1646 */ { WASM_ZERO_MEMORY((yyval.script)); (yyval.script).allocator = parser->allocator; @@ -4063,6 +4078,7 @@ yyreduce: module_var = &command->assert_return_nan.action.module_var; goto has_module_var; case WASM_COMMAND_TYPE_ASSERT_TRAP: + case WASM_COMMAND_TYPE_ASSERT_EXHAUSTION: module_var = &command->assert_trap.action.module_var; goto has_module_var; case WASM_COMMAND_TYPE_ACTION: @@ -4088,11 +4104,11 @@ yyreduce: } parser->script = (yyval.script); } -#line 4092 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 4108 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ break; -#line 4096 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ +#line 4112 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -4327,7 +4343,7 @@ yyreturn: #endif return yyresult; } -#line 1515 "src/ast-parser.y" /* yacc.c:1906 */ +#line 1522 "src/ast-parser.y" /* yacc.c:1906 */ static void append_expr_list(WasmExprList* expr_list, WasmExprList* expr) { |