summaryrefslogtreecommitdiff
path: root/src/prebuilt/ast-parser-gen.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/prebuilt/ast-parser-gen.cc')
-rw-r--r--src/prebuilt/ast-parser-gen.cc1739
1 files changed, 878 insertions, 861 deletions
diff --git a/src/prebuilt/ast-parser-gen.cc b/src/prebuilt/ast-parser-gen.cc
index c5765eab..32c4c754 100644
--- a/src/prebuilt/ast-parser-gen.cc
+++ b/src/prebuilt/ast-parser-gen.cc
@@ -340,12 +340,13 @@ extern int wabt_ast_parser_debug;
WABT_TOKEN_TYPE_ASSERT_INVALID = 320,
WABT_TOKEN_TYPE_ASSERT_UNLINKABLE = 321,
WABT_TOKEN_TYPE_ASSERT_RETURN = 322,
- WABT_TOKEN_TYPE_ASSERT_RETURN_NAN = 323,
- WABT_TOKEN_TYPE_ASSERT_TRAP = 324,
- WABT_TOKEN_TYPE_ASSERT_EXHAUSTION = 325,
- WABT_TOKEN_TYPE_INPUT = 326,
- WABT_TOKEN_TYPE_OUTPUT = 327,
- WABT_TOKEN_TYPE_LOW = 328
+ WABT_TOKEN_TYPE_ASSERT_RETURN_CANONICAL_NAN = 323,
+ WABT_TOKEN_TYPE_ASSERT_RETURN_ARITHMETIC_NAN = 324,
+ WABT_TOKEN_TYPE_ASSERT_TRAP = 325,
+ WABT_TOKEN_TYPE_ASSERT_EXHAUSTION = 326,
+ WABT_TOKEN_TYPE_INPUT = 327,
+ WABT_TOKEN_TYPE_OUTPUT = 328,
+ WABT_TOKEN_TYPE_LOW = 329
};
#endif
@@ -378,7 +379,7 @@ int wabt_ast_parser_parse (::wabt::AstLexer* lexer, ::wabt::AstParser* parser);
/* Copy the second part of user declarations. */
-#line 382 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:358 */
+#line 383 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:358 */
#ifdef short
# undef short
@@ -622,21 +623,21 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 10
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 794
+#define YYLAST 797
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 74
+#define YYNTOKENS 75
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 63
/* YYNRULES -- Number of rules. */
-#define YYNRULES 171
+#define YYNRULES 172
/* YYNSTATES -- Number of states. */
-#define YYNSTATES 402
+#define YYNSTATES 405
/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
by yylex, with out-of-bounds checking. */
#define YYUNDEFTOK 2
-#define YYMAXUTOK 328
+#define YYMAXUTOK 329
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -677,31 +678,31 @@ 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, 73
+ 65, 66, 67, 68, 69, 70, 71, 72, 73, 74
};
#if WABT_AST_PARSER_DEBUG
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 292, 292, 298, 308, 309, 313, 331, 332, 338,
- 341, 346, 353, 356, 357, 362, 369, 377, 383, 389,
- 394, 401, 407, 418, 422, 426, 433, 438, 445, 446,
- 452, 453, 456, 460, 461, 465, 466, 476, 477, 488,
- 489, 490, 493, 496, 499, 502, 505, 508, 511, 514,
- 517, 520, 523, 526, 529, 532, 535, 538, 541, 544,
- 557, 560, 563, 566, 569, 572, 577, 582, 587, 592,
- 600, 609, 613, 616, 621, 626, 636, 640, 644, 648,
- 652, 656, 663, 664, 672, 673, 681, 686, 687, 693,
- 699, 709, 715, 721, 731, 783, 793, 800, 808, 818,
- 821, 825, 832, 844, 852, 874, 881, 893, 901, 922,
- 944, 952, 965, 973, 981, 987, 993, 1001, 1006, 1014,
- 1022, 1028, 1034, 1043, 1051, 1056, 1061, 1066, 1073, 1080,
- 1084, 1087, 1099, 1104, 1113, 1117, 1120, 1127, 1136, 1153,
- 1170, 1180, 1186, 1192, 1198, 1231, 1241, 1261, 1272, 1300,
- 1305, 1313, 1323, 1333, 1339, 1345, 1351, 1357, 1363, 1368,
- 1374, 1383, 1388, 1389, 1394, 1403, 1404, 1411, 1423, 1424,
- 1431, 1492
+ 0, 293, 293, 299, 309, 310, 314, 332, 333, 339,
+ 342, 347, 354, 357, 358, 363, 370, 378, 384, 390,
+ 395, 402, 408, 419, 423, 427, 434, 439, 446, 447,
+ 453, 454, 457, 461, 462, 466, 467, 477, 478, 489,
+ 490, 491, 494, 497, 500, 503, 506, 509, 512, 515,
+ 518, 521, 524, 527, 530, 533, 536, 539, 542, 545,
+ 558, 561, 564, 567, 570, 573, 578, 583, 588, 593,
+ 601, 610, 614, 617, 622, 627, 637, 641, 645, 649,
+ 653, 657, 664, 665, 673, 674, 682, 687, 688, 694,
+ 700, 710, 716, 722, 732, 784, 794, 801, 809, 819,
+ 822, 826, 833, 845, 853, 875, 882, 894, 902, 923,
+ 945, 953, 966, 974, 982, 988, 994, 1002, 1007, 1015,
+ 1023, 1029, 1035, 1044, 1052, 1057, 1062, 1067, 1074, 1081,
+ 1085, 1088, 1100, 1105, 1114, 1118, 1121, 1128, 1137, 1154,
+ 1171, 1181, 1187, 1193, 1199, 1232, 1242, 1262, 1273, 1301,
+ 1306, 1314, 1324, 1334, 1340, 1346, 1352, 1358, 1364, 1369,
+ 1374, 1380, 1389, 1394, 1395, 1400, 1409, 1410, 1417, 1429,
+ 1430, 1437, 1503
};
#endif
@@ -720,17 +721,18 @@ static const char *const yytname[] =
"FUNC", "START", "TYPE", "PARAM", "RESULT", "LOCAL", "GLOBAL", "MODULE",
"TABLE", "ELEM", "MEMORY", "DATA", "OFFSET", "IMPORT", "EXPORT",
"REGISTER", "INVOKE", "GET", "ASSERT_MALFORMED", "ASSERT_INVALID",
- "ASSERT_UNLINKABLE", "ASSERT_RETURN", "ASSERT_RETURN_NAN", "ASSERT_TRAP",
- "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",
+ "ASSERT_UNLINKABLE", "ASSERT_RETURN", "ASSERT_RETURN_CANONICAL_NAN",
+ "ASSERT_RETURN_ARITHMETIC_NAN", "ASSERT_TRAP", "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
@@ -749,14 +751,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, 328
+ 325, 326, 327, 328, 329
};
# endif
-#define YYPACT_NINF -271
+#define YYPACT_NINF -274
#define yypact_value_is_default(Yystate) \
- (!!((Yystate) == (-271)))
+ (!!((Yystate) == (-274)))
#define YYTABLE_NINF -30
@@ -767,47 +769,47 @@ static const yytype_uint16 yytoknum[] =
STATE-NUM. */
static const yytype_int16 yypact[] =
{
- -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
+ -274, 41, -274, 46, 68, -274, -274, -274, -274, -274,
+ -274, 60, 73, 82, 82, 121, 121, 121, 123, 123,
+ 123, 142, 123, -274, 166, -274, -274, 82, -274, 73,
+ 73, 128, 73, 73, 73, 104, -274, 184, 205, 0,
+ 73, 73, 73, -274, 161, 221, 213, -274, 243, 245,
+ 254, 255, 228, -274, -274, 256, 263, 264, -274, -274,
+ 116, -274, -274, -274, -274, -274, -274, -274, -274, -274,
+ -274, -274, -274, 231, -274, -274, -274, -274, 153, -274,
+ -274, -274, -274, -274, 60, 98, 69, 60, 60, 111,
+ 60, 111, 73, 73, -274, 237, 408, -274, -274, -274,
+ 265, 224, 267, 204, 58, 270, 329, 271, -274, -274,
+ 272, 271, 166, 73, 273, -274, -274, -274, 275, 288,
+ -274, -274, 60, 60, 60, 98, 98, -274, 98, 98,
+ -274, 98, 98, 98, 98, 98, 242, 242, 237, -274,
+ -274, -274, -274, -274, -274, -274, -274, 441, 474, -274,
+ -274, -274, -274, -274, -274, 276, 278, 507, -274, 279,
+ -274, 280, 6, -274, 474, 89, 89, 186, 284, 114,
+ -274, 60, 60, 60, 474, 287, 289, -274, 118, 170,
+ 284, 284, 291, 166, 283, 292, 301, 34, 302, -274,
+ 98, 60, -274, 60, 73, 73, -274, -274, -274, -274,
+ -274, -274, 98, -274, -274, -274, -274, -274, -274, -274,
+ -274, 247, 247, -274, 612, 303, 752, -274, -274, 203,
+ 309, 319, 573, 441, 320, 206, 330, -274, 282, -274,
+ 331, 328, 337, 474, 341, 343, 284, -274, 361, 371,
+ -274, -274, -274, 372, 287, -274, -274, 197, -274, -274,
+ 166, 373, -274, 376, 238, 377, -274, 52, 378, 98,
+ 98, 98, 98, -274, 379, 173, 355, 174, 175, 369,
+ 73, 380, 375, 370, 48, 384, 214, -274, -274, -274,
+ -274, -274, -274, -274, -274, 387, -274, -274, 389, -274,
+ -274, 390, -274, -274, -274, 388, -274, -274, 99, -274,
+ -274, -274, -274, 406, -274, -274, 166, -274, 60, 60,
+ 60, 60, -274, 420, 422, 423, 429, -274, 441, -274,
+ 453, 540, 540, 455, 456, -274, -274, 60, 60, 60,
+ 60, 188, 189, -274, -274, -274, -274, 686, 463, -274,
+ 472, 486, 278, 89, 284, 284, -274, -274, -274, -274,
+ -274, 441, 651, -274, -274, 540, -274, -274, -274, 474,
+ -274, 489, -274, 217, 474, 719, 287, -274, 495, 505,
+ 519, 521, 522, 528, -274, -274, 477, 492, 552, 554,
+ 474, -274, -274, -274, -274, -274, -274, -274, 60, -274,
+ -274, 556, 561, -274, 193, 557, 572, -274, 474, 570,
+ 587, 474, -274, 588, -274
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -815,71 +817,71 @@ static const yytype_int16 yypact[] =
means the default is an error. */
static const yytype_uint8 yydefact[] =
{
- 165, 170, 171, 0, 0, 148, 163, 161, 162, 166,
+ 166, 171, 172, 0, 0, 148, 164, 162, 163, 167,
1, 30, 0, 149, 149, 0, 0, 0, 0, 0,
- 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
+ 0, 0, 0, 32, 135, 31, 6, 149, 150, 0,
+ 0, 0, 0, 0, 0, 0, 169, 0, 0, 0,
+ 0, 0, 0, 2, 0, 0, 0, 169, 0, 0,
+ 0, 0, 0, 158, 159, 0, 0, 0, 147, 3,
+ 0, 146, 140, 141, 138, 142, 139, 137, 144, 145,
+ 136, 143, 165, 0, 152, 153, 154, 155, 0, 157,
+ 170, 156, 160, 161, 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, 168,
+ 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[] =
{
- -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
+ -274, 574, -156, -8, -181, 374, -149, 516, -146, -155,
+ -150, -145, -151, -140, 470, 26, -118, -45, -11, -116,
+ 483, 416, -274, -104, -274, -147, -88, -274, -274, -144,
+ 386, -136, -268, -273, -110, -274, -37, -274, -274, -274,
+ -274, -274, -274, -274, 39, -274, -274, 527, 43, -274,
+ -274, -274, 125, -274, 44, 219, -274, -274, -274, -274,
+ 584, -274, -274
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
- -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
+ -1, 184, 185, 27, 272, 238, 164, 102, 220, 234,
+ 251, 235, 147, 99, 118, 249, 178, 24, 196, 197,
+ 211, 278, 148, 149, 150, 273, 151, 176, 339, 152,
+ 245, 230, 153, 154, 155, 62, 109, 63, 64, 65,
+ 66, 67, 258, 68, 156, 188, 69, 169, 157, 70,
+ 71, 45, 5, 6, 29, 7, 8, 9, 1, 80,
+ 52, 2, 3
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
@@ -887,240 +889,240 @@ static const yytype_int16 yydefgoto[] =
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
- 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
+ 25, 108, 175, 108, 217, 221, 223, 198, 199, 202,
+ 265, 267, 268, 226, 239, 175, 232, 233, 228, 108,
+ 229, 47, 48, 108, 49, 50, 51, 255, 236, 236,
+ 229, 253, 55, 56, 57, 252, 252, 215, 243, 96,
+ 236, 236, 104, 105, 4, 110, 10, 224, 353, 354,
+ 350, 274, 275, 11, 112, 240, 241, 242, 30, 247,
+ 298, 162, 13, 14, 328, 194, 195, 329, 163, 23,
+ 177, 46, 101, 25, 183, 103, 25, 25, 23, 25,
+ 259, 26, 375, 374, 113, 114, 260, 244, 261, 229,
+ 262, 28, 231, 297, 303, 299, 294, 291, 308, 163,
+ 331, 332, 337, 97, 309, 186, 310, 98, 311, 319,
+ 175, 100, 175, 285, 106, 107, 97, 111, 175, 97,
+ 98, 11, 248, 97, 31, 237, 35, 98, 326, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 32, 33, 34, 165, 168, 39, 40, 166, 170, 180,
+ 341, 200, 201, 182, 203, 204, 244, 205, 206, 207,
+ 208, 209, 84, 85, 86, 58, 13, 14, 87, 59,
+ 88, 89, 90, 91, 43, 92, 93, 318, 321, 322,
+ 266, 11, 269, 319, 319, 319, 270, 271, 53, 372,
+ 95, 370, 361, 362, 371, 373, 369, 397, 319, 319,
+ 252, 302, 97, 319, 236, 236, 98, 101, 394, 54,
+ 338, 357, 358, 359, 360, 376, 264, 72, 363, -29,
+ 379, 378, 97, -29, 60, 61, 98, 250, 276, 194,
+ 195, 78, 79, 175, 78, 94, 392, 36, 37, 38,
+ 41, 42, 115, 116, 117, 194, 195, 74, 175, 75,
+ 366, 190, 281, 282, 400, 281, 282, 403, 76, 77,
+ 81, 175, 324, 342, 343, 344, 345, 82, 83, 158,
+ 159, 160, 393, 167, 106, 179, 187, 210, 381, 189,
+ 218, 219, 225, 277, 227, 313, 314, 315, 316, 97,
+ 216, 59, 288, 246, 254, 306, 256, 25, 25, 25,
+ 25, 120, 121, 171, 257, 172, 263, 280, 173, 125,
+ 126, 127, 128, 283, 129, 130, 131, 132, 133, 134,
+ 135, 136, 137, 284, 286, 138, 139, 140, 141, 142,
+ 143, 144, 145, 146, 287, 289, 190, 191, 192, 193,
+ 228, 290, 120, 121, 171, 292, 172, 194, 195, 173,
+ 125, 126, 127, 128, 237, 129, 130, 131, 132, 133,
+ 134, 135, 136, 137, 295, 320, 138, 139, 140, 141,
+ 142, 143, 144, 145, 146, 296, 300, 304, 216, 323,
+ 305, 307, 312, 317, 325, 319, 327, 174, 120, 121,
+ 122, 333, 123, 334, 335, 124, 125, 126, 127, 128,
+ 330, 129, 130, 131, 132, 133, 134, 135, 136, 137,
+ 340, 119, 138, 139, 140, 141, 142, 143, 144, 145,
+ 146, 120, 121, 122, 346, 123, 347, 348, 124, 125,
+ 126, 127, 128, 349, 129, 130, 131, 132, 133, 134,
+ 135, 136, 137, 336, 214, 138, 139, 140, 141, 142,
+ 143, 144, 145, 146, 120, 121, 122, 351, 123, 355,
+ 356, 124, 125, 126, 127, 128, 365, 129, 130, 131,
+ 132, 133, 134, 135, 136, 137, 367, 216, 138, 139,
+ 140, 141, 142, 143, 144, 145, 146, 120, 121, 122,
+ 368, 123, 377, 388, 124, 125, 126, 127, 128, 382,
+ 129, 130, 131, 132, 133, 134, 135, 136, 137, 383,
+ 222, 138, 139, 140, 141, 142, 143, 144, 145, 146,
+ 120, 121, 122, 384, 123, 385, 386, 124, 125, 126,
+ 127, 128, 387, 129, 130, 131, 132, 133, 134, 135,
+ 136, 137, 389, 352, 138, 139, 140, 141, 142, 143,
+ 144, 145, 146, 120, 121, 122, 390, 123, 391, 395,
+ 124, 125, 126, 127, 128, 396, 129, 130, 131, 132,
+ 133, 134, 135, 136, 137, 399, 398, 138, 139, 140,
+ 141, 142, 143, 144, 145, 146, 120, 121, 171, 401,
+ 172, 402, 404, 173, 125, 126, 127, 128, 44, 129,
+ 130, 131, 132, 133, 134, 135, 136, 137, 213, 293,
+ 138, 139, 140, 141, 142, 143, 144, 145, 146, 161,
+ 212, 190, 191, 192, 193, 120, 121, 171, 279, 172,
+ 301, 73, 173, 125, 126, 127, 128, 181, 129, 130,
+ 131, 132, 133, 134, 135, 136, 137, 0, 0, 138,
+ 139, 140, 141, 142, 143, 144, 145, 146, 0, 0,
+ 0, 191, 192, 193, 120, 121, 171, 0, 172, 0,
+ 0, 173, 125, 126, 127, 128, 0, 129, 130, 131,
+ 132, 133, 134, 135, 136, 137, 0, 0, 138, 139,
+ 140, 141, 142, 143, 144, 145, 146, 0, 0, 120,
+ 121, 171, 193, 172, 364, 0, 173, 125, 126, 127,
+ 128, 0, 129, 130, 131, 132, 133, 134, 135, 136,
+ 137, 0, 0, 138, 139, 140, 141, 142, 143, 144,
+ 145, 146, 120, 121, 171, 0, 172, 380, 0, 173,
+ 125, 126, 127, 128, 0, 129, 130, 131, 132, 133,
+ 134, 135, 136, 137, 0, 0, 138, 139, 140, 141,
+ 142, 143, 144, 145, 146, 120, 121, 171, 0, 172,
+ 0, 0, 173, 125, 126, 127, 128, 0, 129, 130,
+ 131, 132, 133, 134, 135, 136, 137, 0, 0, 138,
+ 139, 140, 141, 142, 143, 144, 145, 146
};
static const yytype_int16 yycheck[] =
{
- 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,
+ 11, 89, 106, 91, 148, 156, 157, 123, 124, 127,
+ 191, 192, 193, 159, 169, 119, 165, 166, 12, 107,
+ 164, 29, 30, 111, 32, 33, 34, 183, 168, 169,
+ 174, 181, 40, 41, 42, 180, 181, 147, 174, 84,
+ 180, 181, 87, 88, 3, 90, 0, 157, 321, 322,
+ 318, 198, 199, 53, 91, 171, 172, 173, 14, 177,
+ 241, 3, 62, 63, 16, 59, 60, 19, 10, 9,
+ 107, 27, 3, 84, 111, 86, 87, 88, 9, 90,
+ 46, 8, 355, 351, 92, 93, 52, 175, 54, 233,
+ 56, 9, 3, 240, 250, 242, 236, 233, 46, 10,
+ 281, 282, 3, 5, 52, 113, 54, 9, 56, 10,
+ 214, 85, 216, 223, 3, 89, 5, 91, 222, 5,
+ 9, 53, 4, 5, 3, 11, 3, 9, 272, 61,
+ 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
+ 15, 16, 17, 104, 105, 3, 21, 104, 105, 110,
+ 306, 125, 126, 110, 128, 129, 244, 131, 132, 133,
+ 134, 135, 46, 47, 48, 4, 62, 63, 52, 8,
+ 54, 55, 56, 57, 8, 59, 60, 4, 4, 4,
+ 191, 53, 193, 10, 10, 10, 194, 195, 4, 344,
+ 37, 342, 4, 4, 343, 345, 342, 4, 10, 10,
+ 345, 4, 5, 10, 344, 345, 9, 3, 389, 4,
+ 298, 327, 328, 329, 330, 359, 190, 4, 336, 5,
+ 364, 4, 5, 9, 3, 4, 9, 57, 202, 59,
+ 60, 3, 4, 337, 3, 4, 380, 18, 19, 20,
+ 21, 22, 5, 6, 7, 59, 60, 4, 352, 4,
+ 338, 48, 49, 50, 398, 49, 50, 401, 4, 4,
+ 4, 365, 270, 308, 309, 310, 311, 4, 4, 4,
+ 46, 4, 388, 3, 3, 3, 3, 35, 366, 4,
+ 4, 3, 3, 36, 4, 259, 260, 261, 262, 5,
+ 3, 8, 10, 4, 3, 57, 4, 308, 309, 310,
+ 311, 13, 14, 15, 3, 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, 4, 48, 49, 50, 51,
+ 12, 4, 13, 14, 15, 4, 17, 59, 60, 20,
+ 21, 22, 23, 24, 11, 26, 27, 28, 29, 30,
+ 31, 32, 33, 34, 3, 10, 37, 38, 39, 40,
+ 41, 42, 43, 44, 45, 4, 4, 4, 3, 10,
+ 4, 4, 4, 4, 4, 10, 16, 58, 13, 14,
15, 4, 17, 4, 4, 20, 21, 22, 23, 24,
- 4, 26, 27, 28, 29, 30, 31, 32, 33, 34,
+ 16, 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,
+ 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, 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, 4, 4, 20, 21, 22, 23, 24, 4,
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 50,
+ 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, 3, 20, 21, 22,
+ 13, 14, 15, 4, 17, 4, 4, 20, 21, 22,
23, 24, 4, 26, 27, 28, 29, 30, 31, 32,
- 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, -1, 17, 18, -1, 20, 21, 22, 23,
+ 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, 37, 38, 39,
+ 40, 41, 42, 43, 44, 45, 13, 14, 15, 19,
+ 17, 4, 4, 20, 21, 22, 23, 24, 24, 26,
+ 27, 28, 29, 30, 31, 32, 33, 34, 138, 235,
+ 37, 38, 39, 40, 41, 42, 43, 44, 45, 103,
+ 137, 48, 49, 50, 51, 13, 14, 15, 212, 17,
+ 244, 47, 20, 21, 22, 23, 24, 110, 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, -1, 17, -1, -1, 20,
+ 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
+ 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
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
static const yytype_uint8 yystos[] =
{
- 0, 132, 135, 136, 3, 126, 127, 129, 130, 131,
+ 0, 133, 136, 137, 3, 127, 128, 130, 131, 132,
0, 53, 61, 62, 63, 64, 65, 66, 67, 68,
- 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
+ 69, 70, 71, 9, 92, 93, 8, 78, 9, 129,
+ 129, 3, 127, 127, 127, 3, 130, 130, 130, 3,
+ 127, 130, 130, 8, 76, 126, 129, 78, 78, 78,
+ 78, 78, 135, 4, 4, 78, 78, 78, 4, 8,
+ 3, 4, 110, 112, 113, 114, 115, 116, 118, 121,
+ 124, 125, 4, 135, 4, 4, 4, 4, 3, 4,
+ 134, 4, 4, 4, 46, 47, 48, 52, 54, 55,
+ 56, 57, 59, 60, 4, 37, 92, 5, 9, 88,
+ 90, 3, 82, 93, 92, 92, 3, 90, 101, 111,
+ 92, 90, 111, 78, 78, 5, 6, 7, 89, 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, 87, 97, 98,
+ 99, 101, 104, 107, 108, 109, 119, 123, 4, 46,
+ 4, 82, 3, 10, 81, 119, 123, 3, 119, 122,
+ 123, 15, 17, 20, 58, 98, 102, 111, 91, 3,
+ 119, 122, 123, 111, 76, 77, 78, 3, 120, 4,
+ 48, 49, 50, 51, 59, 60, 93, 94, 94, 94,
+ 90, 90, 91, 90, 90, 90, 90, 90, 90, 90,
+ 35, 95, 95, 89, 3, 109, 3, 104, 4, 3,
+ 83, 87, 3, 87, 109, 3, 83, 4, 12, 104,
+ 106, 3, 81, 81, 84, 86, 88, 11, 80, 84,
+ 94, 94, 94, 106, 101, 105, 4, 91, 4, 90,
+ 57, 85, 86, 85, 3, 77, 4, 3, 117, 46,
+ 52, 54, 56, 4, 90, 79, 93, 79, 79, 93,
+ 78, 78, 79, 100, 100, 100, 90, 36, 96, 96,
+ 4, 49, 50, 4, 4, 109, 4, 4, 10, 4,
+ 4, 106, 4, 80, 88, 3, 4, 100, 79, 100,
+ 4, 105, 4, 77, 4, 4, 57, 4, 46, 52,
+ 54, 56, 4, 90, 90, 90, 90, 4, 4, 10,
+ 10, 4, 4, 10, 78, 4, 104, 16, 16, 19,
+ 16, 79, 79, 4, 4, 4, 55, 3, 101, 103,
+ 4, 77, 92, 92, 92, 92, 4, 4, 4, 4,
+ 107, 4, 3, 108, 108, 4, 4, 94, 94, 94,
+ 94, 4, 4, 91, 18, 3, 101, 4, 4, 83,
+ 87, 81, 84, 85, 107, 108, 104, 3, 4, 104,
+ 18, 101, 4, 4, 4, 4, 4, 4, 16, 50,
+ 4, 4, 104, 94, 79, 3, 4, 4, 19, 3,
+ 104, 19, 4, 104, 4
};
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const yytype_uint8 yyr1[] =
{
- 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
+ 0, 75, 76, 76, 77, 77, 78, 79, 79, 80,
+ 81, 81, 82, 83, 83, 83, 83, 84, 85, 86,
+ 86, 87, 88, 89, 89, 89, 90, 90, 91, 91,
+ 92, 92, 93, 94, 94, 95, 95, 96, 96, 97,
+ 97, 97, 98, 98, 98, 98, 98, 98, 98, 98,
+ 98, 98, 98, 98, 98, 98, 98, 98, 98, 98,
+ 98, 98, 98, 98, 98, 98, 99, 99, 99, 99,
+ 100, 101, 102, 102, 102, 102, 103, 103, 103, 103,
+ 103, 103, 104, 104, 105, 105, 106, 107, 107, 107,
+ 107, 108, 108, 108, 109, 110, 110, 110, 110, 111,
+ 111, 112, 112, 113, 113, 114, 114, 115, 115, 115,
+ 116, 116, 117, 117, 117, 117, 117, 118, 118, 118,
+ 118, 118, 118, 119, 120, 120, 120, 120, 121, 122,
+ 122, 123, 124, 124, 125, 126, 126, 126, 126, 126,
+ 126, 126, 126, 126, 126, 126, 127, 127, 128, 129,
+ 129, 130, 130, 131, 131, 131, 131, 131, 131, 131,
+ 131, 131, 132, 132, 132, 132, 133, 133, 134, 135,
+ 135, 136, 137
};
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
@@ -1141,9 +1143,9 @@ static const yytype_uint8 yyr2[] =
6, 6, 6, 5, 4, 4, 4, 4, 5, 0,
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,
- 5, 1, 1, 1, 5, 0, 2, 4, 0, 2,
- 1, 1
+ 1, 6, 5, 5, 5, 5, 5, 5, 4, 4,
+ 5, 5, 1, 1, 1, 5, 0, 2, 4, 0,
+ 2, 1, 1
};
@@ -1640,363 +1642,363 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio
switch (yytype)
{
case 5: /* NAT */
-#line 249 "src/ast-parser.y" /* yacc.c:1257 */
+#line 250 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1646 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1648 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
case 6: /* INT */
-#line 249 "src/ast-parser.y" /* yacc.c:1257 */
+#line 250 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1652 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1654 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
case 7: /* FLOAT */
-#line 249 "src/ast-parser.y" /* yacc.c:1257 */
+#line 250 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1658 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1660 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
case 8: /* TEXT */
-#line 249 "src/ast-parser.y" /* yacc.c:1257 */
+#line 250 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1664 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1666 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
case 9: /* VAR */
-#line 249 "src/ast-parser.y" /* yacc.c:1257 */
+#line 250 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1670 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1672 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
case 35: /* OFFSET_EQ_NAT */
-#line 249 "src/ast-parser.y" /* yacc.c:1257 */
+#line 250 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1676 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1678 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
case 36: /* ALIGN_EQ_NAT */
-#line 249 "src/ast-parser.y" /* yacc.c:1257 */
+#line 250 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1682 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1684 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 75: /* non_empty_text_list */
-#line 276 "src/ast-parser.y" /* yacc.c:1257 */
+ case 76: /* non_empty_text_list */
+#line 277 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_text_list(&((*yyvaluep).text_list)); }
-#line 1688 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1690 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 76: /* text_list */
-#line 276 "src/ast-parser.y" /* yacc.c:1257 */
+ case 77: /* text_list */
+#line 277 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_text_list(&((*yyvaluep).text_list)); }
-#line 1694 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1696 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 77: /* quoted_text */
-#line 250 "src/ast-parser.y" /* yacc.c:1257 */
+ case 78: /* quoted_text */
+#line 251 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_string_slice(&((*yyvaluep).text)); }
-#line 1700 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1702 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 78: /* value_type_list */
-#line 277 "src/ast-parser.y" /* yacc.c:1257 */
+ case 79: /* value_type_list */
+#line 278 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).types); }
-#line 1706 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1708 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 80: /* global_type */
-#line 269 "src/ast-parser.y" /* yacc.c:1257 */
+ case 81: /* global_type */
+#line 270 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).global); }
-#line 1712 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1714 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 81: /* func_type */
-#line 267 "src/ast-parser.y" /* yacc.c:1257 */
+ case 82: /* func_type */
+#line 268 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).func_sig); }
-#line 1718 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1720 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 82: /* func_sig */
-#line 267 "src/ast-parser.y" /* yacc.c:1257 */
+ case 83: /* func_sig */
+#line 268 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).func_sig); }
-#line 1724 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1726 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 84: /* memory_sig */
-#line 272 "src/ast-parser.y" /* yacc.c:1257 */
+ case 85: /* memory_sig */
+#line 273 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).memory); }
-#line 1730 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1732 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 86: /* type_use */
-#line 278 "src/ast-parser.y" /* yacc.c:1257 */
+ case 87: /* type_use */
+#line 279 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_var(&((*yyvaluep).var)); }
-#line 1736 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1738 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 88: /* literal */
-#line 251 "src/ast-parser.y" /* yacc.c:1257 */
+ case 89: /* literal */
+#line 252 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_string_slice(&((*yyvaluep).literal).text); }
-#line 1742 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1744 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 89: /* var */
-#line 278 "src/ast-parser.y" /* yacc.c:1257 */
+ case 90: /* var */
+#line 279 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_var(&((*yyvaluep).var)); }
-#line 1748 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1750 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 90: /* var_list */
-#line 279 "src/ast-parser.y" /* yacc.c:1257 */
+ case 91: /* var_list */
+#line 280 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).vars); }
-#line 1754 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1756 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 91: /* bind_var_opt */
-#line 250 "src/ast-parser.y" /* yacc.c:1257 */
+ case 92: /* bind_var_opt */
+#line 251 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_string_slice(&((*yyvaluep).text)); }
-#line 1760 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1762 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 92: /* bind_var */
-#line 250 "src/ast-parser.y" /* yacc.c:1257 */
+ case 93: /* bind_var */
+#line 251 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_string_slice(&((*yyvaluep).text)); }
-#line 1766 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1768 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 93: /* labeling_opt */
-#line 250 "src/ast-parser.y" /* yacc.c:1257 */
+ case 94: /* labeling_opt */
+#line 251 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_string_slice(&((*yyvaluep).text)); }
-#line 1772 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1774 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 96: /* instr */
-#line 264 "src/ast-parser.y" /* yacc.c:1257 */
+ case 97: /* instr */
+#line 265 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_expr_list(((*yyvaluep).expr_list).first); }
-#line 1778 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1780 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 97: /* plain_instr */
-#line 263 "src/ast-parser.y" /* yacc.c:1257 */
+ case 98: /* plain_instr */
+#line 264 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).expr); }
-#line 1784 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1786 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 98: /* block_instr */
-#line 263 "src/ast-parser.y" /* yacc.c:1257 */
+ case 99: /* block_instr */
+#line 264 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).expr); }
-#line 1790 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1792 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 99: /* block */
-#line 253 "src/ast-parser.y" /* yacc.c:1257 */
+ case 100: /* block */
+#line 254 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).block); }
-#line 1796 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1798 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 100: /* expr */
-#line 264 "src/ast-parser.y" /* yacc.c:1257 */
+ case 101: /* expr */
+#line 265 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_expr_list(((*yyvaluep).expr_list).first); }
-#line 1802 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1804 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 101: /* expr1 */
-#line 264 "src/ast-parser.y" /* yacc.c:1257 */
+ case 102: /* expr1 */
+#line 265 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_expr_list(((*yyvaluep).expr_list).first); }
-#line 1808 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1810 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 102: /* if_ */
-#line 264 "src/ast-parser.y" /* yacc.c:1257 */
+ case 103: /* if_ */
+#line 265 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_expr_list(((*yyvaluep).expr_list).first); }
-#line 1814 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1816 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 103: /* instr_list */
-#line 264 "src/ast-parser.y" /* yacc.c:1257 */
+ case 104: /* instr_list */
+#line 265 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_expr_list(((*yyvaluep).expr_list).first); }
-#line 1820 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1822 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 104: /* expr_list */
-#line 264 "src/ast-parser.y" /* yacc.c:1257 */
+ case 105: /* expr_list */
+#line 265 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_expr_list(((*yyvaluep).expr_list).first); }
-#line 1826 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1828 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 105: /* const_expr */
-#line 264 "src/ast-parser.y" /* yacc.c:1257 */
+ case 106: /* const_expr */
+#line 265 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_expr_list(((*yyvaluep).expr_list).first); }
-#line 1832 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1834 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 106: /* func_fields */
-#line 265 "src/ast-parser.y" /* yacc.c:1257 */
+ case 107: /* func_fields */
+#line 266 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_func_fields(((*yyvaluep).func_fields)); }
-#line 1838 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1840 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 107: /* func_body */
-#line 265 "src/ast-parser.y" /* yacc.c:1257 */
+ case 108: /* func_body */
+#line 266 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_func_fields(((*yyvaluep).func_fields)); }
-#line 1844 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1846 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 108: /* func_info */
-#line 266 "src/ast-parser.y" /* yacc.c:1257 */
+ case 109: /* func_info */
+#line 267 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).func); }
-#line 1850 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1852 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 109: /* func */
-#line 260 "src/ast-parser.y" /* yacc.c:1257 */
+ case 110: /* func */
+#line 261 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).exported_func); }
-#line 1856 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1858 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 110: /* offset */
-#line 264 "src/ast-parser.y" /* yacc.c:1257 */
+ case 111: /* offset */
+#line 265 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_expr_list(((*yyvaluep).expr_list).first); }
-#line 1862 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1864 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 111: /* elem */
-#line 258 "src/ast-parser.y" /* yacc.c:1257 */
+ case 112: /* elem */
+#line 259 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).elem_segment); }
-#line 1868 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1870 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 112: /* table */
-#line 262 "src/ast-parser.y" /* yacc.c:1257 */
+ case 113: /* table */
+#line 263 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).exported_table); }
-#line 1874 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1876 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 113: /* data */
-#line 257 "src/ast-parser.y" /* yacc.c:1257 */
+ case 114: /* data */
+#line 258 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).data_segment); }
-#line 1880 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1882 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 114: /* memory */
-#line 261 "src/ast-parser.y" /* yacc.c:1257 */
+ case 115: /* memory */
+#line 262 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).exported_memory); }
-#line 1886 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1888 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 116: /* import_kind */
-#line 270 "src/ast-parser.y" /* yacc.c:1257 */
+ case 117: /* import_kind */
+#line 271 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).import); }
-#line 1892 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1894 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 117: /* import */
-#line 270 "src/ast-parser.y" /* yacc.c:1257 */
+ case 118: /* import */
+#line 271 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).import); }
-#line 1898 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1900 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 118: /* inline_import */
-#line 270 "src/ast-parser.y" /* yacc.c:1257 */
+ case 119: /* inline_import */
+#line 271 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).import); }
-#line 1904 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1906 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 119: /* export_kind */
-#line 259 "src/ast-parser.y" /* yacc.c:1257 */
+ case 120: /* export_kind */
+#line 260 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).export_); }
-#line 1910 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1912 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 120: /* export */
-#line 259 "src/ast-parser.y" /* yacc.c:1257 */
+ case 121: /* export */
+#line 260 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).export_); }
-#line 1916 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1918 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 121: /* inline_export_opt */
-#line 271 "src/ast-parser.y" /* yacc.c:1257 */
+ case 122: /* inline_export_opt */
+#line 272 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).optional_export); }
-#line 1922 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1924 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 122: /* inline_export */
-#line 271 "src/ast-parser.y" /* yacc.c:1257 */
+ case 123: /* inline_export */
+#line 272 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).optional_export); }
-#line 1928 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1930 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 123: /* type_def */
-#line 268 "src/ast-parser.y" /* yacc.c:1257 */
+ case 124: /* type_def */
+#line 269 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).func_type); }
-#line 1934 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1936 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 124: /* start */
-#line 278 "src/ast-parser.y" /* yacc.c:1257 */
+ case 125: /* start */
+#line 279 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_var(&((*yyvaluep).var)); }
-#line 1940 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1942 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 125: /* module_fields */
-#line 273 "src/ast-parser.y" /* yacc.c:1257 */
+ case 126: /* module_fields */
+#line 274 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).module); }
-#line 1946 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1948 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 126: /* raw_module */
-#line 274 "src/ast-parser.y" /* yacc.c:1257 */
+ case 127: /* raw_module */
+#line 275 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).raw_module); }
-#line 1952 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1954 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 127: /* module */
-#line 273 "src/ast-parser.y" /* yacc.c:1257 */
+ case 128: /* module */
+#line 274 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).module); }
-#line 1958 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1960 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 128: /* script_var_opt */
-#line 278 "src/ast-parser.y" /* yacc.c:1257 */
+ case 129: /* script_var_opt */
+#line 279 "src/ast-parser.y" /* yacc.c:1257 */
{ destroy_var(&((*yyvaluep).var)); }
-#line 1964 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1966 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 129: /* action */
-#line 252 "src/ast-parser.y" /* yacc.c:1257 */
+ case 130: /* action */
+#line 253 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).action); }
-#line 1970 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1972 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 130: /* assertion */
-#line 254 "src/ast-parser.y" /* yacc.c:1257 */
+ case 131: /* assertion */
+#line 255 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).command); }
-#line 1976 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1978 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 131: /* cmd */
-#line 254 "src/ast-parser.y" /* yacc.c:1257 */
+ case 132: /* cmd */
+#line 255 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).command); }
-#line 1982 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1984 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 132: /* cmd_list */
-#line 255 "src/ast-parser.y" /* yacc.c:1257 */
+ case 133: /* cmd_list */
+#line 256 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).commands); }
-#line 1988 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1990 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 134: /* const_list */
-#line 256 "src/ast-parser.y" /* yacc.c:1257 */
+ case 135: /* const_list */
+#line 257 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).consts); }
-#line 1994 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 1996 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
- case 135: /* script */
-#line 275 "src/ast-parser.y" /* yacc.c:1257 */
+ case 136: /* script */
+#line 276 "src/ast-parser.y" /* yacc.c:1257 */
{ delete ((*yyvaluep).script); }
-#line 2000 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
+#line 2002 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1257 */
break;
@@ -2288,18 +2290,18 @@ yyreduce:
switch (yyn)
{
case 2:
-#line 292 "src/ast-parser.y" /* yacc.c:1646 */
+#line 293 "src/ast-parser.y" /* yacc.c:1646 */
{
TextListNode* node = new TextListNode();
DUPTEXT(node->text, (yyvsp[0].text));
node->next = nullptr;
(yyval.text_list).first = (yyval.text_list).last = node;
}
-#line 2299 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2301 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 3:
-#line 298 "src/ast-parser.y" /* yacc.c:1646 */
+#line 299 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.text_list) = (yyvsp[-1].text_list);
TextListNode* node = new TextListNode();
@@ -2308,17 +2310,17 @@ yyreduce:
(yyval.text_list).last->next = node;
(yyval.text_list).last = node;
}
-#line 2312 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2314 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 4:
-#line 308 "src/ast-parser.y" /* yacc.c:1646 */
+#line 309 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.text_list).first = (yyval.text_list).last = nullptr; }
-#line 2318 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2320 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 6:
-#line 313 "src/ast-parser.y" /* yacc.c:1646 */
+#line 314 "src/ast-parser.y" /* yacc.c:1646 */
{
TextListNode node;
node.text = (yyvsp[0].text);
@@ -2332,74 +2334,74 @@ yyreduce:
(yyval.text).start = data;
(yyval.text).length = size;
}
-#line 2336 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2338 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 7:
-#line 331 "src/ast-parser.y" /* yacc.c:1646 */
+#line 332 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.types) = new TypeVector(); }
-#line 2342 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2344 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 8:
-#line 332 "src/ast-parser.y" /* yacc.c:1646 */
+#line 333 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.types) = (yyvsp[-1].types);
(yyval.types)->push_back((yyvsp[0].type));
}
-#line 2351 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2353 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 9:
-#line 338 "src/ast-parser.y" /* yacc.c:1646 */
+#line 339 "src/ast-parser.y" /* yacc.c:1646 */
{}
-#line 2357 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2359 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 10:
-#line 341 "src/ast-parser.y" /* yacc.c:1646 */
+#line 342 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.global) = new Global();
(yyval.global)->type = (yyvsp[0].type);
(yyval.global)->mutable_ = false;
}
-#line 2367 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2369 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 11:
-#line 346 "src/ast-parser.y" /* yacc.c:1646 */
+#line 347 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.global) = new Global();
(yyval.global)->type = (yyvsp[-1].type);
(yyval.global)->mutable_ = true;
}
-#line 2377 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2379 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 12:
-#line 353 "src/ast-parser.y" /* yacc.c:1646 */
+#line 354 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.func_sig) = (yyvsp[-1].func_sig); }
-#line 2383 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2385 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 13:
-#line 356 "src/ast-parser.y" /* yacc.c:1646 */
+#line 357 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.func_sig) = new FuncSignature(); }
-#line 2389 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2391 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 14:
-#line 357 "src/ast-parser.y" /* yacc.c:1646 */
+#line 358 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_sig) = new FuncSignature();
(yyval.func_sig)->param_types = std::move(*(yyvsp[-1].types));
delete (yyvsp[-1].types);
}
-#line 2399 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2401 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 15:
-#line 362 "src/ast-parser.y" /* yacc.c:1646 */
+#line 363 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_sig) = new FuncSignature();
(yyval.func_sig)->param_types = std::move(*(yyvsp[-5].types));
@@ -2407,65 +2409,65 @@ yyreduce:
(yyval.func_sig)->result_types = std::move(*(yyvsp[-1].types));
delete (yyvsp[-1].types);
}
-#line 2411 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2413 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 16:
-#line 369 "src/ast-parser.y" /* yacc.c:1646 */
+#line 370 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_sig) = new FuncSignature();
(yyval.func_sig)->result_types = std::move(*(yyvsp[-1].types));
delete (yyvsp[-1].types);
}
-#line 2421 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2423 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 17:
-#line 377 "src/ast-parser.y" /* yacc.c:1646 */
+#line 378 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.table) = new Table();
(yyval.table)->elem_limits = (yyvsp[-1].limits);
}
-#line 2430 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2432 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 18:
-#line 383 "src/ast-parser.y" /* yacc.c:1646 */
+#line 384 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.memory) = new Memory();
(yyval.memory)->page_limits = (yyvsp[0].limits);
}
-#line 2439 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2441 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 19:
-#line 389 "src/ast-parser.y" /* yacc.c:1646 */
+#line 390 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.limits).has_max = false;
(yyval.limits).initial = (yyvsp[0].u64);
(yyval.limits).max = 0;
}
-#line 2449 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2451 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 20:
-#line 394 "src/ast-parser.y" /* yacc.c:1646 */
+#line 395 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.limits).has_max = true;
(yyval.limits).initial = (yyvsp[-1].u64);
(yyval.limits).max = (yyvsp[0].u64);
}
-#line 2459 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2461 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 21:
-#line 401 "src/ast-parser.y" /* yacc.c:1646 */
+#line 402 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.var) = (yyvsp[-1].var); }
-#line 2465 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2467 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 22:
-#line 407 "src/ast-parser.y" /* yacc.c:1646 */
+#line 408 "src/ast-parser.y" /* yacc.c:1646 */
{
if (WABT_FAILED(parse_uint64((yyvsp[0].literal).text.start,
(yyvsp[0].literal).text.start + (yyvsp[0].literal).text.length, &(yyval.u64)))) {
@@ -2474,97 +2476,97 @@ yyreduce:
WABT_PRINTF_STRING_SLICE_ARG((yyvsp[0].literal).text));
}
}
-#line 2478 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2480 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 23:
-#line 418 "src/ast-parser.y" /* yacc.c:1646 */
+#line 419 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.literal).type = (yyvsp[0].literal).type;
DUPTEXT((yyval.literal).text, (yyvsp[0].literal).text);
}
-#line 2487 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2489 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 24:
-#line 422 "src/ast-parser.y" /* yacc.c:1646 */
+#line 423 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.literal).type = (yyvsp[0].literal).type;
DUPTEXT((yyval.literal).text, (yyvsp[0].literal).text);
}
-#line 2496 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2498 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 25:
-#line 426 "src/ast-parser.y" /* yacc.c:1646 */
+#line 427 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.literal).type = (yyvsp[0].literal).type;
DUPTEXT((yyval.literal).text, (yyvsp[0].literal).text);
}
-#line 2505 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2507 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 26:
-#line 433 "src/ast-parser.y" /* yacc.c:1646 */
+#line 434 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.var).loc = (yylsp[0]);
(yyval.var).type = VarType::Index;
(yyval.var).index = (yyvsp[0].u64);
}
-#line 2515 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2517 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 27:
-#line 438 "src/ast-parser.y" /* yacc.c:1646 */
+#line 439 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.var).loc = (yylsp[0]);
(yyval.var).type = VarType::Name;
DUPTEXT((yyval.var).name, (yyvsp[0].text));
}
-#line 2525 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2527 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 28:
-#line 445 "src/ast-parser.y" /* yacc.c:1646 */
+#line 446 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.vars) = new VarVector(); }
-#line 2531 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2533 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 29:
-#line 446 "src/ast-parser.y" /* yacc.c:1646 */
+#line 447 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.vars) = (yyvsp[-1].vars);
(yyval.vars)->push_back((yyvsp[0].var));
}
-#line 2540 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2542 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 30:
-#line 452 "src/ast-parser.y" /* yacc.c:1646 */
+#line 453 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.text)); }
-#line 2546 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2548 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 32:
-#line 456 "src/ast-parser.y" /* yacc.c:1646 */
+#line 457 "src/ast-parser.y" /* yacc.c:1646 */
{ DUPTEXT((yyval.text), (yyvsp[0].text)); }
-#line 2552 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2554 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 33:
-#line 460 "src/ast-parser.y" /* yacc.c:1646 */
+#line 461 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.text)); }
-#line 2558 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2560 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 35:
-#line 465 "src/ast-parser.y" /* yacc.c:1646 */
+#line 466 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.u64) = 0; }
-#line 2564 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2566 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 36:
-#line 466 "src/ast-parser.y" /* yacc.c:1646 */
+#line 467 "src/ast-parser.y" /* yacc.c:1646 */
{
if (WABT_FAILED(parse_int64((yyvsp[0].text).start, (yyvsp[0].text).start + (yyvsp[0].text).length, &(yyval.u64),
ParseIntType::SignedAndUnsigned))) {
@@ -2573,17 +2575,17 @@ yyreduce:
WABT_PRINTF_STRING_SLICE_ARG((yyvsp[0].text)));
}
}
-#line 2577 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2579 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 37:
-#line 476 "src/ast-parser.y" /* yacc.c:1646 */
+#line 477 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.u32) = USE_NATURAL_ALIGNMENT; }
-#line 2583 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2585 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 38:
-#line 477 "src/ast-parser.y" /* yacc.c:1646 */
+#line 478 "src/ast-parser.y" /* yacc.c:1646 */
{
if (WABT_FAILED(parse_int32((yyvsp[0].text).start, (yyvsp[0].text).start + (yyvsp[0].text).length, &(yyval.u32),
ParseIntType::UnsignedOnly))) {
@@ -2592,165 +2594,165 @@ yyreduce:
WABT_PRINTF_STRING_SLICE_ARG((yyvsp[0].text)));
}
}
-#line 2596 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2598 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 39:
-#line 488 "src/ast-parser.y" /* yacc.c:1646 */
+#line 489 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.expr_list) = join_exprs1(&(yylsp[0]), (yyvsp[0].expr)); }
-#line 2602 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2604 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 40:
-#line 489 "src/ast-parser.y" /* yacc.c:1646 */
+#line 490 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.expr_list) = join_exprs1(&(yylsp[0]), (yyvsp[0].expr)); }
-#line 2608 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2610 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 41:
-#line 490 "src/ast-parser.y" /* yacc.c:1646 */
+#line 491 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.expr_list) = (yyvsp[0].expr_list); }
-#line 2614 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2616 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 42:
-#line 493 "src/ast-parser.y" /* yacc.c:1646 */
+#line 494 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateUnreachable();
}
-#line 2622 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2624 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 43:
-#line 496 "src/ast-parser.y" /* yacc.c:1646 */
+#line 497 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateNop();
}
-#line 2630 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2632 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 44:
-#line 499 "src/ast-parser.y" /* yacc.c:1646 */
+#line 500 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateDrop();
}
-#line 2638 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2640 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 45:
-#line 502 "src/ast-parser.y" /* yacc.c:1646 */
+#line 503 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateSelect();
}
-#line 2646 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2648 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 46:
-#line 505 "src/ast-parser.y" /* yacc.c:1646 */
+#line 506 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateBr((yyvsp[0].var));
}
-#line 2654 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2656 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 47:
-#line 508 "src/ast-parser.y" /* yacc.c:1646 */
+#line 509 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateBrIf((yyvsp[0].var));
}
-#line 2662 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2664 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 48:
-#line 511 "src/ast-parser.y" /* yacc.c:1646 */
+#line 512 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateBrTable((yyvsp[-1].vars), (yyvsp[0].var));
}
-#line 2670 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2672 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 49:
-#line 514 "src/ast-parser.y" /* yacc.c:1646 */
+#line 515 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateReturn();
}
-#line 2678 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2680 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 50:
-#line 517 "src/ast-parser.y" /* yacc.c:1646 */
+#line 518 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateCall((yyvsp[0].var));
}
-#line 2686 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2688 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 51:
-#line 520 "src/ast-parser.y" /* yacc.c:1646 */
+#line 521 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateCallIndirect((yyvsp[0].var));
}
-#line 2694 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2696 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 52:
-#line 523 "src/ast-parser.y" /* yacc.c:1646 */
+#line 524 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateGetLocal((yyvsp[0].var));
}
-#line 2702 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2704 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 53:
-#line 526 "src/ast-parser.y" /* yacc.c:1646 */
+#line 527 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateSetLocal((yyvsp[0].var));
}
-#line 2710 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2712 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 54:
-#line 529 "src/ast-parser.y" /* yacc.c:1646 */
+#line 530 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateTeeLocal((yyvsp[0].var));
}
-#line 2718 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2720 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 55:
-#line 532 "src/ast-parser.y" /* yacc.c:1646 */
+#line 533 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateGetGlobal((yyvsp[0].var));
}
-#line 2726 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2728 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 56:
-#line 535 "src/ast-parser.y" /* yacc.c:1646 */
+#line 536 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateSetGlobal((yyvsp[0].var));
}
-#line 2734 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2736 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 57:
-#line 538 "src/ast-parser.y" /* yacc.c:1646 */
+#line 539 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateLoad((yyvsp[-2].opcode), (yyvsp[0].u32), (yyvsp[-1].u64));
}
-#line 2742 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2744 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 58:
-#line 541 "src/ast-parser.y" /* yacc.c:1646 */
+#line 542 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateStore((yyvsp[-2].opcode), (yyvsp[0].u32), (yyvsp[-1].u64));
}
-#line 2750 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2752 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 59:
-#line 544 "src/ast-parser.y" /* yacc.c:1646 */
+#line 545 "src/ast-parser.y" /* yacc.c:1646 */
{
Const const_;
WABT_ZERO_MEMORY(const_);
@@ -2764,145 +2766,145 @@ yyreduce:
delete [] (yyvsp[0].literal).text.start;
(yyval.expr) = Expr::CreateConst(const_);
}
-#line 2768 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2770 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 60:
-#line 557 "src/ast-parser.y" /* yacc.c:1646 */
+#line 558 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateUnary((yyvsp[0].opcode));
}
-#line 2776 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2778 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 61:
-#line 560 "src/ast-parser.y" /* yacc.c:1646 */
+#line 561 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateBinary((yyvsp[0].opcode));
}
-#line 2784 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2786 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 62:
-#line 563 "src/ast-parser.y" /* yacc.c:1646 */
+#line 564 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateCompare((yyvsp[0].opcode));
}
-#line 2792 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2794 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 63:
-#line 566 "src/ast-parser.y" /* yacc.c:1646 */
+#line 567 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateConvert((yyvsp[0].opcode));
}
-#line 2800 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2802 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 64:
-#line 569 "src/ast-parser.y" /* yacc.c:1646 */
+#line 570 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateCurrentMemory();
}
-#line 2808 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2810 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 65:
-#line 572 "src/ast-parser.y" /* yacc.c:1646 */
+#line 573 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateGrowMemory();
}
-#line 2816 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2818 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 66:
-#line 577 "src/ast-parser.y" /* yacc.c:1646 */
+#line 578 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateBlock((yyvsp[-2].block));
(yyval.expr)->block->label = (yyvsp[-3].text);
CHECK_END_LABEL((yylsp[0]), (yyval.expr)->block->label, (yyvsp[0].text));
}
-#line 2826 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2828 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 67:
-#line 582 "src/ast-parser.y" /* yacc.c:1646 */
+#line 583 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateLoop((yyvsp[-2].block));
(yyval.expr)->loop->label = (yyvsp[-3].text);
CHECK_END_LABEL((yylsp[0]), (yyval.expr)->loop->label, (yyvsp[0].text));
}
-#line 2836 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2838 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 68:
-#line 587 "src/ast-parser.y" /* yacc.c:1646 */
+#line 588 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateIf((yyvsp[-2].block), nullptr);
(yyval.expr)->if_.true_->label = (yyvsp[-3].text);
CHECK_END_LABEL((yylsp[0]), (yyval.expr)->if_.true_->label, (yyvsp[0].text));
}
-#line 2846 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2848 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 69:
-#line 592 "src/ast-parser.y" /* yacc.c:1646 */
+#line 593 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr) = Expr::CreateIf((yyvsp[-5].block), (yyvsp[-2].expr_list).first);
(yyval.expr)->if_.true_->label = (yyvsp[-6].text);
CHECK_END_LABEL((yylsp[-3]), (yyval.expr)->if_.true_->label, (yyvsp[-3].text));
CHECK_END_LABEL((yylsp[0]), (yyval.expr)->if_.true_->label, (yyvsp[0].text));
}
-#line 2857 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2859 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 70:
-#line 600 "src/ast-parser.y" /* yacc.c:1646 */
+#line 601 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.block) = new Block();
(yyval.block)->sig = std::move(*(yyvsp[-1].types));
delete (yyvsp[-1].types);
(yyval.block)->first = (yyvsp[0].expr_list).first;
}
-#line 2868 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2870 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 71:
-#line 609 "src/ast-parser.y" /* yacc.c:1646 */
+#line 610 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.expr_list) = (yyvsp[-1].expr_list); }
-#line 2874 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2876 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 72:
-#line 613 "src/ast-parser.y" /* yacc.c:1646 */
+#line 614 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr_list) = join_exprs2(&(yylsp[-1]), &(yyvsp[0].expr_list), (yyvsp[-1].expr));
}
-#line 2882 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2884 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 73:
-#line 616 "src/ast-parser.y" /* yacc.c:1646 */
+#line 617 "src/ast-parser.y" /* yacc.c:1646 */
{
Expr* expr = Expr::CreateBlock((yyvsp[0].block));
expr->block->label = (yyvsp[-1].text);
(yyval.expr_list) = join_exprs1(&(yylsp[-2]), expr);
}
-#line 2892 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2894 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 74:
-#line 621 "src/ast-parser.y" /* yacc.c:1646 */
+#line 622 "src/ast-parser.y" /* yacc.c:1646 */
{
Expr* expr = Expr::CreateLoop((yyvsp[0].block));
expr->loop->label = (yyvsp[-1].text);
(yyval.expr_list) = join_exprs1(&(yylsp[-2]), expr);
}
-#line 2902 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2904 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 75:
-#line 626 "src/ast-parser.y" /* yacc.c:1646 */
+#line 627 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr_list) = (yyvsp[0].expr_list);
Expr* if_ = (yyvsp[0].expr_list).last;
@@ -2911,121 +2913,121 @@ yyreduce:
if_->if_.true_->sig = std::move(*(yyvsp[-1].types));
delete (yyvsp[-1].types);
}
-#line 2915 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2917 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 76:
-#line 636 "src/ast-parser.y" /* yacc.c:1646 */
+#line 637 "src/ast-parser.y" /* yacc.c:1646 */
{
Expr* expr = Expr::CreateIf(new Block((yyvsp[-5].expr_list).first), (yyvsp[-1].expr_list).first);
(yyval.expr_list) = join_exprs1(&(yylsp[-7]), expr);
}
-#line 2924 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2926 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 77:
-#line 640 "src/ast-parser.y" /* yacc.c:1646 */
+#line 641 "src/ast-parser.y" /* yacc.c:1646 */
{
Expr* expr = Expr::CreateIf(new Block((yyvsp[-1].expr_list).first), nullptr);
(yyval.expr_list) = join_exprs1(&(yylsp[-3]), expr);
}
-#line 2933 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2935 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 78:
-#line 644 "src/ast-parser.y" /* yacc.c:1646 */
+#line 645 "src/ast-parser.y" /* yacc.c:1646 */
{
Expr* expr = Expr::CreateIf(new Block((yyvsp[-5].expr_list).first), (yyvsp[-1].expr_list).first);
(yyval.expr_list) = join_exprs2(&(yylsp[-8]), &(yyvsp[-8].expr_list), expr);
}
-#line 2942 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2944 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 79:
-#line 648 "src/ast-parser.y" /* yacc.c:1646 */
+#line 649 "src/ast-parser.y" /* yacc.c:1646 */
{
Expr* expr = Expr::CreateIf(new Block((yyvsp[-1].expr_list).first), nullptr);
(yyval.expr_list) = join_exprs2(&(yylsp[-4]), &(yyvsp[-4].expr_list), expr);
}
-#line 2951 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2953 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 80:
-#line 652 "src/ast-parser.y" /* yacc.c:1646 */
+#line 653 "src/ast-parser.y" /* yacc.c:1646 */
{
Expr* expr = Expr::CreateIf(new Block((yyvsp[-1].expr_list).first), (yyvsp[0].expr_list).first);
(yyval.expr_list) = join_exprs2(&(yylsp[-2]), &(yyvsp[-2].expr_list), expr);
}
-#line 2960 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2962 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 81:
-#line 656 "src/ast-parser.y" /* yacc.c:1646 */
+#line 657 "src/ast-parser.y" /* yacc.c:1646 */
{
Expr* expr = Expr::CreateIf(new Block((yyvsp[0].expr_list).first), nullptr);
(yyval.expr_list) = join_exprs2(&(yylsp[-1]), &(yyvsp[-1].expr_list), expr);
}
-#line 2969 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2971 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 82:
-#line 663 "src/ast-parser.y" /* yacc.c:1646 */
+#line 664 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.expr_list)); }
-#line 2975 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2977 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 83:
-#line 664 "src/ast-parser.y" /* yacc.c:1646 */
+#line 665 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr_list).first = (yyvsp[-1].expr_list).first;
(yyvsp[-1].expr_list).last->next = (yyvsp[0].expr_list).first;
(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.cc" /* yacc.c:1646 */
+#line 2988 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 84:
-#line 672 "src/ast-parser.y" /* yacc.c:1646 */
+#line 673 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.expr_list)); }
-#line 2992 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 2994 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 85:
-#line 673 "src/ast-parser.y" /* yacc.c:1646 */
+#line 674 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr_list).first = (yyvsp[-1].expr_list).first;
(yyvsp[-1].expr_list).last->next = (yyvsp[0].expr_list).first;
(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.cc" /* yacc.c:1646 */
+#line 3005 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 88:
-#line 687 "src/ast-parser.y" /* yacc.c:1646 */
+#line 688 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_fields) = new FuncField();
(yyval.func_fields)->type = FuncFieldType::ResultTypes;
(yyval.func_fields)->types = (yyvsp[-2].types);
(yyval.func_fields)->next = (yyvsp[0].func_fields);
}
-#line 3014 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3016 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 89:
-#line 693 "src/ast-parser.y" /* yacc.c:1646 */
+#line 694 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_fields) = new FuncField();
(yyval.func_fields)->type = FuncFieldType::ParamTypes;
(yyval.func_fields)->types = (yyvsp[-2].types);
(yyval.func_fields)->next = (yyvsp[0].func_fields);
}
-#line 3025 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3027 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 90:
-#line 699 "src/ast-parser.y" /* yacc.c:1646 */
+#line 700 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_fields) = new FuncField();
(yyval.func_fields)->type = FuncFieldType::BoundParam;
@@ -3034,33 +3036,33 @@ 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.cc" /* yacc.c:1646 */
+#line 3040 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 91:
-#line 709 "src/ast-parser.y" /* yacc.c:1646 */
+#line 710 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_fields) = new FuncField();
(yyval.func_fields)->type = FuncFieldType::Exprs;
(yyval.func_fields)->first_expr = (yyvsp[0].expr_list).first;
(yyval.func_fields)->next = nullptr;
}
-#line 3049 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3051 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 92:
-#line 715 "src/ast-parser.y" /* yacc.c:1646 */
+#line 716 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_fields) = new FuncField();
(yyval.func_fields)->type = FuncFieldType::LocalTypes;
(yyval.func_fields)->types = (yyvsp[-2].types);
(yyval.func_fields)->next = (yyvsp[0].func_fields);
}
-#line 3060 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3062 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 93:
-#line 721 "src/ast-parser.y" /* yacc.c:1646 */
+#line 722 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_fields) = new FuncField();
(yyval.func_fields)->type = FuncFieldType::BoundLocal;
@@ -3069,11 +3071,11 @@ 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.cc" /* yacc.c:1646 */
+#line 3075 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 94:
-#line 731 "src/ast-parser.y" /* yacc.c:1646 */
+#line 732 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func) = new Func();
FuncField* field = (yyvsp[0].func_fields);
@@ -3124,11 +3126,11 @@ yyreduce:
field = next;
}
}
-#line 3128 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3130 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 95:
-#line 783 "src/ast-parser.y" /* yacc.c:1646 */
+#line 784 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.exported_func) = new ExportedFunc();
(yyval.exported_func)->func.reset((yyvsp[-1].func));
@@ -3138,11 +3140,11 @@ yyreduce:
(yyval.exported_func)->export_ = std::move(*(yyvsp[-3].optional_export));
delete (yyvsp[-3].optional_export);
}
-#line 3142 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3144 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 96:
-#line 793 "src/ast-parser.y" /* yacc.c:1646 */
+#line 794 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.exported_func) = new ExportedFunc();
(yyval.exported_func)->func.reset((yyvsp[-1].func));
@@ -3150,11 +3152,11 @@ yyreduce:
(yyval.exported_func)->func->decl.type_var = (yyvsp[-2].var);
(yyval.exported_func)->func->name = (yyvsp[-3].text);
}
-#line 3154 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3156 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 97:
-#line 800 "src/ast-parser.y" /* yacc.c:1646 */
+#line 801 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.exported_func) = new ExportedFunc();
(yyval.exported_func)->func.reset((yyvsp[-1].func));
@@ -3162,29 +3164,29 @@ yyreduce:
(yyval.exported_func)->export_ = std::move(*(yyvsp[-2].optional_export));
delete (yyvsp[-2].optional_export);
}
-#line 3166 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3168 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 98:
-#line 808 "src/ast-parser.y" /* yacc.c:1646 */
+#line 809 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.exported_func) = new ExportedFunc();
(yyval.exported_func)->func.reset((yyvsp[-1].func));
(yyval.exported_func)->func->name = (yyvsp[-2].text);
}
-#line 3176 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3178 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 99:
-#line 818 "src/ast-parser.y" /* yacc.c:1646 */
+#line 819 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr_list) = (yyvsp[-1].expr_list);
}
-#line 3184 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3186 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 101:
-#line 825 "src/ast-parser.y" /* yacc.c:1646 */
+#line 826 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.elem_segment) = new ElemSegment();
(yyval.elem_segment)->table_var = (yyvsp[-3].var);
@@ -3192,11 +3194,11 @@ yyreduce:
(yyval.elem_segment)->vars = std::move(*(yyvsp[-1].vars));
delete (yyvsp[-1].vars);
}
-#line 3196 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3198 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 102:
-#line 832 "src/ast-parser.y" /* yacc.c:1646 */
+#line 833 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.elem_segment) = new ElemSegment();
(yyval.elem_segment)->table_var.loc = (yylsp[-3]);
@@ -3206,11 +3208,11 @@ yyreduce:
(yyval.elem_segment)->vars = std::move(*(yyvsp[-1].vars));
delete (yyvsp[-1].vars);
}
-#line 3210 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3212 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 103:
-#line 844 "src/ast-parser.y" /* yacc.c:1646 */
+#line 845 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.exported_table) = new ExportedTable();
(yyval.exported_table)->table.reset((yyvsp[-1].table));
@@ -3219,11 +3221,11 @@ yyreduce:
(yyval.exported_table)->export_ = std::move(*(yyvsp[-2].optional_export));
delete (yyvsp[-2].optional_export);
}
-#line 3223 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3225 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 104:
-#line 853 "src/ast-parser.y" /* yacc.c:1646 */
+#line 854 "src/ast-parser.y" /* yacc.c:1646 */
{
Expr* expr = Expr::CreateConst(Const(Const::I32(), 0));
expr->loc = (yylsp[-8]);
@@ -3242,11 +3244,11 @@ yyreduce:
(yyval.exported_table)->export_ = std::move(*(yyvsp[-6].optional_export));
delete (yyvsp[-6].optional_export);
}
-#line 3246 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3248 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 105:
-#line 874 "src/ast-parser.y" /* yacc.c:1646 */
+#line 875 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.data_segment) = new DataSegment();
(yyval.data_segment)->memory_var = (yyvsp[-3].var);
@@ -3254,11 +3256,11 @@ yyreduce:
dup_text_list(&(yyvsp[-1].text_list), &(yyval.data_segment)->data, &(yyval.data_segment)->size);
destroy_text_list(&(yyvsp[-1].text_list));
}
-#line 3258 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3260 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 106:
-#line 881 "src/ast-parser.y" /* yacc.c:1646 */
+#line 882 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.data_segment) = new DataSegment();
(yyval.data_segment)->memory_var.loc = (yylsp[-3]);
@@ -3268,11 +3270,11 @@ yyreduce:
dup_text_list(&(yyvsp[-1].text_list), &(yyval.data_segment)->data, &(yyval.data_segment)->size);
destroy_text_list(&(yyvsp[-1].text_list));
}
-#line 3272 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3274 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 107:
-#line 893 "src/ast-parser.y" /* yacc.c:1646 */
+#line 894 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.exported_memory) = new ExportedMemory();
(yyval.exported_memory)->memory.reset((yyvsp[-1].memory));
@@ -3281,11 +3283,11 @@ yyreduce:
(yyval.exported_memory)->export_ = std::move(*(yyvsp[-2].optional_export));
delete (yyvsp[-2].optional_export);
}
-#line 3285 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3287 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 108:
-#line 901 "src/ast-parser.y" /* yacc.c:1646 */
+#line 902 "src/ast-parser.y" /* yacc.c:1646 */
{
Expr* expr = Expr::CreateConst(Const(Const::I32(), 0));
expr->loc = (yylsp[-7]);
@@ -3306,11 +3308,11 @@ yyreduce:
(yyval.exported_memory)->export_ = std::move(*(yyvsp[-5].optional_export));
delete (yyvsp[-5].optional_export);
}
-#line 3310 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3312 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 109:
-#line 922 "src/ast-parser.y" /* yacc.c:1646 */
+#line 923 "src/ast-parser.y" /* yacc.c:1646 */
{
Expr* expr = Expr::CreateConst(Const(Const::I32(), 0));
expr->loc = (yylsp[-6]);
@@ -3330,11 +3332,11 @@ yyreduce:
(yyval.exported_memory)->memory->page_limits.has_max = true;
(yyval.exported_memory)->export_.has_export = false;
}
-#line 3334 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3336 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 110:
-#line 944 "src/ast-parser.y" /* yacc.c:1646 */
+#line 945 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.exported_global) = new ExportedGlobal();
(yyval.exported_global)->global.reset((yyvsp[-2].global));
@@ -3343,11 +3345,11 @@ yyreduce:
(yyval.exported_global)->export_ = std::move(*(yyvsp[-3].optional_export));
delete (yyvsp[-3].optional_export);
}
-#line 3347 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3349 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 111:
-#line 952 "src/ast-parser.y" /* yacc.c:1646 */
+#line 953 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.exported_global) = new ExportedGlobal();
(yyval.exported_global)->global.reset((yyvsp[-2].global));
@@ -3355,11 +3357,11 @@ yyreduce:
(yyval.exported_global)->global->init_expr = (yyvsp[-1].expr_list).first;
(yyval.exported_global)->export_.has_export = false;
}
-#line 3359 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3361 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 112:
-#line 965 "src/ast-parser.y" /* yacc.c:1646 */
+#line 966 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = new Import();
(yyval.import)->kind = ExternalKind::Func;
@@ -3368,11 +3370,11 @@ yyreduce:
(yyval.import)->func->decl.has_func_type = true;
(yyval.import)->func->decl.type_var = (yyvsp[-1].var);
}
-#line 3372 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3374 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 113:
-#line 973 "src/ast-parser.y" /* yacc.c:1646 */
+#line 974 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = new Import();
(yyval.import)->kind = ExternalKind::Func;
@@ -3381,54 +3383,54 @@ yyreduce:
(yyval.import)->func->decl.sig = std::move(*(yyvsp[-1].func_sig));
delete (yyvsp[-1].func_sig);
}
-#line 3385 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3387 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 114:
-#line 981 "src/ast-parser.y" /* yacc.c:1646 */
+#line 982 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = new Import();
(yyval.import)->kind = ExternalKind::Table;
(yyval.import)->table = (yyvsp[-1].table);
(yyval.import)->table->name = (yyvsp[-2].text);
}
-#line 3396 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3398 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 115:
-#line 987 "src/ast-parser.y" /* yacc.c:1646 */
+#line 988 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = new Import();
(yyval.import)->kind = ExternalKind::Memory;
(yyval.import)->memory = (yyvsp[-1].memory);
(yyval.import)->memory->name = (yyvsp[-2].text);
}
-#line 3407 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3409 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 116:
-#line 993 "src/ast-parser.y" /* yacc.c:1646 */
+#line 994 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = new Import();
(yyval.import)->kind = ExternalKind::Global;
(yyval.import)->global = (yyvsp[-1].global);
(yyval.import)->global->name = (yyvsp[-2].text);
}
-#line 3418 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3420 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 117:
-#line 1001 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1002 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = (yyvsp[-1].import);
(yyval.import)->module_name = (yyvsp[-3].text);
(yyval.import)->field_name = (yyvsp[-2].text);
}
-#line 3428 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3430 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 118:
-#line 1006 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1007 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = (yyvsp[-2].import);
(yyval.import)->kind = ExternalKind::Func;
@@ -3437,11 +3439,11 @@ yyreduce:
(yyval.import)->func->decl.has_func_type = true;
(yyval.import)->func->decl.type_var = (yyvsp[-1].var);
}
-#line 3441 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3443 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 119:
-#line 1014 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1015 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = (yyvsp[-2].import);
(yyval.import)->kind = ExternalKind::Func;
@@ -3450,158 +3452,158 @@ yyreduce:
(yyval.import)->func->decl.sig = std::move(*(yyvsp[-1].func_sig));
delete (yyvsp[-1].func_sig);
}
-#line 3454 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3456 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 120:
-#line 1022 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1023 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = (yyvsp[-2].import);
(yyval.import)->kind = ExternalKind::Table;
(yyval.import)->table = (yyvsp[-1].table);
(yyval.import)->table->name = (yyvsp[-3].text);
}
-#line 3465 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3467 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 121:
-#line 1028 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1029 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = (yyvsp[-2].import);
(yyval.import)->kind = ExternalKind::Memory;
(yyval.import)->memory = (yyvsp[-1].memory);
(yyval.import)->memory->name = (yyvsp[-3].text);
}
-#line 3476 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3478 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 122:
-#line 1034 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1035 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = (yyvsp[-2].import);
(yyval.import)->kind = ExternalKind::Global;
(yyval.import)->global = (yyvsp[-1].global);
(yyval.import)->global->name = (yyvsp[-3].text);
}
-#line 3487 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3489 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 123:
-#line 1043 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1044 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = new Import();
(yyval.import)->module_name = (yyvsp[-2].text);
(yyval.import)->field_name = (yyvsp[-1].text);
}
-#line 3497 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3499 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 124:
-#line 1051 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1052 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.export_) = new Export();
(yyval.export_)->kind = ExternalKind::Func;
(yyval.export_)->var = (yyvsp[-1].var);
}
-#line 3507 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3509 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 125:
-#line 1056 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1057 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.export_) = new Export();
(yyval.export_)->kind = ExternalKind::Table;
(yyval.export_)->var = (yyvsp[-1].var);
}
-#line 3517 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3519 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 126:
-#line 1061 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1062 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.export_) = new Export();
(yyval.export_)->kind = ExternalKind::Memory;
(yyval.export_)->var = (yyvsp[-1].var);
}
-#line 3527 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3529 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 127:
-#line 1066 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1067 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.export_) = new Export();
(yyval.export_)->kind = ExternalKind::Global;
(yyval.export_)->var = (yyvsp[-1].var);
}
-#line 3537 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3539 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 128:
-#line 1073 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1074 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.export_) = (yyvsp[-1].export_);
(yyval.export_)->name = (yyvsp[-2].text);
}
-#line 3546 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3548 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 129:
-#line 1080 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1081 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.optional_export) = new OptionalExport();
(yyval.optional_export)->has_export = false;
}
-#line 3555 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3557 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 131:
-#line 1087 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1088 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.optional_export) = new OptionalExport();
(yyval.optional_export)->has_export = true;
(yyval.optional_export)->export_.reset(new Export());
(yyval.optional_export)->export_->name = (yyvsp[-1].text);
}
-#line 3566 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3568 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 132:
-#line 1099 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1100 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_type) = new FuncType();
(yyval.func_type)->sig = std::move(*(yyvsp[-1].func_sig));
delete (yyvsp[-1].func_sig);
}
-#line 3576 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3578 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 133:
-#line 1104 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1105 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_type) = new FuncType();
(yyval.func_type)->name = (yyvsp[-2].text);
(yyval.func_type)->sig = std::move(*(yyvsp[-1].func_sig));
delete (yyvsp[-1].func_sig);
}
-#line 3587 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3589 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 134:
-#line 1113 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1114 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.var) = (yyvsp[-1].var); }
-#line 3593 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3595 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 135:
-#line 1117 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1118 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = new Module();
}
-#line 3601 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3603 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 136:
-#line 1120 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1121 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
ModuleField* field;
@@ -3609,11 +3611,11 @@ yyreduce:
APPEND_ITEM_TO_VECTOR((yyval.module), func_types, field->func_type);
INSERT_BINDING((yyval.module), func_type, func_types, (yylsp[0]), (yyvsp[0].func_type)->name);
}
-#line 3613 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3615 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 137:
-#line 1127 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1128 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
ModuleField* field;
@@ -3623,11 +3625,11 @@ yyreduce:
APPEND_INLINE_EXPORT((yyval.module), Global, (yylsp[0]), (yyvsp[0].exported_global), (yyval.module)->globals.size() - 1);
delete (yyvsp[0].exported_global);
}
-#line 3627 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3629 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 138:
-#line 1136 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1137 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
ModuleField* field;
@@ -3645,11 +3647,11 @@ yyreduce:
}
delete (yyvsp[0].exported_table);
}
-#line 3649 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3651 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 139:
-#line 1153 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1154 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
ModuleField* field;
@@ -3667,11 +3669,11 @@ yyreduce:
}
delete (yyvsp[0].exported_memory);
}
-#line 3671 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3673 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 140:
-#line 1170 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1171 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
ModuleField* field;
@@ -3682,44 +3684,44 @@ yyreduce:
APPEND_INLINE_EXPORT((yyval.module), Func, (yylsp[0]), (yyvsp[0].exported_func), (yyval.module)->funcs.size() - 1);
delete (yyvsp[0].exported_func);
}
-#line 3686 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3688 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 141:
-#line 1180 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1181 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
ModuleField* field;
APPEND_FIELD_TO_LIST((yyval.module), field, ElemSegment, elem_segment, (yylsp[0]), (yyvsp[0].elem_segment));
APPEND_ITEM_TO_VECTOR((yyval.module), elem_segments, field->elem_segment);
}
-#line 3697 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3699 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 142:
-#line 1186 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1187 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
ModuleField* field;
APPEND_FIELD_TO_LIST((yyval.module), field, DataSegment, data_segment, (yylsp[0]), (yyvsp[0].data_segment));
APPEND_ITEM_TO_VECTOR((yyval.module), data_segments, field->data_segment);
}
-#line 3708 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3710 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 143:
-#line 1192 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1193 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
ModuleField* field;
APPEND_FIELD_TO_LIST((yyval.module), field, Start, start, (yylsp[0]), (yyvsp[0].var));
(yyval.module)->start = &field->start;
}
-#line 3719 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3721 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 144:
-#line 1198 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1199 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
ModuleField* field;
@@ -3753,11 +3755,11 @@ yyreduce:
}
APPEND_ITEM_TO_VECTOR((yyval.module), imports, field->import);
}
-#line 3757 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3759 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 145:
-#line 1231 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1232 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
ModuleField* field;
@@ -3765,11 +3767,11 @@ yyreduce:
APPEND_ITEM_TO_VECTOR((yyval.module), exports, field->export_);
INSERT_BINDING((yyval.module), export, exports, (yylsp[0]), field->export_->name);
}
-#line 3769 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3771 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 146:
-#line 1241 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1242 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.raw_module) = new RawModule();
(yyval.raw_module)->type = RawModuleType::Text;
@@ -3790,11 +3792,11 @@ yyreduce:
}
}
}
-#line 3794 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3796 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 147:
-#line 1261 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1262 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.raw_module) = new RawModule();
(yyval.raw_module)->type = RawModuleType::Binary;
@@ -3803,11 +3805,11 @@ yyreduce:
dup_text_list(&(yyvsp[-1].text_list), &(yyval.raw_module)->binary.data, &(yyval.raw_module)->binary.size);
destroy_text_list(&(yyvsp[-1].text_list));
}
-#line 3807 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3809 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 148:
-#line 1272 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1273 "src/ast-parser.y" /* yacc.c:1646 */
{
if ((yyvsp[0].raw_module)->type == RawModuleType::Text) {
(yyval.module) = (yyvsp[0].raw_module)->text;
@@ -3831,31 +3833,31 @@ yyreduce:
}
delete (yyvsp[0].raw_module);
}
-#line 3835 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3837 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 149:
-#line 1300 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1301 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.var));
(yyval.var).type = VarType::Index;
(yyval.var).index = INVALID_VAR_INDEX;
}
-#line 3845 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3847 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 150:
-#line 1305 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1306 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.var));
(yyval.var).type = VarType::Name;
DUPTEXT((yyval.var).name, (yyvsp[0].text));
}
-#line 3855 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3857 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 151:
-#line 1313 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1314 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.action) = new Action();
(yyval.action)->loc = (yylsp[-4]);
@@ -3866,11 +3868,11 @@ yyreduce:
(yyval.action)->invoke->args = std::move(*(yyvsp[-1].consts));
delete (yyvsp[-1].consts);
}
-#line 3870 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3872 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 152:
-#line 1323 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1324 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.action) = new Action();
(yyval.action)->loc = (yylsp[-3]);
@@ -3878,118 +3880,128 @@ yyreduce:
(yyval.action)->type = ActionType::Get;
(yyval.action)->name = (yyvsp[-1].text);
}
-#line 3882 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3884 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 153:
-#line 1333 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1334 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.command) = new Command();
(yyval.command)->type = CommandType::AssertMalformed;
(yyval.command)->assert_malformed.module = (yyvsp[-2].raw_module);
(yyval.command)->assert_malformed.text = (yyvsp[-1].text);
}
-#line 3893 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3895 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 154:
-#line 1339 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1340 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.command) = new Command();
(yyval.command)->type = CommandType::AssertInvalid;
(yyval.command)->assert_invalid.module = (yyvsp[-2].raw_module);
(yyval.command)->assert_invalid.text = (yyvsp[-1].text);
}
-#line 3904 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3906 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 155:
-#line 1345 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1346 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.command) = new Command();
(yyval.command)->type = CommandType::AssertUnlinkable;
(yyval.command)->assert_unlinkable.module = (yyvsp[-2].raw_module);
(yyval.command)->assert_unlinkable.text = (yyvsp[-1].text);
}
-#line 3915 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3917 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 156:
-#line 1351 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1352 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.command) = new Command();
(yyval.command)->type = CommandType::AssertUninstantiable;
(yyval.command)->assert_uninstantiable.module = (yyvsp[-2].raw_module);
(yyval.command)->assert_uninstantiable.text = (yyvsp[-1].text);
}
-#line 3926 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3928 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 157:
-#line 1357 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1358 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.command) = new Command();
(yyval.command)->type = CommandType::AssertReturn;
(yyval.command)->assert_return.action = (yyvsp[-2].action);
(yyval.command)->assert_return.expected = (yyvsp[-1].consts);
}
-#line 3937 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3939 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 158:
-#line 1363 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1364 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.command) = new Command();
- (yyval.command)->type = CommandType::AssertReturnNan;
- (yyval.command)->assert_return_nan.action = (yyvsp[-1].action);
+ (yyval.command)->type = CommandType::AssertReturnCanonicalNan;
+ (yyval.command)->assert_return_canonical_nan.action = (yyvsp[-1].action);
}
-#line 3947 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3949 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
case 159:
-#line 1368 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1369 "src/ast-parser.y" /* yacc.c:1646 */
+ {
+ (yyval.command) = new Command();
+ (yyval.command)->type = CommandType::AssertReturnArithmeticNan;
+ (yyval.command)->assert_return_arithmetic_nan.action = (yyvsp[-1].action);
+ }
+#line 3959 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+ break;
+
+ case 160:
+#line 1374 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.command) = new Command();
(yyval.command)->type = CommandType::AssertTrap;
(yyval.command)->assert_trap.action = (yyvsp[-2].action);
(yyval.command)->assert_trap.text = (yyvsp[-1].text);
}
-#line 3958 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3970 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
- case 160:
-#line 1374 "src/ast-parser.y" /* yacc.c:1646 */
+ case 161:
+#line 1380 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.command) = new Command();
(yyval.command)->type = CommandType::AssertExhaustion;
(yyval.command)->assert_trap.action = (yyvsp[-2].action);
(yyval.command)->assert_trap.text = (yyvsp[-1].text);
}
-#line 3969 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3981 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
- case 161:
-#line 1383 "src/ast-parser.y" /* yacc.c:1646 */
+ case 162:
+#line 1389 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.command) = new Command();
(yyval.command)->type = CommandType::Action;
(yyval.command)->action = (yyvsp[0].action);
}
-#line 3979 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 3991 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
- case 163:
-#line 1389 "src/ast-parser.y" /* yacc.c:1646 */
+ case 164:
+#line 1395 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.command) = new Command();
(yyval.command)->type = CommandType::Module;
(yyval.command)->module = (yyvsp[0].module);
}
-#line 3989 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 4001 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
- case 164:
-#line 1394 "src/ast-parser.y" /* yacc.c:1646 */
+ case 165:
+#line 1400 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.command) = new Command();
(yyval.command)->type = CommandType::Register;
@@ -3997,26 +4009,26 @@ yyreduce:
(yyval.command)->register_.var = (yyvsp[-1].var);
(yyval.command)->register_.var.loc = (yylsp[-1]);
}
-#line 4001 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 4013 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
- case 165:
-#line 1403 "src/ast-parser.y" /* yacc.c:1646 */
+ case 166:
+#line 1409 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.commands) = new CommandPtrVector(); }
-#line 4007 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 4019 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
- case 166:
-#line 1404 "src/ast-parser.y" /* yacc.c:1646 */
+ case 167:
+#line 1410 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.commands) = (yyvsp[-1].commands);
(yyval.commands)->emplace_back((yyvsp[0].command));
}
-#line 4016 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 4028 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
- case 167:
-#line 1411 "src/ast-parser.y" /* yacc.c:1646 */
+ case 168:
+#line 1417 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.const_).loc = (yylsp[-2]);
if (WABT_FAILED(parse_const((yyvsp[-2].type), (yyvsp[-1].literal).type, (yyvsp[-1].literal).text.start,
@@ -4027,26 +4039,26 @@ yyreduce:
}
delete [] (yyvsp[-1].literal).text.start;
}
-#line 4031 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 4043 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
- case 168:
-#line 1423 "src/ast-parser.y" /* yacc.c:1646 */
+ case 169:
+#line 1429 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.consts) = new ConstVector(); }
-#line 4037 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 4049 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
- case 169:
-#line 1424 "src/ast-parser.y" /* yacc.c:1646 */
+ case 170:
+#line 1430 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.consts) = (yyvsp[-1].consts);
(yyval.consts)->push_back((yyvsp[0].const_));
}
-#line 4046 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 4058 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
- case 170:
-#line 1431 "src/ast-parser.y" /* yacc.c:1646 */
+ case 171:
+#line 1437 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.script) = new Script();
(yyval.script)->commands = std::move(*(yyvsp[0].commands));
@@ -4073,8 +4085,13 @@ yyreduce:
case CommandType::AssertReturn:
module_var = &command.assert_return.action->module_var;
goto has_module_var;
- case CommandType::AssertReturnNan:
- module_var = &command.assert_return_nan.action->module_var;
+ case CommandType::AssertReturnCanonicalNan:
+ module_var =
+ &command.assert_return_canonical_nan.action->module_var;
+ goto has_module_var;
+ case CommandType::AssertReturnArithmeticNan:
+ module_var =
+ &command.assert_return_arithmetic_nan.action->module_var;
goto has_module_var;
case CommandType::AssertTrap:
case CommandType::AssertExhaustion:
@@ -4103,11 +4120,11 @@ yyreduce:
}
parser->script = (yyval.script);
}
-#line 4107 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 4124 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
break;
-#line 4111 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
+#line 4128 "src/prebuilt/ast-parser-gen.cc" /* yacc.c:1646 */
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
@@ -4342,7 +4359,7 @@ yyreturn:
#endif
return yyresult;
}
-#line 1495 "src/ast-parser.y" /* yacc.c:1906 */
+#line 1506 "src/ast-parser.y" /* yacc.c:1906 */
void append_expr_list(ExprList* expr_list, ExprList* expr) {