llvm-project/libcxx/test/support
Eric Fiselier 0f90567744 Fix LWG issue 2469 - Use piecewise construction in unordered_map::operator[].
unordered_map's allocator may only be used to construct objects of 'value_type',
or in this case 'pair<const Key, Value>'. In order to respect this requirement
in operator[], which requires default constructing the 'mapped_type', we have
to use pair's piecewise constructor with '(tuple<Kep>, tuple<>)'.

Unfortunately we still need to provide a fallback implementation for C++03
since we don't have <tuple>. Even worse this fallback is the last remaining
user of '__hash_map_node_destructor' and '__construct_node_with_key'.

llvm-svn: 260601
2016-02-11 21:45:53 +00:00
..
Counter.h Fix PR22366. When move-constructing an associative container and explicitly passing an allocator that compares different, we were not calling the destructor of the elements in the moved-from container. 2015-01-28 19:54:25 +00:00
DefaultOnly.h Add license headers to a bunch of libc++ files that were missing them. No functionality change. Fixes 18291. Thanks to Nico for the bug report and the patch. 2014-01-16 16:58:45 +00:00
MoveOnly.h Remove some test scaffolding that I added and then didn't need. No functional change 2016-01-05 19:44:58 +00:00
allocators.h Our test allocators support move/copy construction; they should support move/copy assignment as well 2015-10-06 20:30:56 +00:00
any_helpers.h Add missing license headers 2016-01-19 21:52:04 +00:00
asan_testing.h [asan] Make vector asan annotations exception-friendly 2014-09-02 23:43:38 +00:00
cmpxchg_loop.h Add missing license headers 2016-01-19 21:52:04 +00:00
constexpr_char_traits.hpp Add pragma system header to some experimental headers and add newlines to files. 2015-02-10 17:32:49 +00:00
container_test_types.h Fix LWG issue 2469 - Use piecewise construction in unordered_map::operator[]. 2016-02-11 21:45:53 +00:00
count_new.hpp Add missing license headers 2016-01-19 21:52:04 +00:00
counting_predicates.hpp Whitespace maintenance. Remove a bunch of tabs that snuck in. No functionality change 2014-10-18 11:03:33 +00:00
disable_missing_braces_warning.h Add missing license headers 2016-01-19 21:52:04 +00:00
hexfloat.h
is_transparent.h Forgot the support include file in r241091 2015-06-30 18:16:12 +00:00
min_allocator.h More of N4258 implementation. Mark all of our test_allocators as noexcept constructible. Make the constructors for basic_string noexcept all the time (under C++14). Update tests to reflect the new world order. More to come. 2015-06-03 19:56:43 +00:00
nasty_containers.hpp Implement LWG 2324: Insert iterator constructors should use addressof(). Add two new container classes to the test suite that overload operator &, and add test cases to the insert/front_insert/back_insert iterator tests that use these containers. 2014-03-03 19:20:40 +00:00
nasty_macros.hpp Add missing license headers 2016-01-19 21:52:04 +00:00
nothing_to_do.pass.cpp test commit 2014-07-24 18:41:56 +00:00
platform_support.h Add option to disable access to the global filesystem namespace. 2015-03-12 15:44:39 +00:00
private_constructor.hpp Add license headers to a bunch of libc++ files that were missing them. No functionality change. Fixes 18291. Thanks to Nico for the bug report and the patch. 2014-01-16 16:58:45 +00:00
test_allocator.h Fix bug in test_allocator<void> that used the wrong value to represent object state 2015-08-28 05:00:25 +00:00
test_iterators.h Got the test backwards in r258279. Fixed that and de-tabbed 2016-01-20 03:37:46 +00:00
test_macros.h Use __make_integer_seq builtin for std::make_integer_sequence. Patch by K-ballo. 2015-12-09 22:03:06 +00:00
tracked_value.h Add missing license headers 2016-01-19 21:52:04 +00:00
user_defined_integral.hpp Add missing license headers 2016-01-19 21:52:04 +00:00