summaryrefslogtreecommitdiff
path: root/src/passes/Asyncify.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/passes/Asyncify.cpp')
-rw-r--r--src/passes/Asyncify.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/passes/Asyncify.cpp b/src/passes/Asyncify.cpp
index cb80b90c7..98b4425b1 100644
--- a/src/passes/Asyncify.cpp
+++ b/src/passes/Asyncify.cpp
@@ -349,6 +349,9 @@ public:
}
struct Walker : PostWalker<Walker> {
void visitCall(Call* curr) {
+ if (curr->isReturn) {
+ Fatal() << "tail calls not yet supported in aysncify";
+ }
auto* target = module->getFunction(curr->target);
if (target->imported() && target->module == ASYNCIFY) {
// Redirect the imports to the functions we'll add later.
@@ -375,6 +378,9 @@ public:
info->callsTo.insert(target);
}
void visitCallIndirect(CallIndirect* curr) {
+ if (curr->isReturn) {
+ Fatal() << "tail calls not yet supported in aysncify";
+ }
if (canIndirectChangeState) {
info->canChangeState = true;
}