To not barf when an error occurs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10236 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2003-11-26 07:24:58 +00:00
parent 5b266581fb
commit 4257098c36

View File

@ -554,10 +554,6 @@ static bool setValueName(Value *V, char *NameStr) {
}
}
// Clear the symbol table so it doesn't complain when it
// gets destructed
CurFun.LocalSymtab.clear();
ThrowException("Redefinition of value named '" + Name + "' in the '" +
V->getType()->getDescription() + "' type plane!");
}
@ -572,10 +568,6 @@ static bool setValueName(Value *V, char *NameStr) {
// If it already exists
if (Existing) {
// Clear the symbol table so it doesn't complain when it
// gets destructed
CurFun.LocalSymtab.clear();
// Bail
ThrowException("Redefinition of value named '" + Name + "' in the '" +
V->getType()->getDescription() + "' type plane!");
@ -646,7 +638,15 @@ Module *RunVMAsmParser(const std::string &Filename, FILE *F) {
// Allocate a new module to read
CurModule.CurrentModule = new Module(Filename);
yyparse(); // Parse the file.
try {
yyparse(); // Parse the file.
} catch (...) {
// Clear the symbol table so it doesn't complain when it
// gets destructed
CurFun.LocalSymtab.clear();
throw;
}
Module *Result = ParserResult;