For PR645:
Keep track of global constant and variable definitions for eventual use
in resolving conflicts between global and local symbol usage.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32234 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/llvm-upgrade/ParserInternals.h b/tools/llvm-upgrade/ParserInternals.h
index df9d2a8..7fe022e 100644
--- a/tools/llvm-upgrade/ParserInternals.h
+++ b/tools/llvm-upgrade/ParserInternals.h
@@ -60,6 +60,12 @@
 
   void destroy() const { delete newTy; }
 
+  TypeInfo clone() const { 
+    TypeInfo result = *this; 
+    result.newTy = new std::string(*newTy);
+    return result;
+  }
+
   Types getElementType() const { return elemTy; }
 
   bool isSigned() const {