auto checker = static_cast<simgrid::mc::CheckerSide*>(arg);
if (events == EV_READ) {
do {
-
std::array<char, MC_MESSAGE_LENGTH> buffer;
ssize_t size = checker->get_channel().receive(buffer.data(), buffer.size(), MSG_DONTWAIT);
if (size == -1) {
(int)answer.type, (int)MessageType::FINALIZE_REPLY);
}
-void CheckerSide::dispatch_events()
+void CheckerSide::dispatch_events() const
{
event_base_dispatch(base_.get());
}
return false;
case MessageType::ASSERTION_FAILED:
+ // report_assertion_failure() is NORETURN, but it may change when we report more than one error per run,
+ // so please keep the consumed computation even if clang-static detects it as a dead affectation.
consumed = sizeof(s_mc_message_t);
Exploration::get_instance()->report_assertion_failure();
break;
}
} else { // Ask our proxy to wait for us
-
s_mc_message_int_t request = {};
request.type = MessageType::WAIT_CHILD;
request.value = pid_;