summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/wasm-binary-writer.c6
-rw-r--r--src/wasm-check.c2
-rw-r--r--src/wasm-common.h4
-rw-r--r--src/wasm-parser.c8
-rw-r--r--src/wasm-parser.y8
-rw-r--r--src/wasm.c2
-rw-r--r--src/wasm.h4
7 files changed, 20 insertions, 14 deletions
diff --git a/src/wasm-binary-writer.c b/src/wasm-binary-writer.c
index 16c53095..ba0bac43 100644
--- a/src/wasm-binary-writer.c
+++ b/src/wasm-binary-writer.c
@@ -1336,7 +1336,7 @@ static WasmModuleField* append_module_field_and_fixup(
WasmExportPtr* export_ptr = wasm_append_export_ptr(&module->exports);
if (!export_ptr)
goto fail;
- *export_ptr = &result->export;
+ *export_ptr = &result->export_;
break;
}
case WASM_MODULE_FIELD_TYPE_FUNC_TYPE: {
@@ -1378,7 +1378,7 @@ static WasmModuleField* append_module_field_and_fixup(
break;
case WASM_MODULE_FIELD_TYPE_EXPORT:
assert(num_exports < module->exports.size);
- module->exports.data[num_exports++] = &field->export;
+ module->exports.data[num_exports++] = &field->export_;
break;
case WASM_MODULE_FIELD_TYPE_TABLE:
module->table = &field->table;
@@ -1433,7 +1433,7 @@ static WasmFunc* append_nullary_func(WasmModule* module,
/* leave the func field, it will be cleaned up later */
return NULL;
}
- WasmExport* export = &export_field->export;
+ WasmExport* export = &export_field->export_;
export->var.type = WASM_VAR_TYPE_INDEX;
export->var.index = func_index;
export->name = export_name;
diff --git a/src/wasm-check.c b/src/wasm-check.c
index d6c33952..2501fe0f 100644
--- a/src/wasm-check.c
+++ b/src/wasm-check.c
@@ -823,7 +823,7 @@ static WasmResult check_module(WasmCheckContext* ctx, WasmModule* module) {
result |= check_import(ctx, module, &field->loc, &field->import);
break;
case WASM_MODULE_FIELD_TYPE_EXPORT:
- result |= check_export(ctx, module, &field->export);
+ result |= check_export(ctx, module, &field->export_);
break;
case WASM_MODULE_FIELD_TYPE_TABLE:
if (seen_table) {
diff --git a/src/wasm-common.h b/src/wasm-common.h
index c95ada2f..27aa3eb5 100644
--- a/src/wasm-common.h
+++ b/src/wasm-common.h
@@ -3,8 +3,12 @@
#ifdef __cplusplus
#define EXTERN_C extern "C"
+#define EXTERN_C_BEGIN extern "C" {
+#define EXTERN_C_END }
#else
#define EXTERN_C
+#define EXTERN_C_BEGIN
+#define EXTERN_C_END
#endif
#define WARN_UNUSED __attribute__ ((warn_unused_result))
diff --git a/src/wasm-parser.c b/src/wasm-parser.c
index fc610b97..38f061c2 100644
--- a/src/wasm-parser.c
+++ b/src/wasm-parser.c
@@ -3734,7 +3734,7 @@ yyreduce:
CHECK_ALLOC_NULL(field);
field->loc = (yylsp[0]);
field->type = WASM_MODULE_FIELD_TYPE_EXPORT;
- field->export = (yyvsp[0].export);
+ field->export_ = (yyvsp[0].export);
}
#line 3740 "src/wasm-parser.c" /* yacc.c:1646 */
break;
@@ -3828,13 +3828,13 @@ yyreduce:
break;
}
case WASM_MODULE_FIELD_TYPE_EXPORT: {
- WasmExportPtr export_ptr = &field->export;
+ WasmExportPtr export_ptr = &field->export_;
CHECK_ALLOC(wasm_append_export_ptr_value(&(yyval.module).exports, &export_ptr));
- if (field->export.name.start) {
+ if (field->export_.name.start) {
WasmBinding* binding = wasm_append_binding(&(yyval.module).export_bindings);
CHECK_ALLOC_NULL(binding);
binding->loc = field->loc;
- binding->name = field->export.name;
+ binding->name = field->export_.name;
binding->index = (yyval.module).exports.size - 1;
}
break;
diff --git a/src/wasm-parser.y b/src/wasm-parser.y
index ce0e747f..84a3101e 100644
--- a/src/wasm-parser.y
+++ b/src/wasm-parser.y
@@ -1190,7 +1190,7 @@ module_fields :
CHECK_ALLOC_NULL(field);
field->loc = @2;
field->type = WASM_MODULE_FIELD_TYPE_EXPORT;
- field->export = $2;
+ field->export_ = $2;
}
| module_fields table {
$$ = $1;
@@ -1261,13 +1261,13 @@ module :
break;
}
case WASM_MODULE_FIELD_TYPE_EXPORT: {
- WasmExportPtr export_ptr = &field->export;
+ WasmExportPtr export_ptr = &field->export_;
CHECK_ALLOC(wasm_append_export_ptr_value(&$$.exports, &export_ptr));
- if (field->export.name.start) {
+ if (field->export_.name.start) {
WasmBinding* binding = wasm_append_binding(&$$.export_bindings);
CHECK_ALLOC_NULL(binding);
binding->loc = field->loc;
- binding->name = field->export.name;
+ binding->name = field->export_.name;
binding->index = $$.exports.size - 1;
}
break;
diff --git a/src/wasm.c b/src/wasm.c
index fd5015e3..1014836a 100644
--- a/src/wasm.c
+++ b/src/wasm.c
@@ -344,7 +344,7 @@ static void wasm_destroy_module_field(WasmModuleField* field) {
wasm_destroy_import(&field->import);
break;
case WASM_MODULE_FIELD_TYPE_EXPORT:
- wasm_destroy_export(&field->export);
+ wasm_destroy_export(&field->export_);
break;
case WASM_MODULE_FIELD_TYPE_TABLE:
DESTROY_VECTOR_AND_ELEMENTS(field->table, var);
diff --git a/src/wasm.h b/src/wasm.h
index 31f0442a..527a29c0 100644
--- a/src/wasm.h
+++ b/src/wasm.h
@@ -477,7 +477,7 @@ typedef struct WasmModuleField {
union {
WasmFunc func;
WasmImport import;
- WasmExport export;
+ WasmExport export_;
WasmVarVector table;
WasmFuncType func_type;
WasmMemory memory;
@@ -550,6 +550,7 @@ typedef struct WasmWriteBinaryOptions {
int log_writes;
} WasmWriteBinaryOptions;
+EXTERN_C_BEGIN
WasmScanner wasm_new_scanner(const char* filename);
void wasm_free_scanner(WasmScanner scanner);
void wasm_error(WasmLocation*, WasmScanner, WasmParser*, const char*, ...);
@@ -600,5 +601,6 @@ WasmResult wasm_extend_type_bindings(WasmTypeBindings* dst,
WasmTypeBindings* src) WARN_UNUSED;
int wasm_func_is_exported(WasmModule* module, WasmFunc* func);
+EXTERN_C_END
#endif /* WASM_H_ */