diff options
-rw-r--r-- | llvm/include/llvm/Analysis/RegionInfoImpl.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/llvm/include/llvm/Analysis/RegionInfoImpl.h b/llvm/include/llvm/Analysis/RegionInfoImpl.h index bf4763ece30..a16c534484b 100644 --- a/llvm/include/llvm/Analysis/RegionInfoImpl.h +++ b/llvm/include/llvm/Analysis/RegionInfoImpl.h @@ -329,10 +329,9 @@ typename Tr::RegionNodeT *RegionBase<Tr>::getBBNode(BlockT *BB) const { if (at == BBNodeMap.end()) { auto Deconst = const_cast<RegionBase<Tr> *>(this); - at = BBNodeMap - .emplace(BB, make_unique<RegionNodeT>( - static_cast<RegionT *>(Deconst), BB)) - .first; + typename BBNodeMapT::value_type V = { + BB, make_unique<RegionNodeT>(static_cast<RegionT *>(Deconst), BB)}; + at = BBNodeMap.insert(std::move(V)).first; } return at->second.get(); } |