Merge topic 'cmTarget_non_copyable'

204c5ccb43 cmMakefile: Use std::unordered_map::emplace to add cmTargets to the list

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3134
This commit is contained in:
Brad King
2019-03-22 13:19:36 +00:00
committed by Kitware Robot
2 changed files with 10 additions and 9 deletions

View File

@@ -1214,14 +1214,16 @@ void cmGlobalGenerator::Configure()
this->ConfigureDoneCMP0026AndCMP0024 = true;
// Put a copy of each global target in every directory.
std::vector<GlobalTargetInfo> globalTargets;
this->CreateDefaultGlobalTargets(globalTargets);
{
std::vector<GlobalTargetInfo> globalTargets;
this->CreateDefaultGlobalTargets(globalTargets);
for (cmMakefile* mf : this->Makefiles) {
cmTargets* targets = &(mf->GetTargets());
for (GlobalTargetInfo const& globalTarget : globalTargets) {
targets->insert(cmTargets::value_type(
globalTarget.Name, this->CreateGlobalTarget(globalTarget, mf)));
for (cmMakefile* mf : this->Makefiles) {
auto& targets = mf->GetTargets();
for (GlobalTargetInfo const& globalTarget : globalTargets) {
targets.emplace(globalTarget.Name,
this->CreateGlobalTarget(globalTarget, mf));
}
}
}

View File

@@ -2023,8 +2023,7 @@ cmTarget* cmMakefile::AddNewTarget(cmStateEnums::TargetType type,
{
cmTargets::iterator it =
this->Targets
.insert(cmTargets::value_type(
name, cmTarget(name, type, cmTarget::VisibilityNormal, this)))
.emplace(name, cmTarget(name, type, cmTarget::VisibilityNormal, this))
.first;
this->GetGlobalGenerator()->IndexTarget(&it->second);
this->GetStateSnapshot().GetDirectory().AddNormalTargetName(name);