#include <simgrid/s4u/Engine.hpp>
#include <simgrid/s4u/Exec.hpp>
#include <simgrid/s4u/Io.hpp>
#include <simgrid/s4u/Engine.hpp>
#include <simgrid/s4u/Exec.hpp>
#include <simgrid/s4u/Io.hpp>
if (state_ == State::FAILED) {
if (dynamic_cast<Comm*>(this))
throw NetworkFailureException(XBT_THROW_POINT, "Cannot wait for a failed comm");
if (state_ == State::FAILED) {
if (dynamic_cast<Comm*>(this))
throw NetworkFailureException(XBT_THROW_POINT, "Cannot wait for a failed comm");
if (dynamic_cast<Exec*>(this))
throw HostFailureException(XBT_THROW_POINT, "Cannot wait for a failed exec");
if (dynamic_cast<Io*>(this))
if (dynamic_cast<Exec*>(this))
throw HostFailureException(XBT_THROW_POINT, "Cannot wait for a failed exec");
if (dynamic_cast<Io*>(this))