diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2004-07-25 21:30:51 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2004-07-25 21:30:51 +0000 |
commit | feaf10e5717453b53df664399d872ec9003d59a6 (patch) | |
tree | 0740da891bf5b055da5b40dd0e9ec5550cad4fdd | |
parent | c9a1f0dcdde056a2cdbc446a9d6853684402263f (diff) |
Adjust to new Module.h interface for dependent libraries
Remove mem leaks resulting from not freeing parse strings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15217 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/AsmParser/llvmAsmParser.y | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y index be3614780d..d7c1723b69 100644 --- a/lib/AsmParser/llvmAsmParser.y +++ b/lib/AsmParser/llvmAsmParser.y @@ -1445,20 +1445,19 @@ TargetDefinition : ENDIAN '=' BigOrLittle { ThrowException("Invalid pointer size: '" + utostr($3) + "'!"); } | TRIPLE '=' STRINGCONSTANT { - std::string triple($3); - CurModule.CurrentModule->setTargetTriple(triple); + CurModule.CurrentModule->setTargetTriple($3); + free($3); }; -LibrariesDefinition : '[' LibList ']' - ; +LibrariesDefinition : '[' LibList ']'; LibList : LibList ',' STRINGCONSTANT { - std::string lib($3); - CurModule.CurrentModule->linsert(lib); + CurModule.CurrentModule->addLibrary($3); + free($3); } | STRINGCONSTANT { - std::string lib($1); - CurModule.CurrentModule->linsert(lib); + CurModule.CurrentModule->addLibrary($1); + free($1); } | /* empty: end of list */ { } |