llvm-project/libcxx/test/std/containers/unord/unord.set
Eric Fiselier 1286bc577f Fix undefined behavior in container swap tests.
These swap tests were swapping non-POCS non-equal allocators which
is undefined behavior. This patch changes the tests to use allocators
which compare equal. In order to test that the allocators were not
swapped I added an "id" field to test_allocator which does not
participate in equality but does propagate across copies/swaps.

This patch is based off of D26623 which was submitted by STL.

llvm-svn: 289358
2016-12-11 03:41:12 +00:00
..
unord.set.cnstr [libcxx] [test] D27021: Fix MSVC warning C4389 "signed/unsigned mismatch", part 8/12. 2016-12-06 01:12:34 +00:00
unord.set.swap Fix undefined behavior in container swap tests. 2016-12-11 03:41:12 +00:00
allocator_mismatch.fail.cpp Add static_assert to set/multiset/map/multimap/forward_list/deque that the allocator's value_type match the container's value_type. vector/unordered/list/string already do this. Add tests for all the containers to verify this. 2015-11-26 01:24:04 +00:00
bucket.pass.cpp Mark bucket() assertions as non-portable. Patch from STL@microsoft.com 2016-07-24 23:34:18 +00:00
bucket_count.pass.cpp Mark bucket_count() assertions as non-portable. Patch from STL@microsoft.com 2016-07-25 00:26:41 +00:00
bucket_size.pass.cpp Mark bucket_size() assertions as non-portible. Patch from STL@microsoft.com 2016-07-24 23:13:36 +00:00
clear.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
count.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
db_iterators_7.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
db_iterators_8.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
db_local_iterators_7.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
db_local_iterators_8.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
emplace.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
emplace_hint.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
eq.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
equal_range_const.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
equal_range_non_const.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
erase_const_iter.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
erase_iter_db1.pass.cpp
erase_iter_db2.pass.cpp
erase_iter_iter_db1.pass.cpp
erase_iter_iter_db2.pass.cpp
erase_iter_iter_db3.pass.cpp
erase_iter_iter_db4.pass.cpp
erase_key.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
erase_range.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
find_const.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
find_non_const.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
incomplete.pass.cpp Recommit r260012 - Cleanup node-type handling in the unordered containers. 2016-02-10 20:46:23 +00:00
insert_and_emplace_allocator_requirements.pass.cpp Extract key to avoid preemptive mallocs in insert/emplace in associative containers 2016-04-15 23:27:27 +00:00
insert_const_lvalue.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
insert_hint_const_lvalue.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
insert_hint_rvalue.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
insert_init.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
insert_range.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
insert_rvalue.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
iterators.fail.cpp
iterators.pass.cpp [libcxx] [test] D27021: Fix MSVC warning C4389 "signed/unsigned mismatch", part 8/12. 2016-12-06 01:12:34 +00:00
load_factor.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
local_iterators.fail.cpp
local_iterators.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
max_bucket_count.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
max_load_factor.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00
max_size.pass.cpp [libcxx] Fix max_size() across all containers 2016-11-23 01:18:56 +00:00
rehash.pass.cpp Mark bucket_count() assertions as non-portable. Patch from STL@microsoft.com 2016-07-25 00:26:41 +00:00
reserve.pass.cpp Mark bucket_count() assertions as non-portable. Patch from STL@microsoft.com 2016-07-25 00:26:41 +00:00
swap_member.pass.cpp Fix undefined behavior in container swap tests. 2016-12-11 03:41:12 +00:00
types.pass.cpp Replace __cplusplus comparisons and dialect __has_feature checks with TEST_STD_VER. 2016-06-14 21:31:42 +00:00