Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Useless cast to void*.
[simgrid.git] / teshsuite / mc / mutex-handling / mutex-handling.cpp
index 4e00e3d..4e64813 100644 (file)
 #include "simgrid/s4u/Host.hpp"
 #include "simgrid/s4u/Mailbox.hpp"
 #include "simgrid/s4u/Mutex.hpp"
-#include <xbt/synchro.h>
 
 XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test, "Messages specific for this msg example");
 
 static int receiver(const char* box_name)
 {
   auto mb = simgrid::s4u::Mailbox::by_name(box_name);
-  const int* payload;
+  std::unique_ptr<int> payload;
 
-  payload = static_cast<int*>(mb->get());
+  payload = mb->get_unique<int>();
   MC_assert(*payload == 1);
-  delete payload;
 
-  payload = static_cast<int*>(mb->get());
+  payload = mb->get_unique<int>();
   MC_assert(*payload == 2);
-  delete payload;
 
   return 0;
 }
 
 static int sender(const char* box_name, simgrid::s4u::MutexPtr mutex, int value)
 {
-  int* payload = new int(value);
+  auto* payload = new int(value);
   auto mb      = simgrid::s4u::Mailbox::by_name(box_name);
 
   if (mutex)
     mutex->lock();
 
-  mb->put(static_cast<void*>(payload), 8);
+  mb->put(payload, 8);
 
   if (mutex)
     mutex->unlock();