Make ModuleMapParser own its TargetInfo, so it doesn't get leaked.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153648 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Lex/ModuleMap.cpp b/lib/Lex/ModuleMap.cpp
index e6851af..5304311 100644
--- a/lib/Lex/ModuleMap.cpp
+++ b/lib/Lex/ModuleMap.cpp
@@ -508,7 +508,7 @@
/// \brief Default target information, used only for string literal
/// parsing.
- TargetInfo *Target;
+ OwningPtr<TargetInfo> Target;
/// \brief Stores string data for the various string literals referenced
/// during parsing.
@@ -551,7 +551,7 @@
{
TargetOptions TargetOpts;
TargetOpts.Triple = llvm::sys::getDefaultTargetTriple();
- Target = TargetInfo::CreateTargetInfo(Diags, TargetOpts);
+ Target.reset(TargetInfo::CreateTargetInfo(Diags, TargetOpts));
Tok.clear();
consumeToken();