summaryrefslogtreecommitdiff
path: root/src/systemc/core/scheduler.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/systemc/core/scheduler.cc')
-rw-r--r--src/systemc/core/scheduler.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/systemc/core/scheduler.cc b/src/systemc/core/scheduler.cc
index c2b5ec38d..085602d7b 100644
--- a/src/systemc/core/scheduler.cc
+++ b/src/systemc/core/scheduler.cc
@@ -117,6 +117,13 @@ Scheduler::yield()
if (_current && _current->needsStart())
_current->run();
}
+ if (_current && _current->excWrapper) {
+ // Make sure this isn't a method process.
+ assert(!_current->needsStart());
+ auto ew = _current->excWrapper;
+ _current->excWrapper = nullptr;
+ ew->throw_it();
+ }
}
void