In DenseMapInfo<pair<T, U>> tombstone key, use the tombstone for T and U instead
authorNick Lewycky <nicholas@mxc.ca>
Thu, 28 Jul 2011 06:48:33 +0000 (06:48 +0000)
committerNick Lewycky <nicholas@mxc.ca>
Thu, 28 Jul 2011 06:48:33 +0000 (06:48 +0000)
of the empty key for U. This shouldn't really matter because the tombstone key
for the pair was still distinct from every other key, but it is odd. Patch by
Michael Ilseman!

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

include/llvm/ADT/DenseMapInfo.h

index 744b6f4aef300996f08283aa407b28e4fad0382a..23bfdefd1c4f7e1fc47be7d8ac65abe63c11911c 100644 (file)
@@ -142,7 +142,7 @@ struct DenseMapInfo<std::pair<T, U> > {
   }
   static inline Pair getTombstoneKey() {
     return std::make_pair(FirstInfo::getTombstoneKey(),
-                            SecondInfo::getEmptyKey());
+                          SecondInfo::getTombstoneKey());
   }
   static unsigned getHashValue(const Pair& PairVal) {
     uint64_t key = (uint64_t)FirstInfo::getHashValue(PairVal.first) << 32
@@ -158,7 +158,7 @@ struct DenseMapInfo<std::pair<T, U> > {
     return (unsigned)key;
   }
   static bool isEqual(const Pair &LHS, const Pair &RHS) {
-    return FirstInfo::isEqual(LHS.first, RHS.first) && 
+    return FirstInfo::isEqual(LHS.first, RHS.first) &&
            SecondInfo::isEqual(LHS.second, RHS.second);
   }
 };