34a35
> #include "sim/sim_exit.hh"
355,356c356,364
< if (scMainFiber.called() && !scMainFiber.finished())
< scMainFiber.run();
---
> if (scMainFiber.called()) {
> if (!scMainFiber.finished())
> scMainFiber.run();
> } else {
> if (scMainFiber.finished())
> fatal("Pausing systemc after sc_main completed.");
> else
> exitSimLoopNow("systemc pause");
> }
368,369c376,384
< if (scMainFiber.called() && !scMainFiber.finished())
< scMainFiber.run();
---
> if (scMainFiber.called()) {
> if (!scMainFiber.finished())
> scMainFiber.run();
> } else {
> if (scMainFiber.finished())
> fatal("Stopping systemc after sc_main completed.");
> else
> exitSimLoopNow("systemc stop");
> }