Fix build failure on GCC 4.7 (old libstdc++ doesn't have std::map::emplace).
authorAlexey Samsonov <vonosmas@gmail.com>
Mon, 26 Oct 2015 21:20:37 +0000 (21:20 +0000)
committerAlexey Samsonov <vonosmas@gmail.com>
Mon, 26 Oct 2015 21:20:37 +0000 (21:20 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@251347 91177308-0d34-0410-b5e6-96231b3b80d8

lib/DebugInfo/Symbolize/Symbolize.cpp

index aa24dd945d15bd3a035a8a162befbd6b3f8cee48..ecdb089cd7762a49f63685b86eda629d88c1b934 100644 (file)
@@ -530,7 +530,8 @@ LLVMSymbolizer::getOrCreateModuleInfo(const std::string &ModuleName) {
 
   if (!Objects.first) {
     // Failed to find valid object file.
-    Modules.insert(make_pair(ModuleName, nullptr));
+    Modules.insert(
+        std::make_pair(ModuleName, std::unique_ptr<ModuleInfo>(nullptr)));
     return nullptr;
   }
   std::unique_ptr<DIContext> Context;
@@ -549,7 +550,7 @@ LLVMSymbolizer::getOrCreateModuleInfo(const std::string &ModuleName) {
   assert(Context);
   auto Info = llvm::make_unique<ModuleInfo>(Objects.first, std::move(Context));
   ModuleInfo *Res = Info.get();
-  Modules.emplace(ModuleName, std::move(Info));
+  Modules.insert(std::make_pair(ModuleName, std::move(Info)));
   return Res;
 }