simgrid::kernel::actor::ActorImpl* owner = nullptr;
const char* file = nullptr;
int line = -1;
- ObjectOwner(simgrid::kernel::actor::ActorImpl* o) : owner(o) {}
+ explicit ObjectOwner(simgrid::kernel::actor::ActorImpl* o) : owner(o) {}
};
std::unordered_map<void*, ObjectOwner*> owners;
if (it != owners.end())
return it->second;
auto* o = new ObjectOwner(nullptr);
- owners.emplace(object, o);
+ owners.insert({object, o});
return o;
}
[self, objaddr, objname]() -> void {
XBT_INFO("%s releases %s", self->get_cname(), objname);
auto* ownership = get_owner(objaddr);
- xbt_assert(ownership->owner == self, "safety check failed: I'm not owner of the object I'm releasing.");
+ xbt_assert(ownership->owner == self, "safety check failed: %s is not owner of the object it's releasing.",
+ self->get_cname());
ownership->owner = nullptr;
},
&observer);