Minor cleanups, plug a minor memory leak


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10596 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AsmParser/ParserInternals.h b/lib/AsmParser/ParserInternals.h
index c18434d..bb248c3 100644
--- a/lib/AsmParser/ParserInternals.h
+++ b/lib/AsmParser/ParserInternals.h
@@ -67,8 +67,7 @@
 // discriminated union.
 //
 // Note that I can't implement this class in a straight forward manner with 
-// constructors and stuff because it goes in a union, and GCC doesn't like 
-// putting classes with ctor's in unions.  :(
+// constructors and stuff because it goes in a union.
 //
 struct ValID {
   enum {
diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y
index 5706b53..8049dc8 100644
--- a/lib/AsmParser/llvmAsmParser.y
+++ b/lib/AsmParser/llvmAsmParser.y
@@ -1122,10 +1122,8 @@
     
       if (I != CurModule.GlobalRefs.end()) {
 	V = I->second;             // Placeholder already exists, use it...
+        $2.destroy();
       } else {
-	// TODO: Include line number info by creating a subclass of
-	// TODO: GlobalVariable here that includes the said information!
-	
 	// Create a placeholder for the global variable reference...
 	GlobalVariable *GV = new GlobalVariable(PT->getElementType(),
                                                 false,