diff options
Diffstat (limited to 'src/ir/effects.h')
-rw-r--r-- | src/ir/effects.h | 8 |
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: |