- char key[INSTR_DEFAULT_STR_SIZE];
- snprintf(key, INSTR_DEFAULT_STR_SIZE, "%s-%s-%s", name, source->getId(), dest->getId());
- Type* ret = new Type(name, key, "", TYPE_LINK, father);
- XBT_DEBUG("LinkType %s(%s), child of %s(%s) %s(%s)->%s(%s)", ret->getCname(), ret->getId(), father->getCname(),
- father->getId(), source->getCname(), source->getId(), dest->getCname(), dest->getId());
- LogLinkTypeDefinition(ret, source, dest);
+ std::string alias = name + "-" + source->id_ + "-" + dest->id_;
+ Type* ret = new Type(name, alias, "", TYPE_LINK, this);
+ XBT_DEBUG("LinkType %s(%s), child of %s(%s) %s(%s)->%s(%s)", ret->getCname(), ret->getId(), getCname(), getId(),
+ source->getCname(), source->getId(), dest->getCname(), dest->getId());
+ ret->logLinkTypeDefinition(source, dest);