diff options
-rw-r--r-- | lib/AsmParser/llvmAsmParser.y | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y index 1a8458409b..608ed721f7 100644 --- a/lib/AsmParser/llvmAsmParser.y +++ b/lib/AsmParser/llvmAsmParser.y @@ -707,6 +707,7 @@ static void ResolveTypeTo(std::string *Name, const Type *ToTy) { ((DerivedType*)I->second.get())->refineAbstractTypeTo(ToTy); CurModule.LateResolveTypes.erase(I); } + D.destroy(); } // setValueName - Set the specified value to the name given. The name may be @@ -782,9 +783,12 @@ ParseGlobalVariable(std::string *NameStr, GV->setConstant(isConstantGlobal); GV->setThreadLocal(IsThreadLocal); InsertValue(GV, CurModule.Values); + ID.destroy(); return GV; } + ID.destroy(); + // If this global has a name if (!Name.empty()) { // if the global we're parsing has an initializer (is a definition) and |