X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/84402e8e2ee2a2d0bef25fdceb0a263ed8b471f6..6d3020209fdad39e81987f91d375f482be14dee6:/src/mc/mc_base.cpp diff --git a/src/mc/mc_base.cpp b/src/mc/mc_base.cpp index 5612154521..3656982bf2 100644 --- a/src/mc/mc_base.cpp +++ b/src/mc/mc_base.cpp @@ -11,7 +11,7 @@ #include "src/mc/mc_replay.hpp" #include "src/simix/smx_private.hpp" -#include +#include "xbt/random.hpp" #if SIMGRID_HAVE_MC #include "src/mc/ModelChecker.hpp" @@ -49,7 +49,7 @@ void wait_for_requests() } #if SIMGRID_HAVE_MC xbt_dynar_reset(simix_global->actors_vector); - for (std::pair const& kv : simix_global->process_list) { + for (std::pair const& kv : simix_global->process_list) { xbt_dynar_push_as(simix_global->actors_vector, smx_actor_t, kv.second); } #endif @@ -118,9 +118,9 @@ bool actor_is_enabled(smx_actor_t actor) case SIMCALL_MUTEX_LOCK: { const kernel::activity::MutexImpl* mutex = simcall_mutex_lock__get__mutex(req); - if (mutex->owner_ == nullptr) + if (mutex->get_owner() == nullptr) return true; - return mutex->owner_->get_pid() == req->issuer_->get_pid(); + return mutex->get_owner()->get_pid() == req->issuer_->get_pid(); } case SIMCALL_SEM_ACQUIRE: { @@ -166,9 +166,8 @@ bool request_is_visible(const s_smx_simcall* req) int simcall_HANDLER_mc_random(smx_simcall_t simcall, int min, int max) { if (not MC_is_active() && MC_record_path.empty()) { - static std::default_random_engine rnd_engine; - std::uniform_int_distribution prng(min, max); - return prng(rnd_engine); + static simgrid::xbt::random::XbtRandom prng; + return prng.uniform_int(min, max); } return simcall->mc_value_; }