]> AND Public Git Repository - simgrid.git/blobdiff - teshsuite/simix/stack-overflow/stack-overflow.cpp
Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Silly workaround for coverage build with gcc-10.
[simgrid.git] / teshsuite / simix / stack-overflow / stack-overflow.cpp
index 61d33e91051b7f33d64f6966d26c1ac638ff2c32..ccab36f698da4ea82526fb79d07dc019e0661f7b 100644 (file)
@@ -1,12 +1,12 @@
-/* stack_overflow -- simple program generating a stack overflow          */
+/* stack_overflow -- simple program generating a stack overflow             */
 
-/* Copyright (c) 2014-2018. The SimGrid Team.
- * All rights reserved.                                                     */
+/* Copyright (c) 2014-2020. The SimGrid Team. All rights reserved.          */
 
 /* This program is free software; you can redistribute it and/or modify it
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
-#include "simgrid/simix.h"
+#include "simgrid/s4u/Actor.hpp"
+#include "simgrid/s4u/Engine.hpp"
 #include "xbt/log.h"
 
 #include <string>
@@ -28,7 +28,7 @@ static unsigned collatz(unsigned c0, unsigned n)
   return x;
 }
 
-static int master(int argc, char* argv[])
+static void master()
 {
   XBT_INFO("Launching our nice bugged recursive function...");
   unsigned i = 1;
@@ -37,19 +37,17 @@ static int master(int argc, char* argv[])
     unsigned res = collatz(i, i);
     XBT_VERB("collatz(%u, %u) returned %u", i, i, res);
   }
-  return 0;
 }
 
 int main(int argc, char* argv[])
 {
-  SIMIX_global_init(&argc, argv);
+  simgrid::s4u::Engine e(&argc, argv);
 
   xbt_assert(argc == 2, "Usage: %s platform.xml\n", argv[0]);
 
-  SIMIX_function_register("master", master);
-  SIMIX_create_environment(argv[1]);
-  simcall_process_create(std::string("master"), master, NULL, sg_host_by_name("Tremblay"), 0, NULL, NULL);
-  SIMIX_run();
+  e.load_platform(argv[1]);
+  simgrid::s4u::Actor::create("master", e.host_by_name("Tremblay"), master);
+  e.run();
 
   return 0;
 }