summaryrefslogtreecommitdiff
path: root/src/prebuilt/ast-parser-gen.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/prebuilt/ast-parser-gen.c')
-rw-r--r--src/prebuilt/ast-parser-gen.c1301
1 files changed, 643 insertions, 658 deletions
diff --git a/src/prebuilt/ast-parser-gen.c b/src/prebuilt/ast-parser-gen.c
index 0a1dcbc2..be963467 100644
--- a/src/prebuilt/ast-parser-gen.c
+++ b/src/prebuilt/ast-parser-gen.c
@@ -77,7 +77,6 @@
#include <stdio.h>
#include <stdlib.h>
-#include "allocator.h"
#include "ast-parser.h"
#include "ast-parser-lexer-shared.h"
#include "binary-reader-ast.h"
@@ -97,8 +96,8 @@
defines are available. */
#define YYMAXDEPTH 10000000
-#define DUPTEXT(dst, src) \
- (dst).start = wabt_strndup(parser->allocator, (src).start, (src).length); \
+#define DUPTEXT(dst, src) \
+ (dst).start = wabt_strndup((src).start, (src).length); \
(dst).length = (src).length
#define YYLLOC_DEFAULT(Current, Rhs, N) \
@@ -118,27 +117,26 @@
#define APPEND_FIELD_TO_LIST(module, field, KIND, kind, loc_, item) \
do { \
- field = wabt_append_module_field(parser->allocator, module); \
+ field = wabt_append_module_field(module); \
field->loc = loc_; \
field->type = WABT_MODULE_FIELD_TYPE_##KIND; \
field->kind = item; \
} while (0)
-#define APPEND_ITEM_TO_VECTOR(module, Kind, kind, kinds, item_ptr) \
- do { \
- Wabt##Kind* dummy = item_ptr; \
- wabt_append_##kind##_ptr_value(parser->allocator, &(module)->kinds, \
- &dummy); \
+#define APPEND_ITEM_TO_VECTOR(module, Kind, kind, kinds, item_ptr) \
+ do { \
+ Wabt##Kind* dummy = item_ptr; \
+ wabt_append_##kind##_ptr_value(&(module)->kinds, &dummy); \
} while (0)
-#define INSERT_BINDING(module, kind, kinds, loc_, name) \
- do \
- if ((name).start) { \
- WabtBinding* binding = wabt_insert_binding( \
- parser->allocator, &(module)->kind##_bindings, &(name)); \
- binding->loc = loc_; \
- binding->index = (module)->kinds.size - 1; \
- } \
+#define INSERT_BINDING(module, kind, kinds, loc_, name) \
+ do \
+ if ((name).start) { \
+ WabtBinding* binding = \
+ wabt_insert_binding(&(module)->kind##_bindings, &(name)); \
+ binding->loc = loc_; \
+ binding->index = (module)->kinds.size - 1; \
+ } \
while (0)
#define APPEND_INLINE_EXPORT(module, KIND, loc_, value, index_) \
@@ -181,12 +179,12 @@
WABT_PRINTF_STRING_SLICE_ARG(begin_label), \
WABT_PRINTF_STRING_SLICE_ARG(end_label)); \
} \
- wabt_destroy_string_slice(parser->allocator, &(end_label)); \
+ wabt_destroy_string_slice(&(end_label)); \
} \
} while (0)
-#define YYMALLOC(size) wabt_alloc(parser->allocator, size, WABT_DEFAULT_ALIGN)
-#define YYFREE(p) wabt_free(parser->allocator, p)
+#define YYMALLOC(size) wabt_alloc(size)
+#define YYFREE(p) wabt_free(p)
#define USE_NATURAL_ALIGNMENT (~0)
@@ -194,40 +192,39 @@ static WabtExprList join_exprs1(WabtLocation* loc, WabtExpr* expr1);
static WabtExprList join_exprs2(WabtLocation* loc, WabtExprList* expr1,
WabtExpr* expr2);
-static WabtFuncField* new_func_field(WabtAllocator* allocator) {
- return wabt_alloc_zero(allocator, sizeof(WabtFuncField), WABT_DEFAULT_ALIGN);
+static WabtFuncField* new_func_field(void) {
+ return wabt_alloc_zero(sizeof(WabtFuncField));
}
-static WabtFunc* new_func(WabtAllocator* allocator) {
- return wabt_alloc_zero(allocator, sizeof(WabtFunc), WABT_DEFAULT_ALIGN);
+static WabtFunc* new_func(void) {
+ return wabt_alloc_zero(sizeof(WabtFunc));
}
-static WabtCommand* new_command(WabtAllocator* allocator) {
- return wabt_alloc_zero(allocator, sizeof(WabtCommand), WABT_DEFAULT_ALIGN);
+static WabtCommand* new_command(void) {
+ return wabt_alloc_zero(sizeof(WabtCommand));
}
-static WabtModule* new_module(WabtAllocator* allocator) {
- return wabt_alloc_zero(allocator, sizeof(WabtModule), WABT_DEFAULT_ALIGN);
+static WabtModule* new_module(void) {
+ return wabt_alloc_zero(sizeof(WabtModule));
}
-static WabtImport* new_import(WabtAllocator* allocator) {
- return wabt_alloc_zero(allocator, sizeof(WabtImport), WABT_DEFAULT_ALIGN);
+static WabtImport* new_import(void) {
+ return wabt_alloc_zero(sizeof(WabtImport));
}
-static WabtTextListNode* new_text_list_node(WabtAllocator* allocator) {
- return wabt_alloc_zero(allocator, sizeof(WabtTextListNode),
- WABT_DEFAULT_ALIGN);
+static WabtTextListNode* new_text_list_node(void) {
+ return wabt_alloc_zero(sizeof(WabtTextListNode));
}
static WabtResult parse_const(WabtType type, WabtLiteralType literal_type,
const char* s, const char* end, WabtConst* out);
-static void dup_text_list(WabtAllocator*, WabtTextList* text_list,
- void** out_data, size_t* out_size);
+static void dup_text_list(WabtTextList * text_list, void** out_data,
+ size_t* out_size);
static WabtBool is_empty_signature(WabtFuncSignature* sig);
-static void append_implicit_func_declaration(WabtAllocator*, WabtLocation*,
- WabtModule*, WabtFuncDeclaration*);
+static void append_implicit_func_declaration(WabtLocation*, WabtModule*,
+ WabtFuncDeclaration*);
typedef struct BinaryErrorCallbackData {
WabtLocation* loc;
@@ -241,7 +238,7 @@ static void on_read_binary_error(uint32_t offset, const char* error,
#define wabt_ast_parser_lex wabt_ast_lexer_lex
-#line 245 "src/prebuilt/ast-parser-gen.c" /* yacc.c:339 */
+#line 242 "src/prebuilt/ast-parser-gen.c" /* yacc.c:339 */
# ifndef YY_NULLPTR
# if defined __cplusplus && 201103L <= __cplusplus
@@ -388,7 +385,7 @@ int wabt_ast_parser_parse (WabtAstLexer* lexer, WabtAstParser* parser);
/* Copy the second part of user declarations. */
-#line 392 "src/prebuilt/ast-parser-gen.c" /* yacc.c:358 */
+#line 389 "src/prebuilt/ast-parser-gen.c" /* yacc.c:358 */
#ifdef short
# undef short
@@ -694,24 +691,24 @@ static const yytype_uint8 yytranslate[] =
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 298, 298, 304, 314, 315, 319, 337, 338, 344,
- 347, 352, 359, 362, 363, 367, 372, 379, 382, 385,
- 390, 397, 403, 414, 418, 422, 429, 434, 441, 442,
- 448, 449, 452, 456, 457, 461, 462, 472, 473, 484,
- 485, 486, 489, 492, 495, 498, 501, 505, 509, 514,
- 517, 521, 525, 529, 533, 537, 541, 545, 551, 557,
- 569, 573, 577, 581, 585, 588, 593, 599, 605, 611,
- 621, 629, 633, 636, 642, 648, 657, 663, 668, 674,
- 679, 685, 693, 694, 702, 703, 711, 716, 717, 723,
- 729, 739, 745, 751, 761, 816, 825, 832, 839, 849,
- 852, 856, 862, 873, 879, 899, 906, 918, 925, 946,
- 969, 976, 989, 996, 1002, 1008, 1014, 1022, 1027, 1034,
- 1040, 1046, 1052, 1061, 1069, 1074, 1079, 1084, 1091, 1098,
- 1102, 1105, 1116, 1120, 1127, 1131, 1134, 1142, 1150, 1167,
- 1183, 1194, 1201, 1208, 1214, 1254, 1264, 1286, 1296, 1322,
- 1327, 1335, 1343, 1353, 1359, 1365, 1371, 1377, 1383, 1388,
- 1394, 1403, 1408, 1409, 1415, 1424, 1425, 1433, 1445, 1446,
- 1453, 1519
+ 0, 295, 295, 301, 311, 312, 316, 334, 335, 341,
+ 344, 349, 356, 359, 360, 364, 369, 376, 379, 382,
+ 387, 394, 400, 411, 415, 419, 426, 431, 438, 439,
+ 445, 446, 449, 453, 454, 458, 459, 469, 470, 481,
+ 482, 483, 486, 489, 492, 495, 498, 502, 506, 511,
+ 514, 518, 522, 526, 530, 534, 538, 542, 548, 554,
+ 566, 570, 574, 578, 582, 585, 590, 596, 602, 608,
+ 618, 626, 630, 633, 639, 645, 654, 660, 665, 671,
+ 676, 682, 690, 691, 699, 700, 708, 713, 714, 720,
+ 726, 736, 742, 748, 758, 812, 821, 828, 835, 845,
+ 848, 852, 858, 869, 875, 895, 902, 914, 921, 941,
+ 963, 970, 983, 990, 996, 1002, 1008, 1016, 1021, 1028,
+ 1034, 1040, 1046, 1055, 1063, 1068, 1073, 1078, 1085, 1092,
+ 1096, 1099, 1110, 1114, 1121, 1125, 1128, 1136, 1144, 1161,
+ 1177, 1187, 1194, 1201, 1207, 1246, 1256, 1278, 1288, 1314,
+ 1319, 1327, 1335, 1345, 1351, 1357, 1363, 1369, 1375, 1380,
+ 1386, 1395, 1400, 1401, 1407, 1416, 1417, 1425, 1437, 1438,
+ 1445, 1509
};
#endif
@@ -1650,333 +1647,333 @@ yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocatio
switch (yytype)
{
case 5: /* NAT */
-#line 259 "src/ast-parser.y" /* yacc.c:1257 */
+#line 256 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1656 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 1653 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 6: /* INT */
-#line 259 "src/ast-parser.y" /* yacc.c:1257 */
+#line 256 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1662 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 1659 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 7: /* FLOAT */
-#line 259 "src/ast-parser.y" /* yacc.c:1257 */
+#line 256 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1668 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 1665 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 8: /* TEXT */
-#line 259 "src/ast-parser.y" /* yacc.c:1257 */
+#line 256 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1674 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 1671 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 9: /* VAR */
-#line 259 "src/ast-parser.y" /* yacc.c:1257 */
+#line 256 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1680 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 1677 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 35: /* OFFSET_EQ_NAT */
-#line 259 "src/ast-parser.y" /* yacc.c:1257 */
+#line 256 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1686 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 1683 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 36: /* ALIGN_EQ_NAT */
-#line 259 "src/ast-parser.y" /* yacc.c:1257 */
+#line 256 "src/ast-parser.y" /* yacc.c:1257 */
{}
-#line 1692 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 1689 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 75: /* non_empty_text_list */
-#line 282 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_text_list(parser->allocator, &((*yyvaluep).text_list)); }
-#line 1698 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 279 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_text_list(&((*yyvaluep).text_list)); }
+#line 1695 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 76: /* text_list */
-#line 282 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_text_list(parser->allocator, &((*yyvaluep).text_list)); }
-#line 1704 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 279 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_text_list(&((*yyvaluep).text_list)); }
+#line 1701 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 77: /* quoted_text */
-#line 281 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_string_slice(parser->allocator, &((*yyvaluep).text)); }
-#line 1710 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 278 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_string_slice(&((*yyvaluep).text)); }
+#line 1707 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 78: /* value_type_list */
-#line 283 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_type_vector(parser->allocator, &((*yyvaluep).types)); }
-#line 1716 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 280 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_type_vector(&((*yyvaluep).types)); }
+#line 1713 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 81: /* func_type */
-#line 273 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_func_signature(parser->allocator, &((*yyvaluep).func_sig)); }
-#line 1722 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 270 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_func_signature(&((*yyvaluep).func_sig)); }
+#line 1719 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 82: /* func_sig */
-#line 273 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_func_signature(parser->allocator, &((*yyvaluep).func_sig)); }
-#line 1728 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 270 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_func_signature(&((*yyvaluep).func_sig)); }
+#line 1725 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 86: /* type_use */
-#line 285 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_var(parser->allocator, &((*yyvaluep).var)); }
-#line 1734 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 282 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_var(&((*yyvaluep).var)); }
+#line 1731 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 88: /* literal */
-#line 279 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_string_slice(parser->allocator, &((*yyvaluep).literal).text); }
-#line 1740 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 276 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_string_slice(&((*yyvaluep).literal).text); }
+#line 1737 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 89: /* var */
-#line 285 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_var(parser->allocator, &((*yyvaluep).var)); }
-#line 1746 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 282 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_var(&((*yyvaluep).var)); }
+#line 1743 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 90: /* var_list */
-#line 284 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_var_vector_and_elements(parser->allocator, &((*yyvaluep).vars)); }
-#line 1752 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 281 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_var_vector_and_elements(&((*yyvaluep).vars)); }
+#line 1749 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 91: /* bind_var_opt */
-#line 281 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_string_slice(parser->allocator, &((*yyvaluep).text)); }
-#line 1758 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 278 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_string_slice(&((*yyvaluep).text)); }
+#line 1755 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 92: /* bind_var */
-#line 281 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_string_slice(parser->allocator, &((*yyvaluep).text)); }
-#line 1764 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 278 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_string_slice(&((*yyvaluep).text)); }
+#line 1761 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 93: /* labeling_opt */
-#line 281 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_string_slice(parser->allocator, &((*yyvaluep).text)); }
-#line 1770 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 278 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_string_slice(&((*yyvaluep).text)); }
+#line 1767 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 96: /* instr */
-#line 270 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); }
-#line 1776 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 267 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_expr_list(((*yyvaluep).expr_list).first); }
+#line 1773 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 97: /* plain_instr */
-#line 269 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_expr(parser->allocator, ((*yyvaluep).expr)); }
-#line 1782 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 266 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_expr(((*yyvaluep).expr)); }
+#line 1779 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 98: /* block_instr */
-#line 269 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_expr(parser->allocator, ((*yyvaluep).expr)); }
-#line 1788 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 266 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_expr(((*yyvaluep).expr)); }
+#line 1785 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 99: /* block */
-#line 260 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_block(parser->allocator, &((*yyvaluep).block)); }
-#line 1794 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 257 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_block(&((*yyvaluep).block)); }
+#line 1791 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 100: /* expr */
-#line 270 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); }
-#line 1800 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 267 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_expr_list(((*yyvaluep).expr_list).first); }
+#line 1797 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 101: /* expr1 */
-#line 270 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); }
-#line 1806 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 267 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_expr_list(((*yyvaluep).expr_list).first); }
+#line 1803 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 102: /* if_ */
-#line 270 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); }
-#line 1812 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 267 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_expr_list(((*yyvaluep).expr_list).first); }
+#line 1809 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 103: /* instr_list */
-#line 270 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); }
-#line 1818 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 267 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_expr_list(((*yyvaluep).expr_list).first); }
+#line 1815 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 104: /* expr_list */
-#line 270 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); }
-#line 1824 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 267 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_expr_list(((*yyvaluep).expr_list).first); }
+#line 1821 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 105: /* const_expr */
-#line 270 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); }
-#line 1830 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 267 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_expr_list(((*yyvaluep).expr_list).first); }
+#line 1827 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 106: /* func_fields */
-#line 271 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_func_fields(parser->allocator, ((*yyvaluep).func_fields)); }
-#line 1836 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 268 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_func_fields(((*yyvaluep).func_fields)); }
+#line 1833 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 107: /* func_body */
-#line 271 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_func_fields(parser->allocator, ((*yyvaluep).func_fields)); }
-#line 1842 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 268 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_func_fields(((*yyvaluep).func_fields)); }
+#line 1839 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 108: /* func_info */
-#line 272 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_func(parser->allocator, ((*yyvaluep).func)); wabt_free(parser->allocator, ((*yyvaluep).func)); }
-#line 1848 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 269 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_func(((*yyvaluep).func)); wabt_free(((*yyvaluep).func)); }
+#line 1845 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 109: /* func */
-#line 266 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_exported_func(parser->allocator, &((*yyvaluep).exported_func)); }
-#line 1854 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 263 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_exported_func(&((*yyvaluep).exported_func)); }
+#line 1851 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 110: /* offset */
-#line 270 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_expr_list(parser->allocator, ((*yyvaluep).expr_list).first); }
-#line 1860 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 267 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_expr_list(((*yyvaluep).expr_list).first); }
+#line 1857 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 111: /* elem */
-#line 264 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_elem_segment(parser->allocator, &((*yyvaluep).elem_segment)); }
-#line 1866 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 261 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_elem_segment(&((*yyvaluep).elem_segment)); }
+#line 1863 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 112: /* table */
-#line 268 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_exported_table(parser->allocator, &((*yyvaluep).exported_table)); }
-#line 1872 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 265 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_exported_table(&((*yyvaluep).exported_table)); }
+#line 1869 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 113: /* data */
-#line 276 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_data_segment(parser->allocator, &((*yyvaluep).data_segment)); }
-#line 1878 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 273 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_data_segment(&((*yyvaluep).data_segment)); }
+#line 1875 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 114: /* memory */
-#line 267 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_exported_memory(parser->allocator, &((*yyvaluep).exported_memory)); }
-#line 1884 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 264 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_exported_memory(&((*yyvaluep).exported_memory)); }
+#line 1881 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 116: /* import_kind */
-#line 275 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_import(parser->allocator, ((*yyvaluep).import)); wabt_free(parser->allocator, ((*yyvaluep).import)); }
-#line 1890 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 272 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_import(((*yyvaluep).import)); wabt_free(((*yyvaluep).import)); }
+#line 1887 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 117: /* import */
-#line 275 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_import(parser->allocator, ((*yyvaluep).import)); wabt_free(parser->allocator, ((*yyvaluep).import)); }
-#line 1896 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 272 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_import(((*yyvaluep).import)); wabt_free(((*yyvaluep).import)); }
+#line 1893 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 118: /* inline_import */
-#line 275 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_import(parser->allocator, ((*yyvaluep).import)); wabt_free(parser->allocator, ((*yyvaluep).import)); }
-#line 1902 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 272 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_import(((*yyvaluep).import)); wabt_free(((*yyvaluep).import)); }
+#line 1899 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 119: /* export_kind */
-#line 265 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_export(parser->allocator, &((*yyvaluep).export_)); }
-#line 1908 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 262 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_export(&((*yyvaluep).export_)); }
+#line 1905 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 120: /* export */
-#line 265 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_export(parser->allocator, &((*yyvaluep).export_)); }
-#line 1914 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 262 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_export(&((*yyvaluep).export_)); }
+#line 1911 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 123: /* type_def */
-#line 274 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_func_type(parser->allocator, &((*yyvaluep).func_type)); }
-#line 1920 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 271 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_func_type(&((*yyvaluep).func_type)); }
+#line 1917 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 124: /* start */
-#line 285 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_var(parser->allocator, &((*yyvaluep).var)); }
-#line 1926 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 282 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_var(&((*yyvaluep).var)); }
+#line 1923 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 125: /* module_fields */
-#line 277 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_module(parser->allocator, ((*yyvaluep).module)); wabt_free(parser->allocator, ((*yyvaluep).module)); }
-#line 1932 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 274 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_module(((*yyvaluep).module)); wabt_free(((*yyvaluep).module)); }
+#line 1929 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 126: /* raw_module */
-#line 278 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_raw_module(parser->allocator, &((*yyvaluep).raw_module)); }
-#line 1938 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 275 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_raw_module(&((*yyvaluep).raw_module)); }
+#line 1935 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 127: /* module */
-#line 277 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_module(parser->allocator, ((*yyvaluep).module)); wabt_free(parser->allocator, ((*yyvaluep).module)); }
-#line 1944 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 274 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_module(((*yyvaluep).module)); wabt_free(((*yyvaluep).module)); }
+#line 1941 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 128: /* script_var_opt */
-#line 285 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_var(parser->allocator, &((*yyvaluep).var)); }
-#line 1950 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 282 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_var(&((*yyvaluep).var)); }
+#line 1947 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 130: /* assertion */
-#line 261 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_command(parser->allocator, ((*yyvaluep).command)); wabt_free(parser->allocator, ((*yyvaluep).command)); }
-#line 1956 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 258 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_command(((*yyvaluep).command)); wabt_free(((*yyvaluep).command)); }
+#line 1953 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 131: /* cmd */
-#line 261 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_command(parser->allocator, ((*yyvaluep).command)); wabt_free(parser->allocator, ((*yyvaluep).command)); }
-#line 1962 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 258 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_command(((*yyvaluep).command)); wabt_free(((*yyvaluep).command)); }
+#line 1959 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 132: /* cmd_list */
-#line 262 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_command_vector_and_elements(parser->allocator, &((*yyvaluep).commands)); }
-#line 1968 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 259 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_command_vector_and_elements(&((*yyvaluep).commands)); }
+#line 1965 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 134: /* const_list */
-#line 263 "src/ast-parser.y" /* yacc.c:1257 */
- { wabt_destroy_const_vector(parser->allocator, &((*yyvaluep).consts)); }
-#line 1974 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 260 "src/ast-parser.y" /* yacc.c:1257 */
+ { wabt_destroy_const_vector(&((*yyvaluep).consts)); }
+#line 1971 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
case 135: /* script */
-#line 280 "src/ast-parser.y" /* yacc.c:1257 */
+#line 277 "src/ast-parser.y" /* yacc.c:1257 */
{ wabt_destroy_script(&((*yyvaluep).script)); }
-#line 1980 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
+#line 1977 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1257 */
break;
@@ -2268,37 +2265,37 @@ yyreduce:
switch (yyn)
{
case 2:
-#line 298 "src/ast-parser.y" /* yacc.c:1646 */
+#line 295 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtTextListNode* node = new_text_list_node(parser->allocator);
+ WabtTextListNode* node = new_text_list_node();
DUPTEXT(node->text, (yyvsp[0].text));
node->next = NULL;
(yyval.text_list).first = (yyval.text_list).last = node;
}
-#line 2279 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2276 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 3:
-#line 304 "src/ast-parser.y" /* yacc.c:1646 */
+#line 301 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.text_list) = (yyvsp[-1].text_list);
- WabtTextListNode* node = new_text_list_node(parser->allocator);
+ WabtTextListNode* node = new_text_list_node();
DUPTEXT(node->text, (yyvsp[0].text));
node->next = NULL;
(yyval.text_list).last->next = node;
(yyval.text_list).last = node;
}
-#line 2292 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2289 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 4:
-#line 314 "src/ast-parser.y" /* yacc.c:1646 */
+#line 311 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.text_list).first = (yyval.text_list).last = NULL; }
-#line 2298 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2295 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 6:
-#line 319 "src/ast-parser.y" /* yacc.c:1646 */
+#line 316 "src/ast-parser.y" /* yacc.c:1646 */
{
WabtTextListNode node;
node.text = (yyvsp[0].text);
@@ -2308,134 +2305,134 @@ yyreduce:
text_list.last = &node;
void* data;
size_t size;
- dup_text_list(parser->allocator, &text_list, &data, &size);
+ dup_text_list(&text_list, &data, &size);
(yyval.text).start = data;
(yyval.text).length = size;
}
-#line 2316 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2313 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 7:
-#line 337 "src/ast-parser.y" /* yacc.c:1646 */
+#line 334 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.types)); }
-#line 2322 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2319 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 8:
-#line 338 "src/ast-parser.y" /* yacc.c:1646 */
+#line 335 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.types) = (yyvsp[-1].types);
- wabt_append_type_value(parser->allocator, &(yyval.types), &(yyvsp[0].type));
+ wabt_append_type_value(&(yyval.types), &(yyvsp[0].type));
}
-#line 2331 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2328 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 9:
-#line 344 "src/ast-parser.y" /* yacc.c:1646 */
+#line 341 "src/ast-parser.y" /* yacc.c:1646 */
{}
-#line 2337 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2334 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 10:
-#line 347 "src/ast-parser.y" /* yacc.c:1646 */
+#line 344 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.global));
(yyval.global).type = (yyvsp[0].type);
(yyval.global).mutable_ = WABT_FALSE;
}
-#line 2347 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2344 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 11:
-#line 352 "src/ast-parser.y" /* yacc.c:1646 */
+#line 349 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.global));
(yyval.global).type = (yyvsp[-1].type);
(yyval.global).mutable_ = WABT_TRUE;
}
-#line 2357 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2354 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 12:
-#line 359 "src/ast-parser.y" /* yacc.c:1646 */
+#line 356 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.func_sig) = (yyvsp[-1].func_sig); }
-#line 2363 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2360 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 13:
-#line 362 "src/ast-parser.y" /* yacc.c:1646 */
+#line 359 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.func_sig)); }
-#line 2369 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2366 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 14:
-#line 363 "src/ast-parser.y" /* yacc.c:1646 */
+#line 360 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.func_sig));
(yyval.func_sig).param_types = (yyvsp[-1].types);
}
-#line 2378 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2375 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 15:
-#line 367 "src/ast-parser.y" /* yacc.c:1646 */
+#line 364 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.func_sig));
(yyval.func_sig).param_types = (yyvsp[-5].types);
(yyval.func_sig).result_types = (yyvsp[-1].types);
}
-#line 2388 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2385 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 16:
-#line 372 "src/ast-parser.y" /* yacc.c:1646 */
+#line 369 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.func_sig));
(yyval.func_sig).result_types = (yyvsp[-1].types);
}
-#line 2397 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2394 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 17:
-#line 379 "src/ast-parser.y" /* yacc.c:1646 */
+#line 376 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.table).elem_limits = (yyvsp[-1].limits); }
-#line 2403 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2400 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 18:
-#line 382 "src/ast-parser.y" /* yacc.c:1646 */
+#line 379 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.memory).page_limits = (yyvsp[0].limits); }
-#line 2409 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2406 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 19:
-#line 385 "src/ast-parser.y" /* yacc.c:1646 */
+#line 382 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.limits).has_max = WABT_FALSE;
(yyval.limits).initial = (yyvsp[0].u64);
(yyval.limits).max = 0;
}
-#line 2419 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2416 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 20:
-#line 390 "src/ast-parser.y" /* yacc.c:1646 */
+#line 387 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.limits).has_max = WABT_TRUE;
(yyval.limits).initial = (yyvsp[-1].u64);
(yyval.limits).max = (yyvsp[0].u64);
}
-#line 2429 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2426 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 21:
-#line 397 "src/ast-parser.y" /* yacc.c:1646 */
+#line 394 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.var) = (yyvsp[-1].var); }
-#line 2435 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2432 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 22:
-#line 403 "src/ast-parser.y" /* yacc.c:1646 */
+#line 400 "src/ast-parser.y" /* yacc.c:1646 */
{
if (WABT_FAILED(wabt_parse_uint64((yyvsp[0].literal).text.start,
(yyvsp[0].literal).text.start + (yyvsp[0].literal).text.length, &(yyval.u64)))) {
@@ -2444,97 +2441,97 @@ yyreduce:
WABT_PRINTF_STRING_SLICE_ARG((yyvsp[0].literal).text));
}
}
-#line 2448 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2445 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 23:
-#line 414 "src/ast-parser.y" /* yacc.c:1646 */
+#line 411 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.literal).type = (yyvsp[0].literal).type;
DUPTEXT((yyval.literal).text, (yyvsp[0].literal).text);
}
-#line 2457 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2454 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 24:
-#line 418 "src/ast-parser.y" /* yacc.c:1646 */
+#line 415 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.literal).type = (yyvsp[0].literal).type;
DUPTEXT((yyval.literal).text, (yyvsp[0].literal).text);
}
-#line 2466 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2463 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 25:
-#line 422 "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 2475 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2472 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 26:
-#line 429 "src/ast-parser.y" /* yacc.c:1646 */
+#line 426 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.var).loc = (yylsp[0]);
(yyval.var).type = WABT_VAR_TYPE_INDEX;
(yyval.var).index = (yyvsp[0].u64);
}
-#line 2485 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2482 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 27:
-#line 434 "src/ast-parser.y" /* yacc.c:1646 */
+#line 431 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.var).loc = (yylsp[0]);
(yyval.var).type = WABT_VAR_TYPE_NAME;
DUPTEXT((yyval.var).name, (yyvsp[0].text));
}
-#line 2495 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2492 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 28:
-#line 441 "src/ast-parser.y" /* yacc.c:1646 */
+#line 438 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.vars)); }
-#line 2501 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2498 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 29:
-#line 442 "src/ast-parser.y" /* yacc.c:1646 */
+#line 439 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.vars) = (yyvsp[-1].vars);
- wabt_append_var_value(parser->allocator, &(yyval.vars), &(yyvsp[0].var));
+ wabt_append_var_value(&(yyval.vars), &(yyvsp[0].var));
}
-#line 2510 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2507 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 30:
-#line 448 "src/ast-parser.y" /* yacc.c:1646 */
+#line 445 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.text)); }
-#line 2516 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2513 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 32:
-#line 452 "src/ast-parser.y" /* yacc.c:1646 */
+#line 449 "src/ast-parser.y" /* yacc.c:1646 */
{ DUPTEXT((yyval.text), (yyvsp[0].text)); }
-#line 2522 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2519 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 33:
-#line 456 "src/ast-parser.y" /* yacc.c:1646 */
+#line 453 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.text)); }
-#line 2528 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2525 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 35:
-#line 461 "src/ast-parser.y" /* yacc.c:1646 */
+#line 458 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.u64) = 0; }
-#line 2534 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2531 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 36:
-#line 462 "src/ast-parser.y" /* yacc.c:1646 */
+#line 459 "src/ast-parser.y" /* yacc.c:1646 */
{
if (WABT_FAILED(wabt_parse_int64((yyvsp[0].text).start, (yyvsp[0].text).start + (yyvsp[0].text).length, &(yyval.u64),
WABT_PARSE_SIGNED_AND_UNSIGNED))) {
@@ -2543,17 +2540,17 @@ yyreduce:
WABT_PRINTF_STRING_SLICE_ARG((yyvsp[0].text)));
}
}
-#line 2547 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2544 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 37:
-#line 472 "src/ast-parser.y" /* yacc.c:1646 */
+#line 469 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.u32) = USE_NATURAL_ALIGNMENT; }
-#line 2553 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2550 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 38:
-#line 473 "src/ast-parser.y" /* yacc.c:1646 */
+#line 470 "src/ast-parser.y" /* yacc.c:1646 */
{
if (WABT_FAILED(wabt_parse_int32((yyvsp[0].text).start, (yyvsp[0].text).start + (yyvsp[0].text).length, &(yyval.u32),
WABT_PARSE_UNSIGNED_ONLY))) {
@@ -2562,184 +2559,184 @@ yyreduce:
WABT_PRINTF_STRING_SLICE_ARG((yyvsp[0].text)));
}
}
-#line 2566 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2563 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 39:
-#line 484 "src/ast-parser.y" /* yacc.c:1646 */
+#line 481 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.expr_list) = join_exprs1(&(yylsp[0]), (yyvsp[0].expr)); }
-#line 2572 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2569 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 40:
-#line 485 "src/ast-parser.y" /* yacc.c:1646 */
+#line 482 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.expr_list) = join_exprs1(&(yylsp[0]), (yyvsp[0].expr)); }
-#line 2578 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2575 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 41:
-#line 486 "src/ast-parser.y" /* yacc.c:1646 */
+#line 483 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.expr_list) = (yyvsp[0].expr_list); }
-#line 2584 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2581 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 42:
-#line 489 "src/ast-parser.y" /* yacc.c:1646 */
+#line 486 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_unreachable_expr(parser->allocator);
+ (yyval.expr) = wabt_new_unreachable_expr();
}
-#line 2592 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2589 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 43:
-#line 492 "src/ast-parser.y" /* yacc.c:1646 */
+#line 489 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_nop_expr(parser->allocator);
+ (yyval.expr) = wabt_new_nop_expr();
}
-#line 2600 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2597 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 44:
-#line 495 "src/ast-parser.y" /* yacc.c:1646 */
+#line 492 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_drop_expr(parser->allocator);
+ (yyval.expr) = wabt_new_drop_expr();
}
-#line 2608 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2605 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 45:
-#line 498 "src/ast-parser.y" /* yacc.c:1646 */
+#line 495 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_select_expr(parser->allocator);
+ (yyval.expr) = wabt_new_select_expr();
}
-#line 2616 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2613 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 46:
-#line 501 "src/ast-parser.y" /* yacc.c:1646 */
+#line 498 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_br_expr(parser->allocator);
+ (yyval.expr) = wabt_new_br_expr();
(yyval.expr)->br.var = (yyvsp[0].var);
}
-#line 2625 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2622 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 47:
-#line 505 "src/ast-parser.y" /* yacc.c:1646 */
+#line 502 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_br_if_expr(parser->allocator);
+ (yyval.expr) = wabt_new_br_if_expr();
(yyval.expr)->br_if.var = (yyvsp[0].var);
}
-#line 2634 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2631 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 48:
-#line 509 "src/ast-parser.y" /* yacc.c:1646 */
+#line 506 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_br_table_expr(parser->allocator);
+ (yyval.expr) = wabt_new_br_table_expr();
(yyval.expr)->br_table.targets = (yyvsp[-1].vars);
(yyval.expr)->br_table.default_target = (yyvsp[0].var);
}
-#line 2644 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2641 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 49:
-#line 514 "src/ast-parser.y" /* yacc.c:1646 */
+#line 511 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_return_expr(parser->allocator);
+ (yyval.expr) = wabt_new_return_expr();
}
-#line 2652 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2649 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 50:
-#line 517 "src/ast-parser.y" /* yacc.c:1646 */
+#line 514 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_call_expr(parser->allocator);
+ (yyval.expr) = wabt_new_call_expr();
(yyval.expr)->call.var = (yyvsp[0].var);
}
-#line 2661 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2658 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 51:
-#line 521 "src/ast-parser.y" /* yacc.c:1646 */
+#line 518 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_call_indirect_expr(parser->allocator);
+ (yyval.expr) = wabt_new_call_indirect_expr();
(yyval.expr)->call_indirect.var = (yyvsp[0].var);
}
-#line 2670 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2667 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 52:
-#line 525 "src/ast-parser.y" /* yacc.c:1646 */
+#line 522 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_get_local_expr(parser->allocator);
+ (yyval.expr) = wabt_new_get_local_expr();
(yyval.expr)->get_local.var = (yyvsp[0].var);
}
-#line 2679 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2676 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 53:
-#line 529 "src/ast-parser.y" /* yacc.c:1646 */
+#line 526 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_set_local_expr(parser->allocator);
+ (yyval.expr) = wabt_new_set_local_expr();
(yyval.expr)->set_local.var = (yyvsp[0].var);
}
-#line 2688 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2685 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 54:
-#line 533 "src/ast-parser.y" /* yacc.c:1646 */
+#line 530 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_tee_local_expr(parser->allocator);
+ (yyval.expr) = wabt_new_tee_local_expr();
(yyval.expr)->tee_local.var = (yyvsp[0].var);
}
-#line 2697 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2694 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 55:
-#line 537 "src/ast-parser.y" /* yacc.c:1646 */
+#line 534 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_get_global_expr(parser->allocator);
+ (yyval.expr) = wabt_new_get_global_expr();
(yyval.expr)->get_global.var = (yyvsp[0].var);
}
-#line 2706 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2703 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 56:
-#line 541 "src/ast-parser.y" /* yacc.c:1646 */
+#line 538 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_set_global_expr(parser->allocator);
+ (yyval.expr) = wabt_new_set_global_expr();
(yyval.expr)->set_global.var = (yyvsp[0].var);
}
-#line 2715 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2712 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 57:
-#line 545 "src/ast-parser.y" /* yacc.c:1646 */
+#line 542 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_load_expr(parser->allocator);
+ (yyval.expr) = wabt_new_load_expr();
(yyval.expr)->load.opcode = (yyvsp[-2].opcode);
(yyval.expr)->load.offset = (yyvsp[-1].u64);
(yyval.expr)->load.align = (yyvsp[0].u32);
}
-#line 2726 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2723 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 58:
-#line 551 "src/ast-parser.y" /* yacc.c:1646 */
+#line 548 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_store_expr(parser->allocator);
+ (yyval.expr) = wabt_new_store_expr();
(yyval.expr)->store.opcode = (yyvsp[-2].opcode);
(yyval.expr)->store.offset = (yyvsp[-1].u64);
(yyval.expr)->store.align = (yyvsp[0].u32);
}
-#line 2737 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2734 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 59:
-#line 557 "src/ast-parser.y" /* yacc.c:1646 */
+#line 554 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_const_expr(parser->allocator);
+ (yyval.expr) = wabt_new_const_expr();
(yyval.expr)->const_.loc = (yylsp[-1]);
if (WABT_FAILED(parse_const((yyvsp[-1].type), (yyvsp[0].literal).type, (yyvsp[0].literal).text.start,
(yyvsp[0].literal).text.start + (yyvsp[0].literal).text.length,
@@ -2748,157 +2745,157 @@ yyreduce:
"invalid literal \"" PRIstringslice "\"",
WABT_PRINTF_STRING_SLICE_ARG((yyvsp[0].literal).text));
}
- wabt_free(parser->allocator, (char*)(yyvsp[0].literal).text.start);
+ wabt_free((char*)(yyvsp[0].literal).text.start);
}
-#line 2754 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2751 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 60:
-#line 569 "src/ast-parser.y" /* yacc.c:1646 */
+#line 566 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_unary_expr(parser->allocator);
+ (yyval.expr) = wabt_new_unary_expr();
(yyval.expr)->unary.opcode = (yyvsp[0].opcode);
}
-#line 2763 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2760 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 61:
-#line 573 "src/ast-parser.y" /* yacc.c:1646 */
+#line 570 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_binary_expr(parser->allocator);
+ (yyval.expr) = wabt_new_binary_expr();
(yyval.expr)->binary.opcode = (yyvsp[0].opcode);
}
-#line 2772 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2769 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 62:
-#line 577 "src/ast-parser.y" /* yacc.c:1646 */
+#line 574 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_compare_expr(parser->allocator);
+ (yyval.expr) = wabt_new_compare_expr();
(yyval.expr)->compare.opcode = (yyvsp[0].opcode);
}
-#line 2781 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2778 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 63:
-#line 581 "src/ast-parser.y" /* yacc.c:1646 */
+#line 578 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_convert_expr(parser->allocator);
+ (yyval.expr) = wabt_new_convert_expr();
(yyval.expr)->convert.opcode = (yyvsp[0].opcode);
}
-#line 2790 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2787 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 64:
-#line 585 "src/ast-parser.y" /* yacc.c:1646 */
+#line 582 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_current_memory_expr(parser->allocator);
+ (yyval.expr) = wabt_new_current_memory_expr();
}
-#line 2798 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2795 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 65:
-#line 588 "src/ast-parser.y" /* yacc.c:1646 */
+#line 585 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_grow_memory_expr(parser->allocator);
+ (yyval.expr) = wabt_new_grow_memory_expr();
}
-#line 2806 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2803 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 66:
-#line 593 "src/ast-parser.y" /* yacc.c:1646 */
+#line 590 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_block_expr(parser->allocator);
+ (yyval.expr) = wabt_new_block_expr();
(yyval.expr)->block = (yyvsp[-2].block);
(yyval.expr)->block.label = (yyvsp[-3].text);
CHECK_END_LABEL((yylsp[0]), (yyval.expr)->block.label, (yyvsp[0].text));
}
-#line 2817 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2814 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 67:
-#line 599 "src/ast-parser.y" /* yacc.c:1646 */
+#line 596 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_loop_expr(parser->allocator);
+ (yyval.expr) = wabt_new_loop_expr();
(yyval.expr)->loop = (yyvsp[-2].block);
(yyval.expr)->loop.label = (yyvsp[-3].text);
CHECK_END_LABEL((yylsp[0]), (yyval.expr)->block.label, (yyvsp[0].text));
}
-#line 2828 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2825 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 68:
-#line 605 "src/ast-parser.y" /* yacc.c:1646 */
+#line 602 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_if_expr(parser->allocator);
+ (yyval.expr) = wabt_new_if_expr();
(yyval.expr)->if_.true_ = (yyvsp[-2].block);
(yyval.expr)->if_.true_.label = (yyvsp[-3].text);
CHECK_END_LABEL((yylsp[0]), (yyval.expr)->block.label, (yyvsp[0].text));
}
-#line 2839 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2836 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 69:
-#line 611 "src/ast-parser.y" /* yacc.c:1646 */
+#line 608 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.expr) = wabt_new_if_expr(parser->allocator);
+ (yyval.expr) = wabt_new_if_expr();
(yyval.expr)->if_.true_ = (yyvsp[-5].block);
(yyval.expr)->if_.true_.label = (yyvsp[-6].text);
(yyval.expr)->if_.false_ = (yyvsp[-2].expr_list).first;
CHECK_END_LABEL((yylsp[-3]), (yyval.expr)->block.label, (yyvsp[-3].text));
CHECK_END_LABEL((yylsp[0]), (yyval.expr)->block.label, (yyvsp[0].text));
}
-#line 2852 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2849 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 70:
-#line 621 "src/ast-parser.y" /* yacc.c:1646 */
+#line 618 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.block));
(yyval.block).sig = (yyvsp[-1].types);
(yyval.block).first = (yyvsp[0].expr_list).first;
}
-#line 2862 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2859 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 71:
-#line 629 "src/ast-parser.y" /* yacc.c:1646 */
+#line 626 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.expr_list) = (yyvsp[-1].expr_list); }
-#line 2868 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2865 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 72:
-#line 633 "src/ast-parser.y" /* yacc.c:1646 */
+#line 630 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr_list) = join_exprs2(&(yylsp[-1]), &(yyvsp[0].expr_list), (yyvsp[-1].expr));
}
-#line 2876 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2873 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 73:
-#line 636 "src/ast-parser.y" /* yacc.c:1646 */
+#line 633 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtExpr* expr = wabt_new_block_expr(parser->allocator);
+ WabtExpr* expr = wabt_new_block_expr();
expr->block = (yyvsp[0].block);
expr->block.label = (yyvsp[-1].text);
(yyval.expr_list) = join_exprs1(&(yylsp[-2]), expr);
}
-#line 2887 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2884 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 74:
-#line 642 "src/ast-parser.y" /* yacc.c:1646 */
+#line 639 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtExpr* expr = wabt_new_loop_expr(parser->allocator);
+ WabtExpr* expr = wabt_new_loop_expr();
expr->loop = (yyvsp[0].block);
expr->loop.label = (yyvsp[-1].text);
(yyval.expr_list) = join_exprs1(&(yylsp[-2]), expr);
}
-#line 2898 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2895 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 75:
-#line 648 "src/ast-parser.y" /* yacc.c:1646 */
+#line 645 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr_list) = (yyvsp[0].expr_list);
WabtExpr* if_ = (yyvsp[0].expr_list).last;
@@ -2906,180 +2903,180 @@ yyreduce:
if_->if_.true_.label = (yyvsp[-2].text);
if_->if_.true_.sig = (yyvsp[-1].types);
}
-#line 2910 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2907 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 76:
-#line 657 "src/ast-parser.y" /* yacc.c:1646 */
+#line 654 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtExpr* expr = wabt_new_if_expr(parser->allocator);
+ WabtExpr* expr = wabt_new_if_expr();
expr->if_.true_.first = (yyvsp[-5].expr_list).first;
expr->if_.false_ = (yyvsp[-1].expr_list).first;
(yyval.expr_list) = join_exprs1(&(yylsp[-7]), expr);
}
-#line 2921 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2918 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 77:
-#line 663 "src/ast-parser.y" /* yacc.c:1646 */
+#line 660 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtExpr* expr = wabt_new_if_expr(parser->allocator);
+ WabtExpr* expr = wabt_new_if_expr();
expr->if_.true_.first = (yyvsp[-1].expr_list).first;
(yyval.expr_list) = join_exprs1(&(yylsp[-3]), expr);
}
-#line 2931 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2928 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 78:
-#line 668 "src/ast-parser.y" /* yacc.c:1646 */
+#line 665 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtExpr* expr = wabt_new_if_expr(parser->allocator);
+ WabtExpr* expr = wabt_new_if_expr();
expr->if_.true_.first = (yyvsp[-5].expr_list).first;
expr->if_.false_ = (yyvsp[-1].expr_list).first;
(yyval.expr_list) = join_exprs2(&(yylsp[-8]), &(yyvsp[-8].expr_list), expr);
}
-#line 2942 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2939 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 79:
-#line 674 "src/ast-parser.y" /* yacc.c:1646 */
+#line 671 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtExpr* expr = wabt_new_if_expr(parser->allocator);
+ WabtExpr* expr = wabt_new_if_expr();
expr->if_.true_.first = (yyvsp[-1].expr_list).first;
(yyval.expr_list) = join_exprs2(&(yylsp[-4]), &(yyvsp[-4].expr_list), expr);
}
-#line 2952 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2949 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 80:
-#line 679 "src/ast-parser.y" /* yacc.c:1646 */
+#line 676 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtExpr* expr = wabt_new_if_expr(parser->allocator);
+ WabtExpr* expr = wabt_new_if_expr();
expr->if_.true_.first = (yyvsp[-1].expr_list).first;
expr->if_.false_ = (yyvsp[0].expr_list).first;
(yyval.expr_list) = join_exprs2(&(yylsp[-2]), &(yyvsp[-2].expr_list), expr);
}
-#line 2963 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2960 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 81:
-#line 685 "src/ast-parser.y" /* yacc.c:1646 */
+#line 682 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtExpr* expr = wabt_new_if_expr(parser->allocator);
+ WabtExpr* expr = wabt_new_if_expr();
expr->if_.true_.first = (yyvsp[0].expr_list).first;
(yyval.expr_list) = join_exprs2(&(yylsp[-1]), &(yyvsp[-1].expr_list), expr);
}
-#line 2973 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2970 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 82:
-#line 693 "src/ast-parser.y" /* yacc.c:1646 */
+#line 690 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.expr_list)); }
-#line 2979 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2976 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 83:
-#line 694 "src/ast-parser.y" /* yacc.c:1646 */
+#line 691 "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 2990 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2987 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 84:
-#line 702 "src/ast-parser.y" /* yacc.c:1646 */
+#line 699 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.expr_list)); }
-#line 2996 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 2993 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 85:
-#line 703 "src/ast-parser.y" /* yacc.c:1646 */
+#line 700 "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 3007 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3004 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 88:
-#line 717 "src/ast-parser.y" /* yacc.c:1646 */
+#line 714 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.func_fields) = new_func_field(parser->allocator);
+ (yyval.func_fields) = new_func_field();
(yyval.func_fields)->type = WABT_FUNC_FIELD_TYPE_RESULT_TYPES;
(yyval.func_fields)->types = (yyvsp[-2].types);
(yyval.func_fields)->next = (yyvsp[0].func_fields);
}
-#line 3018 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3015 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 89:
-#line 723 "src/ast-parser.y" /* yacc.c:1646 */
+#line 720 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.func_fields) = new_func_field(parser->allocator);
+ (yyval.func_fields) = new_func_field();
(yyval.func_fields)->type = WABT_FUNC_FIELD_TYPE_PARAM_TYPES;
(yyval.func_fields)->types = (yyvsp[-2].types);
(yyval.func_fields)->next = (yyvsp[0].func_fields);
}
-#line 3029 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3026 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 90:
-#line 729 "src/ast-parser.y" /* yacc.c:1646 */
+#line 726 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.func_fields) = new_func_field(parser->allocator);
+ (yyval.func_fields) = new_func_field();
(yyval.func_fields)->type = WABT_FUNC_FIELD_TYPE_BOUND_PARAM;
(yyval.func_fields)->bound_type.loc = (yylsp[-4]);
(yyval.func_fields)->bound_type.name = (yyvsp[-3].text);
(yyval.func_fields)->bound_type.type = (yyvsp[-2].type);
(yyval.func_fields)->next = (yyvsp[0].func_fields);
}
-#line 3042 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3039 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 91:
-#line 739 "src/ast-parser.y" /* yacc.c:1646 */
+#line 736 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.func_fields) = new_func_field(parser->allocator);
+ (yyval.func_fields) = new_func_field();
(yyval.func_fields)->type = WABT_FUNC_FIELD_TYPE_EXPRS;
(yyval.func_fields)->first_expr = (yyvsp[0].expr_list).first;
(yyval.func_fields)->next = NULL;
}
-#line 3053 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3050 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 92:
-#line 745 "src/ast-parser.y" /* yacc.c:1646 */
+#line 742 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.func_fields) = new_func_field(parser->allocator);
+ (yyval.func_fields) = new_func_field();
(yyval.func_fields)->type = WABT_FUNC_FIELD_TYPE_LOCAL_TYPES;
(yyval.func_fields)->types = (yyvsp[-2].types);
(yyval.func_fields)->next = (yyvsp[0].func_fields);
}
-#line 3064 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3061 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 93:
-#line 751 "src/ast-parser.y" /* yacc.c:1646 */
+#line 748 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.func_fields) = new_func_field(parser->allocator);
+ (yyval.func_fields) = new_func_field();
(yyval.func_fields)->type = WABT_FUNC_FIELD_TYPE_BOUND_LOCAL;
(yyval.func_fields)->bound_type.loc = (yylsp[-4]);
(yyval.func_fields)->bound_type.name = (yyvsp[-3].text);
(yyval.func_fields)->bound_type.type = (yyvsp[-2].type);
(yyval.func_fields)->next = (yyvsp[0].func_fields);
}
-#line 3077 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3074 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 94:
-#line 761 "src/ast-parser.y" /* yacc.c:1646 */
+#line 758 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.func) = new_func(parser->allocator);
+ (yyval.func) = new_func();
WabtFuncField* field = (yyvsp[0].func_fields);
while (field) {
@@ -3095,8 +3092,8 @@ yyreduce:
field->type == WABT_FUNC_FIELD_TYPE_PARAM_TYPES
? &(yyval.func)->decl.sig.param_types
: &(yyval.func)->local_types;
- wabt_extend_types(parser->allocator, types, &field->types);
- wabt_destroy_type_vector(parser->allocator, &field->types);
+ wabt_extend_types(types, &field->types);
+ wabt_destroy_type_vector(&field->types);
break;
}
@@ -3112,10 +3109,9 @@ yyreduce:
bindings = &(yyval.func)->local_bindings;
}
- wabt_append_type_value(parser->allocator, types,
- &field->bound_type.type);
- WabtBinding* binding = wabt_insert_binding(
- parser->allocator, bindings, &field->bound_type.name);
+ wabt_append_type_value(types, &field->bound_type.type);
+ WabtBinding* binding =
+ wabt_insert_binding(bindings, &field->bound_type.name);
binding->loc = field->bound_type.loc;
binding->index = types->size - 1;
break;
@@ -3127,15 +3123,15 @@ yyreduce:
}
/* we steal memory from the func field, but not the linked list nodes */
- wabt_free(parser->allocator, field);
+ wabt_free(field);
field = next;
}
}
-#line 3135 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3131 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 95:
-#line 816 "src/ast-parser.y" /* yacc.c:1646 */
+#line 812 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.exported_func));
(yyval.exported_func).func = (yyvsp[-1].func);
@@ -3144,11 +3140,11 @@ yyreduce:
(yyval.exported_func).func->name = (yyvsp[-4].text);
(yyval.exported_func).export_ = (yyvsp[-3].optional_export);
}
-#line 3148 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3144 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 96:
-#line 825 "src/ast-parser.y" /* yacc.c:1646 */
+#line 821 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.exported_func));
(yyval.exported_func).func = (yyvsp[-1].func);
@@ -3156,51 +3152,51 @@ yyreduce:
(yyval.exported_func).func->decl.type_var = (yyvsp[-2].var);
(yyval.exported_func).func->name = (yyvsp[-3].text);
}
-#line 3160 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3156 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 97:
-#line 832 "src/ast-parser.y" /* yacc.c:1646 */
+#line 828 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.exported_func));
(yyval.exported_func).func = (yyvsp[-1].func);
(yyval.exported_func).func->name = (yyvsp[-3].text);
(yyval.exported_func).export_ = (yyvsp[-2].optional_export);
}
-#line 3171 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3167 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 98:
-#line 839 "src/ast-parser.y" /* yacc.c:1646 */
+#line 835 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.exported_func));
(yyval.exported_func).func = (yyvsp[-1].func);
(yyval.exported_func).func->name = (yyvsp[-2].text);
}
-#line 3181 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3177 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 99:
-#line 849 "src/ast-parser.y" /* yacc.c:1646 */
+#line 845 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.expr_list) = (yyvsp[-1].expr_list);
}
-#line 3189 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3185 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 101:
-#line 856 "src/ast-parser.y" /* yacc.c:1646 */
+#line 852 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.elem_segment));
(yyval.elem_segment).table_var = (yyvsp[-3].var);
(yyval.elem_segment).offset = (yyvsp[-2].expr_list).first;
(yyval.elem_segment).vars = (yyvsp[-1].vars);
}
-#line 3200 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3196 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 102:
-#line 862 "src/ast-parser.y" /* yacc.c:1646 */
+#line 858 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.elem_segment));
(yyval.elem_segment).table_var.loc = (yylsp[-3]);
@@ -3209,24 +3205,24 @@ yyreduce:
(yyval.elem_segment).offset = (yyvsp[-2].expr_list).first;
(yyval.elem_segment).vars = (yyvsp[-1].vars);
}
-#line 3213 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3209 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 103:
-#line 873 "src/ast-parser.y" /* yacc.c:1646 */
+#line 869 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.exported_table).table = (yyvsp[-1].table);
(yyval.exported_table).table.name = (yyvsp[-3].text);
(yyval.exported_table).has_elem_segment = WABT_FALSE;
(yyval.exported_table).export_ = (yyvsp[-2].optional_export);
}
-#line 3224 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3220 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 104:
-#line 880 "src/ast-parser.y" /* yacc.c:1646 */
+#line 876 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtExpr* expr = wabt_new_const_expr(parser->allocator);
+ WabtExpr* expr = wabt_new_const_expr();
expr->loc = (yylsp[-8]);
expr->const_.type = WABT_TYPE_I32;
expr->const_.u32 = 0;
@@ -3241,37 +3237,37 @@ yyreduce:
(yyval.exported_table).elem_segment.vars = (yyvsp[-2].vars);
(yyval.exported_table).export_ = (yyvsp[-6].optional_export);
}
-#line 3245 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3241 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 105:
-#line 899 "src/ast-parser.y" /* yacc.c:1646 */
+#line 895 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.data_segment));
(yyval.data_segment).memory_var = (yyvsp[-3].var);
(yyval.data_segment).offset = (yyvsp[-2].expr_list).first;
- dup_text_list(parser->allocator, &(yyvsp[-1].text_list), &(yyval.data_segment).data, &(yyval.data_segment).size);
- wabt_destroy_text_list(parser->allocator, &(yyvsp[-1].text_list));
+ dup_text_list(&(yyvsp[-1].text_list), &(yyval.data_segment).data, &(yyval.data_segment).size);
+ wabt_destroy_text_list(&(yyvsp[-1].text_list));
}
-#line 3257 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3253 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 106:
-#line 906 "src/ast-parser.y" /* yacc.c:1646 */
+#line 902 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.data_segment));
(yyval.data_segment).memory_var.loc = (yylsp[-3]);
(yyval.data_segment).memory_var.type = WABT_VAR_TYPE_INDEX;
(yyval.data_segment).memory_var.index = 0;
(yyval.data_segment).offset = (yyvsp[-2].expr_list).first;
- dup_text_list(parser->allocator, &(yyvsp[-1].text_list), &(yyval.data_segment).data, &(yyval.data_segment).size);
- wabt_destroy_text_list(parser->allocator, &(yyvsp[-1].text_list));
+ dup_text_list(&(yyvsp[-1].text_list), &(yyval.data_segment).data, &(yyval.data_segment).size);
+ wabt_destroy_text_list(&(yyvsp[-1].text_list));
}
-#line 3271 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3267 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 107:
-#line 918 "src/ast-parser.y" /* yacc.c:1646 */
+#line 914 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.exported_memory));
(yyval.exported_memory).memory = (yyvsp[-1].memory);
@@ -3279,13 +3275,13 @@ yyreduce:
(yyval.exported_memory).has_data_segment = WABT_FALSE;
(yyval.exported_memory).export_ = (yyvsp[-2].optional_export);
}
-#line 3283 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3279 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 108:
-#line 925 "src/ast-parser.y" /* yacc.c:1646 */
+#line 921 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtExpr* expr = wabt_new_const_expr(parser->allocator);
+ WabtExpr* expr = wabt_new_const_expr();
expr->loc = (yylsp[-7]);
expr->const_.type = WABT_TYPE_I32;
expr->const_.u32 = 0;
@@ -3293,9 +3289,8 @@ yyreduce:
WABT_ZERO_MEMORY((yyval.exported_memory));
(yyval.exported_memory).has_data_segment = WABT_TRUE;
(yyval.exported_memory).data_segment.offset = expr;
- dup_text_list(parser->allocator, &(yyvsp[-2].text_list), &(yyval.exported_memory).data_segment.data,
- &(yyval.exported_memory).data_segment.size);
- wabt_destroy_text_list(parser->allocator, &(yyvsp[-2].text_list));
+ dup_text_list(&(yyvsp[-2].text_list), &(yyval.exported_memory).data_segment.data, &(yyval.exported_memory).data_segment.size);
+ wabt_destroy_text_list(&(yyvsp[-2].text_list));
uint32_t byte_size = WABT_ALIGN_UP_TO_PAGE((yyval.exported_memory).data_segment.size);
uint32_t page_size = WABT_BYTES_TO_PAGES(byte_size);
(yyval.exported_memory).memory.name = (yyvsp[-6].text);
@@ -3304,13 +3299,13 @@ yyreduce:
(yyval.exported_memory).memory.page_limits.has_max = WABT_TRUE;
(yyval.exported_memory).export_ = (yyvsp[-5].optional_export);
}
-#line 3308 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3303 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 109:
-#line 946 "src/ast-parser.y" /* yacc.c:1646 */
+#line 941 "src/ast-parser.y" /* yacc.c:1646 */
{
- WabtExpr* expr = wabt_new_const_expr(parser->allocator);
+ WabtExpr* expr = wabt_new_const_expr();
expr->loc = (yylsp[-6]);
expr->const_.type = WABT_TYPE_I32;
expr->const_.u32 = 0;
@@ -3318,9 +3313,8 @@ yyreduce:
WABT_ZERO_MEMORY((yyval.exported_memory));
(yyval.exported_memory).has_data_segment = WABT_TRUE;
(yyval.exported_memory).data_segment.offset = expr;
- dup_text_list(parser->allocator, &(yyvsp[-2].text_list), &(yyval.exported_memory).data_segment.data,
- &(yyval.exported_memory).data_segment.size);
- wabt_destroy_text_list(parser->allocator, &(yyvsp[-2].text_list));
+ dup_text_list(&(yyvsp[-2].text_list), &(yyval.exported_memory).data_segment.data, &(yyval.exported_memory).data_segment.size);
+ wabt_destroy_text_list(&(yyvsp[-2].text_list));
uint32_t byte_size = WABT_ALIGN_UP_TO_PAGE((yyval.exported_memory).data_segment.size);
uint32_t page_size = WABT_BYTES_TO_PAGES(byte_size);
(yyval.exported_memory).memory.name = (yyvsp[-5].text);
@@ -3329,11 +3323,11 @@ yyreduce:
(yyval.exported_memory).memory.page_limits.has_max = WABT_TRUE;
(yyval.exported_memory).export_.has_export = WABT_FALSE;
}
-#line 3333 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3327 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 110:
-#line 969 "src/ast-parser.y" /* yacc.c:1646 */
+#line 963 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.exported_global));
(yyval.exported_global).global = (yyvsp[-2].global);
@@ -3341,11 +3335,11 @@ yyreduce:
(yyval.exported_global).global.init_expr = (yyvsp[-1].expr_list).first;
(yyval.exported_global).export_ = (yyvsp[-3].optional_export);
}
-#line 3345 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3339 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 111:
-#line 976 "src/ast-parser.y" /* yacc.c:1646 */
+#line 970 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.exported_global));
(yyval.exported_global).global = (yyvsp[-2].global);
@@ -3353,77 +3347,77 @@ yyreduce:
(yyval.exported_global).global.init_expr = (yyvsp[-1].expr_list).first;
(yyval.exported_global).export_.has_export = WABT_FALSE;
}
-#line 3357 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3351 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 112:
-#line 989 "src/ast-parser.y" /* yacc.c:1646 */
+#line 983 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.import) = new_import(parser->allocator);
+ (yyval.import) = new_import();
(yyval.import)->kind = WABT_EXTERNAL_KIND_FUNC;
(yyval.import)->func.name = (yyvsp[-2].text);
(yyval.import)->func.decl.flags = WABT_FUNC_DECLARATION_FLAG_HAS_FUNC_TYPE;
(yyval.import)->func.decl.type_var = (yyvsp[-1].var);
}
-#line 3369 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3363 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 113:
-#line 996 "src/ast-parser.y" /* yacc.c:1646 */
+#line 990 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.import) = new_import(parser->allocator);
+ (yyval.import) = new_import();
(yyval.import)->kind = WABT_EXTERNAL_KIND_FUNC;
(yyval.import)->func.name = (yyvsp[-2].text);
(yyval.import)->func.decl.sig = (yyvsp[-1].func_sig);
}
-#line 3380 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3374 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 114:
-#line 1002 "src/ast-parser.y" /* yacc.c:1646 */
+#line 996 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.import) = new_import(parser->allocator);
+ (yyval.import) = new_import();
(yyval.import)->kind = WABT_EXTERNAL_KIND_TABLE;
(yyval.import)->table = (yyvsp[-1].table);
(yyval.import)->table.name = (yyvsp[-2].text);
}
-#line 3391 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3385 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 115:
-#line 1008 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1002 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.import) = new_import(parser->allocator);
+ (yyval.import) = new_import();
(yyval.import)->kind = WABT_EXTERNAL_KIND_MEMORY;
(yyval.import)->memory = (yyvsp[-1].memory);
(yyval.import)->memory.name = (yyvsp[-2].text);
}
-#line 3402 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3396 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 116:
-#line 1014 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1008 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.import) = new_import(parser->allocator);
+ (yyval.import) = new_import();
(yyval.import)->kind = WABT_EXTERNAL_KIND_GLOBAL;
(yyval.import)->global = (yyvsp[-1].global);
(yyval.import)->global.name = (yyvsp[-2].text);
}
-#line 3413 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3407 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 117:
-#line 1022 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1016 "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 3423 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3417 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 118:
-#line 1027 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1021 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = (yyvsp[-2].import);
(yyval.import)->kind = WABT_EXTERNAL_KIND_FUNC;
@@ -3431,165 +3425,165 @@ yyreduce:
(yyval.import)->func.decl.flags = WABT_FUNC_DECLARATION_FLAG_HAS_FUNC_TYPE;
(yyval.import)->func.decl.type_var = (yyvsp[-1].var);
}
-#line 3435 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3429 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 119:
-#line 1034 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1028 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = (yyvsp[-2].import);
(yyval.import)->kind = WABT_EXTERNAL_KIND_FUNC;
(yyval.import)->func.name = (yyvsp[-3].text);
(yyval.import)->func.decl.sig = (yyvsp[-1].func_sig);
}
-#line 3446 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3440 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 120:
-#line 1040 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1034 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = (yyvsp[-2].import);
(yyval.import)->kind = WABT_EXTERNAL_KIND_TABLE;
(yyval.import)->table = (yyvsp[-1].table);
(yyval.import)->table.name = (yyvsp[-3].text);
}
-#line 3457 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3451 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 121:
-#line 1046 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1040 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = (yyvsp[-2].import);
(yyval.import)->kind = WABT_EXTERNAL_KIND_MEMORY;
(yyval.import)->memory = (yyvsp[-1].memory);
(yyval.import)->memory.name = (yyvsp[-3].text);
}
-#line 3468 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3462 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 122:
-#line 1052 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1046 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.import) = (yyvsp[-2].import);
(yyval.import)->kind = WABT_EXTERNAL_KIND_GLOBAL;
(yyval.import)->global = (yyvsp[-1].global);
(yyval.import)->global.name = (yyvsp[-3].text);
}
-#line 3479 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3473 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 123:
-#line 1061 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1055 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.import) = new_import(parser->allocator);
+ (yyval.import) = new_import();
(yyval.import)->module_name = (yyvsp[-2].text);
(yyval.import)->field_name = (yyvsp[-1].text);
}
-#line 3489 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3483 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 124:
-#line 1069 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1063 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.export_));
(yyval.export_).kind = WABT_EXTERNAL_KIND_FUNC;
(yyval.export_).var = (yyvsp[-1].var);
}
-#line 3499 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3493 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 125:
-#line 1074 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1068 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.export_));
(yyval.export_).kind = WABT_EXTERNAL_KIND_TABLE;
(yyval.export_).var = (yyvsp[-1].var);
}
-#line 3509 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3503 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 126:
-#line 1079 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1073 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.export_));
(yyval.export_).kind = WABT_EXTERNAL_KIND_MEMORY;
(yyval.export_).var = (yyvsp[-1].var);
}
-#line 3519 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3513 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 127:
-#line 1084 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1078 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.export_));
(yyval.export_).kind = WABT_EXTERNAL_KIND_GLOBAL;
(yyval.export_).var = (yyvsp[-1].var);
}
-#line 3529 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3523 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 128:
-#line 1091 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1085 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.export_) = (yyvsp[-1].export_);
(yyval.export_).name = (yyvsp[-2].text);
}
-#line 3538 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3532 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 129:
-#line 1098 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1092 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.optional_export));
(yyval.optional_export).has_export = WABT_FALSE;
}
-#line 3547 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3541 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 131:
-#line 1105 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1099 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.optional_export));
(yyval.optional_export).has_export = WABT_TRUE;
(yyval.optional_export).export_.name = (yyvsp[-1].text);
}
-#line 3557 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3551 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 132:
-#line 1116 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1110 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.func_type));
(yyval.func_type).sig = (yyvsp[-1].func_sig);
}
-#line 3566 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3560 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 133:
-#line 1120 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1114 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.func_type).name = (yyvsp[-2].text);
(yyval.func_type).sig = (yyvsp[-1].func_sig);
}
-#line 3575 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3569 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 134:
-#line 1127 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1121 "src/ast-parser.y" /* yacc.c:1646 */
{ (yyval.var) = (yyvsp[-1].var); }
-#line 3581 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3575 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 135:
-#line 1131 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1125 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.module) = new_module(parser->allocator);
+ (yyval.module) = new_module();
}
-#line 3589 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3583 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 136:
-#line 1134 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1128 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
WabtModuleField* field;
@@ -3598,11 +3592,11 @@ yyreduce:
&field->func_type);
INSERT_BINDING((yyval.module), func_type, func_types, (yylsp[0]), (yyvsp[0].func_type).name);
}
-#line 3602 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3596 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 137:
-#line 1142 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1136 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
WabtModuleField* field;
@@ -3611,11 +3605,11 @@ yyreduce:
INSERT_BINDING((yyval.module), global, globals, (yylsp[0]), (yyvsp[0].exported_global).global.name);
APPEND_INLINE_EXPORT((yyval.module), GLOBAL, (yylsp[0]), (yyvsp[0].exported_global), (yyval.module)->globals.size - 1);
}
-#line 3615 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3609 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 138:
-#line 1150 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1144 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
WabtModuleField* field;
@@ -3633,11 +3627,11 @@ yyreduce:
}
}
-#line 3637 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3631 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 139:
-#line 1167 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1161 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
WabtModuleField* field;
@@ -3654,27 +3648,26 @@ yyreduce:
&data_segment_field->data_segment);
}
}
-#line 3658 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3652 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 140:
-#line 1183 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1177 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
WabtModuleField* field;
APPEND_FIELD_TO_LIST((yyval.module), field, FUNC, func, (yylsp[0]), *(yyvsp[0].exported_func).func);
- append_implicit_func_declaration(parser->allocator, &(yylsp[0]), (yyval.module),
- &field->func.decl);
+ append_implicit_func_declaration(&(yylsp[0]), (yyval.module), &field->func.decl);
APPEND_ITEM_TO_VECTOR((yyval.module), Func, func, funcs, &field->func);
INSERT_BINDING((yyval.module), func, funcs, (yylsp[0]), (yyvsp[0].exported_func).func->name);
APPEND_INLINE_EXPORT((yyval.module), FUNC, (yylsp[0]), (yyvsp[0].exported_func), (yyval.module)->funcs.size - 1);
- wabt_free(parser->allocator, (yyvsp[0].exported_func).func);
+ wabt_free((yyvsp[0].exported_func).func);
}
-#line 3674 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3667 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 141:
-#line 1194 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1187 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
WabtModuleField* field;
@@ -3682,11 +3675,11 @@ yyreduce:
APPEND_ITEM_TO_VECTOR((yyval.module), ElemSegment, elem_segment, elem_segments,
&field->elem_segment);
}
-#line 3686 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3679 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 142:
-#line 1201 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1194 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
WabtModuleField* field;
@@ -3694,22 +3687,22 @@ yyreduce:
APPEND_ITEM_TO_VECTOR((yyval.module), DataSegment, data_segment, data_segments,
&field->data_segment);
}
-#line 3698 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3691 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 143:
-#line 1208 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1201 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
WabtModuleField* field;
APPEND_FIELD_TO_LIST((yyval.module), field, START, start, (yylsp[0]), (yyvsp[0].var));
(yyval.module)->start = &field->start;
}
-#line 3709 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3702 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 144:
-#line 1214 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1207 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
WabtModuleField* field;
@@ -3720,8 +3713,7 @@ yyreduce:
CHECK_IMPORT_ORDERING((yyval.module), global, globals, (yylsp[0]));
switch ((yyvsp[0].import)->kind) {
case WABT_EXTERNAL_KIND_FUNC:
- append_implicit_func_declaration(parser->allocator, &(yylsp[0]), (yyval.module),
- &field->import.func.decl);
+ append_implicit_func_declaration(&(yylsp[0]), (yyval.module), &field->import.func.decl);
APPEND_ITEM_TO_VECTOR((yyval.module), Func, func, funcs, &field->import.func);
INSERT_BINDING((yyval.module), func, funcs, (yylsp[0]), field->import.func.name);
(yyval.module)->num_func_imports++;
@@ -3747,26 +3739,26 @@ yyreduce:
assert(0);
break;
}
- wabt_free(parser->allocator, (yyvsp[0].import));
+ wabt_free((yyvsp[0].import));
APPEND_ITEM_TO_VECTOR((yyval.module), Import, import, imports, &field->import);
}
-#line 3754 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3746 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 145:
-#line 1254 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1246 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.module) = (yyvsp[-1].module);
- WabtModuleField* field = wabt_append_module_field(parser->allocator, (yyval.module));
+ WabtModuleField* field = wabt_append_module_field((yyval.module));
APPEND_FIELD_TO_LIST((yyval.module), field, EXPORT, export_, (yylsp[0]), (yyvsp[0].export_));
APPEND_ITEM_TO_VECTOR((yyval.module), Export, export, exports, &field->export_);
INSERT_BINDING((yyval.module), export, exports, (yylsp[0]), (yyvsp[0].export_).name);
}
-#line 3766 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3758 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 146:
-#line 1264 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1256 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.raw_module).type = WABT_RAW_MODULE_TYPE_TEXT;
(yyval.raw_module).text = (yyvsp[-1].module);
@@ -3789,29 +3781,29 @@ yyreduce:
}
}
}
-#line 3793 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3785 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 147:
-#line 1286 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1278 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.raw_module).type = WABT_RAW_MODULE_TYPE_BINARY;
(yyval.raw_module).binary.name = (yyvsp[-2].text);
(yyval.raw_module).binary.loc = (yylsp[-3]);
- dup_text_list(parser->allocator, &(yyvsp[-1].text_list), &(yyval.raw_module).binary.data, &(yyval.raw_module).binary.size);
- wabt_destroy_text_list(parser->allocator, &(yyvsp[-1].text_list));
+ dup_text_list(&(yyvsp[-1].text_list), &(yyval.raw_module).binary.data, &(yyval.raw_module).binary.size);
+ wabt_destroy_text_list(&(yyvsp[-1].text_list));
}
-#line 3805 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3797 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 148:
-#line 1296 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1288 "src/ast-parser.y" /* yacc.c:1646 */
{
if ((yyvsp[0].raw_module).type == WABT_RAW_MODULE_TYPE_TEXT) {
(yyval.module) = (yyvsp[0].raw_module).text;
} else {
assert((yyvsp[0].raw_module).type == WABT_RAW_MODULE_TYPE_BINARY);
- (yyval.module) = new_module(parser->allocator);
+ (yyval.module) = new_module();
WabtReadBinaryOptions options = WABT_READ_BINARY_OPTIONS_DEFAULT;
BinaryErrorCallbackData user_data;
user_data.loc = &(yyvsp[0].raw_module).binary.loc;
@@ -3820,38 +3812,38 @@ yyreduce:
WabtBinaryErrorHandler error_handler;
error_handler.on_error = on_read_binary_error;
error_handler.user_data = &user_data;
- wabt_read_binary_ast(parser->allocator, (yyvsp[0].raw_module).binary.data, (yyvsp[0].raw_module).binary.size,
- &options, &error_handler, (yyval.module));
- wabt_free(parser->allocator, (yyvsp[0].raw_module).binary.data);
+ wabt_read_binary_ast((yyvsp[0].raw_module).binary.data, (yyvsp[0].raw_module).binary.size, &options,
+ &error_handler, (yyval.module));
+ wabt_free((yyvsp[0].raw_module).binary.data);
(yyval.module)->name = (yyvsp[0].raw_module).binary.name;
(yyval.module)->loc = (yyvsp[0].raw_module).binary.loc;
}
}
-#line 3831 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3823 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 149:
-#line 1322 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1314 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.var));
(yyval.var).type = WABT_VAR_TYPE_INDEX;
(yyval.var).index = INVALID_VAR_INDEX;
}
-#line 3841 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3833 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 150:
-#line 1327 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1319 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.var));
(yyval.var).type = WABT_VAR_TYPE_NAME;
DUPTEXT((yyval.var).name, (yyvsp[0].text));
}
-#line 3851 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3843 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 151:
-#line 1335 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1327 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.action));
(yyval.action).loc = (yylsp[-4]);
@@ -3860,11 +3852,11 @@ yyreduce:
(yyval.action).invoke.name = (yyvsp[-2].text);
(yyval.action).invoke.args = (yyvsp[-1].consts);
}
-#line 3864 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3856 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 152:
-#line 1343 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1335 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.action));
(yyval.action).loc = (yylsp[-3]);
@@ -3872,147 +3864,147 @@ yyreduce:
(yyval.action).type = WABT_ACTION_TYPE_GET;
(yyval.action).invoke.name = (yyvsp[-1].text);
}
-#line 3876 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3868 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 153:
-#line 1353 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1345 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.command) = new_command(parser->allocator);
+ (yyval.command) = new_command();
(yyval.command)->type = WABT_COMMAND_TYPE_ASSERT_MALFORMED;
(yyval.command)->assert_malformed.module = (yyvsp[-2].raw_module);
(yyval.command)->assert_malformed.text = (yyvsp[-1].text);
}
-#line 3887 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3879 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 154:
-#line 1359 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1351 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.command) = new_command(parser->allocator);
+ (yyval.command) = new_command();
(yyval.command)->type = WABT_COMMAND_TYPE_ASSERT_INVALID;
(yyval.command)->assert_invalid.module = (yyvsp[-2].raw_module);
(yyval.command)->assert_invalid.text = (yyvsp[-1].text);
}
-#line 3898 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3890 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 155:
-#line 1365 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1357 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.command) = new_command(parser->allocator);
+ (yyval.command) = new_command();
(yyval.command)->type = WABT_COMMAND_TYPE_ASSERT_UNLINKABLE;
(yyval.command)->assert_unlinkable.module = (yyvsp[-2].raw_module);
(yyval.command)->assert_unlinkable.text = (yyvsp[-1].text);
}
-#line 3909 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3901 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 156:
-#line 1371 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1363 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.command) = new_command(parser->allocator);
+ (yyval.command) = new_command();
(yyval.command)->type = WABT_COMMAND_TYPE_ASSERT_UNINSTANTIABLE;
(yyval.command)->assert_uninstantiable.module = (yyvsp[-2].raw_module);
(yyval.command)->assert_uninstantiable.text = (yyvsp[-1].text);
}
-#line 3920 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3912 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 157:
-#line 1377 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1369 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.command) = new_command(parser->allocator);
+ (yyval.command) = new_command();
(yyval.command)->type = WABT_COMMAND_TYPE_ASSERT_RETURN;
(yyval.command)->assert_return.action = (yyvsp[-2].action);
(yyval.command)->assert_return.expected = (yyvsp[-1].consts);
}
-#line 3931 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3923 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 158:
-#line 1383 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1375 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.command) = new_command(parser->allocator);
+ (yyval.command) = new_command();
(yyval.command)->type = WABT_COMMAND_TYPE_ASSERT_RETURN_NAN;
(yyval.command)->assert_return_nan.action = (yyvsp[-1].action);
}
-#line 3941 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3933 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 159:
-#line 1388 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1380 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.command) = new_command(parser->allocator);
+ (yyval.command) = new_command();
(yyval.command)->type = WABT_COMMAND_TYPE_ASSERT_TRAP;
(yyval.command)->assert_trap.action = (yyvsp[-2].action);
(yyval.command)->assert_trap.text = (yyvsp[-1].text);
}
-#line 3952 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3944 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 160:
-#line 1394 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1386 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.command) = new_command(parser->allocator);
+ (yyval.command) = new_command();
(yyval.command)->type = WABT_COMMAND_TYPE_ASSERT_EXHAUSTION;
(yyval.command)->assert_trap.action = (yyvsp[-2].action);
(yyval.command)->assert_trap.text = (yyvsp[-1].text);
}
-#line 3963 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3955 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 161:
-#line 1403 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1395 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.command) = new_command(parser->allocator);
+ (yyval.command) = new_command();
(yyval.command)->type = WABT_COMMAND_TYPE_ACTION;
(yyval.command)->action = (yyvsp[0].action);
}
-#line 3973 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3965 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 163:
-#line 1409 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1401 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.command) = new_command(parser->allocator);
+ (yyval.command) = new_command();
(yyval.command)->type = WABT_COMMAND_TYPE_MODULE;
(yyval.command)->module = *(yyvsp[0].module);
- wabt_free(parser->allocator, (yyvsp[0].module));
+ wabt_free((yyvsp[0].module));
}
-#line 3984 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3976 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 164:
-#line 1415 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1407 "src/ast-parser.y" /* yacc.c:1646 */
{
- (yyval.command) = new_command(parser->allocator);
+ (yyval.command) = new_command();
(yyval.command)->type = WABT_COMMAND_TYPE_REGISTER;
(yyval.command)->register_.module_name = (yyvsp[-2].text);
(yyval.command)->register_.var = (yyvsp[-1].var);
(yyval.command)->register_.var.loc = (yylsp[-1]);
}
-#line 3996 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3988 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 165:
-#line 1424 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1416 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.commands)); }
-#line 4002 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 3994 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 166:
-#line 1425 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1417 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.commands) = (yyvsp[-1].commands);
- wabt_append_command_value(parser->allocator, &(yyval.commands), (yyvsp[0].command));
- wabt_free(parser->allocator, (yyvsp[0].command));
+ wabt_append_command_value(&(yyval.commands), (yyvsp[0].command));
+ wabt_free((yyvsp[0].command));
}
-#line 4012 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 4004 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 167:
-#line 1433 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1425 "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,
@@ -4021,31 +4013,30 @@ yyreduce:
"invalid literal \"" PRIstringslice "\"",
WABT_PRINTF_STRING_SLICE_ARG((yyvsp[-1].literal).text));
}
- wabt_free(parser->allocator, (char*)(yyvsp[-1].literal).text.start);
+ wabt_free((char*)(yyvsp[-1].literal).text.start);
}
-#line 4027 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 4019 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 168:
-#line 1445 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1437 "src/ast-parser.y" /* yacc.c:1646 */
{ WABT_ZERO_MEMORY((yyval.consts)); }
-#line 4033 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 4025 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 169:
-#line 1446 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1438 "src/ast-parser.y" /* yacc.c:1646 */
{
(yyval.consts) = (yyvsp[-1].consts);
- wabt_append_const_value(parser->allocator, &(yyval.consts), &(yyvsp[0].const_));
+ wabt_append_const_value(&(yyval.consts), &(yyvsp[0].const_));
}
-#line 4042 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 4034 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
case 170:
-#line 1453 "src/ast-parser.y" /* yacc.c:1646 */
+#line 1445 "src/ast-parser.y" /* yacc.c:1646 */
{
WABT_ZERO_MEMORY((yyval.script));
- (yyval.script).allocator = parser->allocator;
(yyval.script).commands = (yyvsp[0].commands);
int last_module_index = -1;
@@ -4062,10 +4053,9 @@ yyreduce:
if (module->name.length == 0)
continue;
- WabtStringSlice module_name =
- wabt_dup_string_slice(parser->allocator, module->name);
- WabtBinding* binding = wabt_insert_binding(
- parser->allocator, &(yyval.script).module_bindings, &module_name);
+ WabtStringSlice module_name = wabt_dup_string_slice(module->name);
+ WabtBinding* binding =
+ wabt_insert_binding(&(yyval.script).module_bindings, &module_name);
binding->loc = module->loc;
binding->index = i;
break;
@@ -4104,11 +4094,11 @@ yyreduce:
}
parser->script = (yyval.script);
}
-#line 4108 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 4098 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
break;
-#line 4112 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
+#line 4102 "src/prebuilt/ast-parser-gen.c" /* yacc.c:1646 */
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
@@ -4343,7 +4333,7 @@ yyreturn:
#endif
return yyresult;
}
-#line 1522 "src/ast-parser.y" /* yacc.c:1906 */
+#line 1512 "src/ast-parser.y" /* yacc.c:1906 */
static void append_expr_list(WabtExprList* expr_list, WabtExprList* expr) {
@@ -4457,8 +4447,7 @@ static size_t copy_string_contents(WabtStringSlice* text, char* dest) {
return dest - dest_start;
}
-static void dup_text_list(WabtAllocator* allocator,
- WabtTextList* text_list,
+static void dup_text_list(WabtTextList* text_list,
void** out_data,
size_t* out_size) {
/* walk the linked list to see how much total space is needed */
@@ -4473,7 +4462,7 @@ static void dup_text_list(WabtAllocator* allocator,
size_t size = (end > src) ? (end - src) : 0;
total_size += size;
}
- char* result = wabt_alloc(allocator, total_size, 1);
+ char* result = wabt_alloc(total_size);
char* dest = result;
for (node = text_list->first; node; node = node->next) {
size_t actual_size = copy_string_contents(&node->text, dest);
@@ -4487,8 +4476,7 @@ static WabtBool is_empty_signature(WabtFuncSignature* sig) {
return sig->result_types.size == 0 && sig->param_types.size == 0;
}
-static void append_implicit_func_declaration(WabtAllocator* allocator,
- WabtLocation* loc,
+static void append_implicit_func_declaration(WabtLocation* loc,
WabtModule* module,
WabtFuncDeclaration* decl) {
if (wabt_decl_has_func_type(decl))
@@ -4496,10 +4484,10 @@ static void append_implicit_func_declaration(WabtAllocator* allocator,
int sig_index = wabt_get_func_type_index_by_decl(module, decl);
if (sig_index == -1) {
- wabt_append_implicit_func_type(allocator, loc, module, &decl->sig);
+ wabt_append_implicit_func_type(loc, module, &decl->sig);
} else {
/* signature already exists, share that one and destroy this one */
- wabt_destroy_func_signature(allocator, &decl->sig);
+ wabt_destroy_func_signature(&decl->sig);
WabtFuncSignature* sig = &module->func_types.data[sig_index]->sig;
decl->sig = *sig;
}
@@ -4512,9 +4500,6 @@ WabtResult wabt_parse_ast(WabtAstLexer* lexer,
WabtSourceErrorHandler* error_handler) {
WabtAstParser parser;
WABT_ZERO_MEMORY(parser);
- WabtAllocator* allocator = wabt_ast_lexer_get_allocator(lexer);
- parser.allocator = allocator;
- parser.script.allocator = allocator;
parser.error_handler = error_handler;
int result = wabt_ast_parser_parse(lexer, &parser);
*out_script = parser.script;