diff options
author | Nuno Lopes <nunoplopes@sapo.pt> | 2008-10-15 11:19:34 +0000 |
---|---|---|
committer | Nuno Lopes <nunoplopes@sapo.pt> | 2008-10-15 11:19:34 +0000 |
commit | ee87b3b6d99d103499181401987829dd789db7e4 (patch) | |
tree | cf08e0c0bed05c89e5443a021692e66dc984d08e /lib/AsmParser/llvmAsmParser.y | |
parent | 6ec8a25b270126cae185a247155f3d7a56ab519b (diff) | |
download | llvm-ee87b3b6d99d103499181401987829dd789db7e4.tar.gz llvm-ee87b3b6d99d103499181401987829dd789db7e4.tar.bz2 llvm-ee87b3b6d99d103499181401987829dd789db7e4.tar.xz |
fix memleak in getTypeVal()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57574 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AsmParser/llvmAsmParser.y')
-rw-r--r-- | lib/AsmParser/llvmAsmParser.y | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y index 9b29cdd76c..54694d712c 100644 --- a/lib/AsmParser/llvmAsmParser.y +++ b/lib/AsmParser/llvmAsmParser.y @@ -307,8 +307,10 @@ static const Type *getTypeVal(const ValID &D, bool DoNotImprovise = false) { } std::map<ValID, PATypeHolder>::iterator I =CurModule.LateResolveTypes.find(D); - if (I != CurModule.LateResolveTypes.end()) + if (I != CurModule.LateResolveTypes.end()) { + D.destroy(); return I->second; + } Type *Typ = OpaqueType::get(); CurModule.LateResolveTypes.insert(std::make_pair(D, Typ)); |