diff options
Diffstat (limited to 'src/systemc/core/sc_main.cc')
-rw-r--r-- | src/systemc/core/sc_main.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/systemc/core/sc_main.cc b/src/systemc/core/sc_main.cc index 2637cef0e..5e1cd4fe6 100644 --- a/src/systemc/core/sc_main.cc +++ b/src/systemc/core/sc_main.cc @@ -79,6 +79,10 @@ class ScMainFiber : public Fiber } catch (const sc_report &r) { // There was an exception nobody caught. resultStr = r.what(); + } catch (...) { + // There was some other type of exception we need to wrap. + const sc_report *r = ::sc_gem5::reportifyException(); + resultStr = r->what(); } ::sc_gem5::Kernel::scMainFinished(true); ::sc_gem5::scheduler.clear(); |