+const char* SIMIX_simcall_name(const s_smx_simcall& simcall)
+{
+ if (simcall.observer_ != nullptr) {
+ static std::string name;
+ name = boost::core::demangle(typeid(*simcall.observer_).name());
+ const char* cname = name.c_str();
+ if (name.rfind("simgrid::kernel::", 0) == 0)
+ cname += 17; // strip prefix "simgrid::kernel::"
+ return cname;
+ } else {
+ return simcall_names[static_cast<int>(simcall.call_)];
+ }