diff options
Diffstat (limited to 'debian/patches/std-hash.diff')
-rw-r--r-- | debian/patches/std-hash.diff | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/debian/patches/std-hash.diff b/debian/patches/std-hash.diff deleted file mode 100644 index 52096742..00000000 --- a/debian/patches/std-hash.diff +++ /dev/null @@ -1,46 +0,0 @@ -From: Benjamin Barenblat <bbaren@google.com> -Subject: Work around broken std::hash on s390x -Forwarded: no -Bug-Debian: https://bugs.debian.org/977638 - -On s390x, std::hash hashes large classes of data to the same value, which -violates assumptions made by the Abseil tests. #ifdef out the test code that -depends on those assumptions. - ---- a/absl/hash/hash_test.cc -+++ b/absl/hash/hash_test.cc -@@ -358,6 +358,8 @@ - TEST(HashValueTest, StdBitset) { - EXPECT_TRUE((is_hashable<std::bitset<257>>::value)); - -+ // The following assertions fail on s390x (https://bugs.debian.org/977638). -+#ifndef __s390x__ - EXPECT_TRUE(absl::VerifyTypeImplementsAbslHashCorrectly( - {std::bitset<2>("00"), std::bitset<2>("01"), std::bitset<2>("10"), - std::bitset<2>("11")})); -@@ -379,6 +381,7 @@ - std::bitset<kNumBits>(bit_strings[3].c_str()), - std::bitset<kNumBits>(bit_strings[4].c_str()), - std::bitset<kNumBits>(bit_strings[5].c_str())})); -+#endif - } // namespace - - template <typename T> -@@ -400,10 +403,15 @@ - } - - REGISTER_TYPED_TEST_CASE_P(HashValueSequenceTest, BasicUsage); -+// std::vector<bool> tests fail on s390x, so exclude them. See -+// https://bugs.debian.org/977638. - using IntSequenceTypes = - testing::Types<std::deque<int>, std::forward_list<int>, std::list<int>, -- std::vector<int>, std::vector<bool>, std::set<int>, -- std::multiset<int>>; -+ std::vector<int>, -+#ifndef __s390x__ -+ std::vector<bool>, -+#endif -+ std::set<int>, std::multiset<int>>; - INSTANTIATE_TYPED_TEST_CASE_P(My, HashValueSequenceTest, IntSequenceTypes); - - // Private type that only supports AbslHashValue to make sure our chosen hash |