summaryrefslogtreecommitdiff
path: root/src/ir/effects.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/ir/effects.h')
-rw-r--r--src/ir/effects.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/ir/effects.h b/src/ir/effects.h
index 0b3d2a4af..6901f99de 100644
--- a/src/ir/effects.h
+++ b/src/ir/effects.h
@@ -994,6 +994,14 @@ private:
parent.throws_ = true;
}
}
+ void visitSuspend(Suspend* curr) {
+ // Similar to resume/call: Suspending means that we execute arbitrary
+ // other code before we may resume here.
+ parent.calls = true;
+ if (parent.features.hasExceptionHandling() && parent.tryDepth == 0) {
+ parent.throws_ = true;
+ }
+ }
};
public: