summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/tools/wasm-ctor-eval.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/tools/wasm-ctor-eval.cpp b/src/tools/wasm-ctor-eval.cpp
index 4272c5dba..07e883b8f 100644
--- a/src/tools/wasm-ctor-eval.cpp
+++ b/src/tools/wasm-ctor-eval.cpp
@@ -331,8 +331,12 @@ void evalCtors(Module& wasm, std::vector<std::string> ctors) {
// snapshot globals (note that STACKTOP might be modified, but should
// be returned, so that works out)
auto globalsBefore = instance.globals;
+ Export *ex = wasm.getExportOrNull(ctor);
+ if (!ex) {
+ Fatal() << "export not found: " << ctor;
+ }
try {
- instance.callExport(ctor);
+ instance.callFunction(ex->value, LiteralList());
} catch (FailToEvalException& fail) {
// that's it, we failed, so stop here, cleaning up partial
// memory changes first