Make the destructor for TypeMapBase protected. Spotted by Duncan Sands with
authorNick Lewycky <nicholas@mxc.ca>
Sun, 7 Feb 2010 21:13:46 +0000 (21:13 +0000)
committerNick Lewycky <nicholas@mxc.ca>
Sun, 7 Feb 2010 21:13:46 +0000 (21:13 +0000)
cppcheck!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95527 91177308-0d34-0410-b5e6-96231b3b80d8

lib/VMCore/TypesContext.h

index 93a801b9f660c2bb7526e465b184c95341c05b74..7419b0e894558777c20072dbd97c27ea567187f3 100644 (file)
@@ -216,7 +216,6 @@ protected:
   ///
   std::multimap<unsigned, PATypeHolder> TypesByHash;
 
-public:
   ~TypeMapBase() {
     // PATypeHolder won't destroy non-abstract types.
     // We can't destroy them by simply iterating, because
@@ -236,6 +235,7 @@ public:
     }
   }
 
+public:
   void RemoveFromTypesByHash(unsigned Hash, const Type *Ty) {
     std::multimap<unsigned, PATypeHolder>::iterator I =
       TypesByHash.lower_bound(Hash);
@@ -281,7 +281,6 @@ class TypeMap : public TypeMapBase {
   std::map<ValType, PATypeHolder> Map;
 public:
   typedef typename std::map<ValType, PATypeHolder>::iterator iterator;
-  ~TypeMap() { print("ON EXIT"); }
 
   inline TypeClass *get(const ValType &V) {
     iterator I = Map.find(V);