[libcxx-commits] [libcxx] r359642 - Fix a bunch of unordered container tests that were failing when _LIBCPP_DEBUG was set.

Marshall Clow via libcxx-commits libcxx-commits at lists.llvm.org
Tue Apr 30 18:52:52 PDT 2019


Author: marshall
Date: Tue Apr 30 18:52:51 2019
New Revision: 359642

URL: http://llvm.org/viewvc/llvm-project?rev=359642&view=rev
Log:
Fix a bunch of unordered container tests that were failing when _LIBCPP_DEBUG was set.

Modified:
    libcxx/trunk/test/std/containers/unord/unord.map/bucket.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.map/bucket_size.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.multimap/bucket.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.multimap/bucket_size.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.multiset/bucket.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.multiset/bucket_size.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.multiset/db_iterators_7.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.multiset/db_iterators_8.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.set/bucket.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.set/bucket_size.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.set/db_iterators_7.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.set/db_iterators_8.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.set/db_local_iterators_7.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.set/db_local_iterators_8.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.set/emplace_hint.pass.cpp
    libcxx/trunk/test/std/containers/unord/unord.set/insert_hint_rvalue.pass.cpp

Modified: libcxx/trunk/test/std/containers/unord/unord.map/bucket.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.map/bucket.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.map/bucket.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.map/bucket.pass.cpp Tue Apr 30 18:52:51 2019
@@ -70,7 +70,7 @@ int main(int, char**)
     {
         typedef std::unordered_map<int, std::string> C;
         C c;
-        C::size_type i = c.bucket(3);
+        (void) c.bucket(3);
         assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.map/bucket_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.map/bucket_size.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.map/bucket_size.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.map/bucket_size.pass.cpp Tue Apr 30 18:52:51 2019
@@ -74,7 +74,7 @@ int main(int, char**)
     {
         typedef std::unordered_map<int, std::string> C;
         C c;
-        C::size_type i = c.bucket_size(3);
+        (void) c.bucket_size(3);
         assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.multimap/bucket.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.multimap/bucket.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.multimap/bucket.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.multimap/bucket.pass.cpp Tue Apr 30 18:52:51 2019
@@ -70,7 +70,7 @@ int main(int, char**)
     {
         typedef std::unordered_multimap<int, std::string> C;
         C c;
-        C::size_type i = c.bucket(3);
+        (void) c.bucket(3);
         assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.multimap/bucket_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.multimap/bucket_size.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.multimap/bucket_size.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.multimap/bucket_size.pass.cpp Tue Apr 30 18:52:51 2019
@@ -78,7 +78,7 @@ int main(int, char**)
     {
         typedef std::unordered_multimap<int, std::string> C;
         C c;
-        C::size_type i = c.bucket_size(3);
+        (void) c.bucket_size(3);
         assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.multiset/bucket.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.multiset/bucket.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.multiset/bucket.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.multiset/bucket.pass.cpp Tue Apr 30 18:52:51 2019
@@ -69,7 +69,7 @@ int main(int, char**)
     {
         typedef std::unordered_multiset<int> C;
         C c;
-        C::size_type i = c.bucket(3);
+        (void) c.bucket(3);
         assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.multiset/bucket_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.multiset/bucket_size.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.multiset/bucket_size.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.multiset/bucket_size.pass.cpp Tue Apr 30 18:52:51 2019
@@ -77,7 +77,7 @@ int main(int, char**)
     {
         typedef std::unordered_multiset<int> C;
         C c;
-        C::size_type i = c.bucket_size(3);
+        (void) c.bucket_size(3);
         assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.multiset/db_iterators_7.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.multiset/db_iterators_7.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.multiset/db_iterators_7.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.multiset/db_iterators_7.pass.cpp Tue Apr 30 18:52:51 2019
@@ -37,7 +37,7 @@ int main(int, char**)
 #if TEST_STD_VER >= 11
     {
     typedef int T;
-    typedef std::unordered_multiset<T, min_allocator<T>> C;
+    typedef std::unordered_multiset<T, std::hash<T>, std::equal_to<T>, min_allocator<T>> C;
     C c(1);
     C::iterator i = c.begin();
     ++i;

Modified: libcxx/trunk/test/std/containers/unord/unord.multiset/db_iterators_8.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.multiset/db_iterators_8.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.multiset/db_iterators_8.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.multiset/db_iterators_8.pass.cpp Tue Apr 30 18:52:51 2019
@@ -29,16 +29,16 @@ int main(int, char**)
     typedef std::unordered_multiset<T> C;
     C c(1);
     C::iterator i = c.end();
-    T j = *i;
+    (void) *i;
     assert(false);
     }
 #if TEST_STD_VER >= 11
     {
     typedef int T;
-    typedef std::unordered_multiset<T, min_allocator<T>> C;
+    typedef std::unordered_multiset<T, std::hash<T>, std::equal_to<T>, min_allocator<T>> C;
     C c(1);
     C::iterator i = c.end();
-    T j = *i;
+    (void) *i;
     assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp Tue Apr 30 18:52:51 2019
@@ -36,7 +36,7 @@ int main(int, char**)
 #if TEST_STD_VER >= 11
     {
     typedef int T;
-    typedef std::unordered_multiset<T, min_allocator<T>> C;
+    typedef std::unordered_multiset<T, std::hash<T>, std::equal_to<T>, min_allocator<T>> C;
     C c(1);
     C::local_iterator i = c.begin(0);
     ++i;

Modified: libcxx/trunk/test/std/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp Tue Apr 30 18:52:51 2019
@@ -29,16 +29,16 @@ int main(int, char**)
     typedef std::unordered_multiset<T> C;
     C c(1);
     C::local_iterator i = c.end(0);
-    T j = *i;
+    (void) *i;
     assert(false);
     }
 #if TEST_STD_VER >= 11
     {
     typedef int T;
-    typedef std::unordered_multiset<T, min_allocator<T>> C;
+    typedef std::unordered_multiset<T, std::hash<T>, std::equal_to<T>, min_allocator<T>> C;
     C c(1);
     C::local_iterator i = c.end(0);
-    T j = *i;
+    (void) *i;
     assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.set/bucket.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.set/bucket.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.set/bucket.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.set/bucket.pass.cpp Tue Apr 30 18:52:51 2019
@@ -68,7 +68,7 @@ int main(int, char**)
     {
         typedef std::unordered_set<int> C;
         C c;
-        C::size_type i = c.bucket(3);
+        (void) c.bucket(3);
         assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.set/bucket_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.set/bucket_size.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.set/bucket_size.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.set/bucket_size.pass.cpp Tue Apr 30 18:52:51 2019
@@ -72,7 +72,7 @@ int main(int, char**)
     {
         typedef std::unordered_set<int> C;
         C c;
-        C::size_type i = c.bucket_size(3);
+        (void) c.bucket_size(3);
         assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.set/db_iterators_7.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.set/db_iterators_7.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.set/db_iterators_7.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.set/db_iterators_7.pass.cpp Tue Apr 30 18:52:51 2019
@@ -37,7 +37,7 @@ int main(int, char**)
 #if TEST_STD_VER >= 11
     {
     typedef int T;
-    typedef std::unordered_set<T, min_allocator<T>> C;
+    typedef std::unordered_set<T, std::hash<T>, std::equal_to<T>, min_allocator<T>> C;
     C c(1);
     C::iterator i = c.begin();
     ++i;

Modified: libcxx/trunk/test/std/containers/unord/unord.set/db_iterators_8.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.set/db_iterators_8.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.set/db_iterators_8.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.set/db_iterators_8.pass.cpp Tue Apr 30 18:52:51 2019
@@ -29,16 +29,16 @@ int main(int, char**)
     typedef std::unordered_set<T> C;
     C c(1);
     C::iterator i = c.end();
-    T j = *i;
+    (void) *i;
     assert(false);
     }
 #if TEST_STD_VER >= 11
     {
     typedef int T;
-    typedef std::unordered_set<T, min_allocator<T>> C;
+    typedef std::unordered_set<T, std::hash<T>, std::equal_to<T>, min_allocator<T>> C;
     C c(1);
     C::iterator i = c.end();
-    T j = *i;
+    (void) *i;
     assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.set/db_local_iterators_7.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.set/db_local_iterators_7.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.set/db_local_iterators_7.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.set/db_local_iterators_7.pass.cpp Tue Apr 30 18:52:51 2019
@@ -36,7 +36,7 @@ int main(int, char**)
 #if TEST_STD_VER >= 11
     {
     typedef int T;
-    typedef std::unordered_set<T, min_allocator<T>> C;
+    typedef std::unordered_set<T, std::hash<T>, std::equal_to<T>, min_allocator<T>> C;
     C c(1);
     C::local_iterator i = c.begin(0);
     ++i;

Modified: libcxx/trunk/test/std/containers/unord/unord.set/db_local_iterators_8.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.set/db_local_iterators_8.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.set/db_local_iterators_8.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.set/db_local_iterators_8.pass.cpp Tue Apr 30 18:52:51 2019
@@ -29,16 +29,17 @@ int main(int, char**)
     typedef std::unordered_set<T> C;
     C c(1);
     C::local_iterator i = c.end(0);
-    T j = *i;
+    (void) *i;
+
     assert(false);
     }
 #if TEST_STD_VER >= 11
     {
     typedef int T;
-    typedef std::unordered_set<T, min_allocator<T>> C;
+    typedef std::unordered_set<T, std::hash<T>, std::equal_to<T>, min_allocator<T>> C;
     C c(1);
     C::local_iterator i = c.end(0);
-    T j = *i;
+    (void) *i;
     assert(false);
     }
 #endif

Modified: libcxx/trunk/test/std/containers/unord/unord.set/emplace_hint.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.set/emplace_hint.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.set/emplace_hint.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.set/emplace_hint.pass.cpp Tue Apr 30 18:52:51 2019
@@ -30,12 +30,11 @@ int main(int, char**)
         typedef std::unordered_set<Emplaceable> C;
         typedef C::iterator R;
         C c;
-        C::const_iterator e = c.end();
-        R r = c.emplace_hint(e);
+        R r = c.emplace_hint(c.end());
         assert(c.size() == 1);
         assert(*r == Emplaceable());
 
-        r = c.emplace_hint(e, Emplaceable(5, 6));
+        r = c.emplace_hint(c.end(), Emplaceable(5, 6));
         assert(c.size() == 2);
         assert(*r == Emplaceable(5, 6));
 
@@ -48,12 +47,11 @@ int main(int, char**)
                       std::equal_to<Emplaceable>, min_allocator<Emplaceable>> C;
         typedef C::iterator R;
         C c;
-        C::const_iterator e = c.end();
-        R r = c.emplace_hint(e);
+        R r = c.emplace_hint(c.end());
         assert(c.size() == 1);
         assert(*r == Emplaceable());
 
-        r = c.emplace_hint(e, Emplaceable(5, 6));
+        r = c.emplace_hint(c.end(), Emplaceable(5, 6));
         assert(c.size() == 2);
         assert(*r == Emplaceable(5, 6));
 

Modified: libcxx/trunk/test/std/containers/unord/unord.set/insert_hint_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/containers/unord/unord.set/insert_hint_rvalue.pass.cpp?rev=359642&r1=359641&r2=359642&view=diff
==============================================================================
--- libcxx/trunk/test/std/containers/unord/unord.set/insert_hint_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/std/containers/unord/unord.set/insert_hint_rvalue.pass.cpp Tue Apr 30 18:52:51 2019
@@ -28,8 +28,7 @@ int main(int, char**)
         typedef C::iterator R;
         typedef double P;
         C c;
-        C::const_iterator e = c.end();
-        R r = c.insert(e, P(3.5));
+        R r = c.insert(c.end(), P(3.5));
         assert(c.size() == 1);
         assert(*r == 3.5);
 
@@ -37,11 +36,11 @@ int main(int, char**)
         assert(c.size() == 1);
         assert(*r == 3.5);
 
-        r = c.insert(e, P(4.5));
+        r = c.insert(c.end(), P(4.5));
         assert(c.size() == 2);
         assert(*r == 4.5);
 
-        r = c.insert(e, P(5.5));
+        r = c.insert(c.end(), P(5.5));
         assert(c.size() == 3);
         assert(*r == 5.5);
     }
@@ -51,8 +50,7 @@ int main(int, char**)
         typedef C::iterator R;
         typedef MoveOnly P;
         C c;
-        C::const_iterator e = c.end();
-        R r = c.insert(e, P(3));
+        R r = c.insert(c.end(), P(3));
         assert(c.size() == 1);
         assert(*r == 3);
 
@@ -60,11 +58,11 @@ int main(int, char**)
         assert(c.size() == 1);
         assert(*r == 3);
 
-        r = c.insert(e, P(4));
+        r = c.insert(c.end(), P(4));
         assert(c.size() == 2);
         assert(*r == 4);
 
-        r = c.insert(e, P(5));
+        r = c.insert(c.end(), P(5));
         assert(c.size() == 3);
         assert(*r == 5);
     }
@@ -74,8 +72,7 @@ int main(int, char**)
         typedef C::iterator R;
         typedef double P;
         C c;
-        C::const_iterator e = c.end();
-        R r = c.insert(e, P(3.5));
+        R r = c.insert(c.end(), P(3.5));
         assert(c.size() == 1);
         assert(*r == 3.5);
 
@@ -83,11 +80,11 @@ int main(int, char**)
         assert(c.size() == 1);
         assert(*r == 3.5);
 
-        r = c.insert(e, P(4.5));
+        r = c.insert(c.end(), P(4.5));
         assert(c.size() == 2);
         assert(*r == 4.5);
 
-        r = c.insert(e, P(5.5));
+        r = c.insert(c.end(), P(5.5));
         assert(c.size() == 3);
         assert(*r == 5.5);
     }
@@ -97,8 +94,7 @@ int main(int, char**)
         typedef C::iterator R;
         typedef MoveOnly P;
         C c;
-        C::const_iterator e = c.end();
-        R r = c.insert(e, P(3));
+        R r = c.insert(c.end(), P(3));
         assert(c.size() == 1);
         assert(*r == 3);
 
@@ -106,11 +102,11 @@ int main(int, char**)
         assert(c.size() == 1);
         assert(*r == 3);
 
-        r = c.insert(e, P(4));
+        r = c.insert(c.end(), P(4));
         assert(c.size() == 2);
         assert(*r == 4);
 
-        r = c.insert(e, P(5));
+        r = c.insert(c.end(), P(5));
         assert(c.size() == 3);
         assert(*r == 5);
     }




More information about the libcxx-commits mailing list