gcc/libstdc++-v3/testsuite/20_util
Jonathan Wakely e7a0af84d6 libstdc++: Implement std::make_unique_for_overwrite
This is the std::unique_ptr part of P1020R1 (as amended by P1973R1) for
C++20. The std::shared_ptr part still needs to be done.

libstdc++-v3/ChangeLog:

	* include/bits/unique_ptr.h (make_unique_for_overwrite): Define
	for C++20.
	* testsuite/20_util/unique_ptr/creation/array_neg.cc: Remove
	unused header. Adjust standard reference.
	* testsuite/20_util/unique_ptr/creation/for_overwrite.cc: New test.
	* testsuite/20_util/unique_ptr/creation/for_overwrite__neg.cc: New test.
2020-10-19 22:11:39 +01:00
..
add_const Update copyright years. 2020-01-01 12:51:42 +01:00
add_cv Update copyright years. 2020-01-01 12:51:42 +01:00
add_lvalue_reference Update copyright years. 2020-01-01 12:51:42 +01:00
add_pointer Update copyright years. 2020-01-01 12:51:42 +01:00
add_rvalue_reference Update copyright years. 2020-01-01 12:51:42 +01:00
add_volatile Update copyright years. 2020-01-01 12:51:42 +01:00
addressof Update copyright years. 2020-01-01 12:51:42 +01:00
align libstdc++: Fix overflow handling in std::align 2020-09-22 17:49:48 +01:00
aligned_storage Update copyright years. 2020-01-01 12:51:42 +01:00
aligned_union Update copyright years. 2020-01-01 12:51:42 +01:00
alignment_of Update copyright years. 2020-01-01 12:51:42 +01:00
allocator libstdc++: Make allocators throw bad_array_new_length on overflow [LWG 3190] 2020-10-05 15:18:56 +01:00
allocator_traits Library-side tests for parenthesized aggregate init 2020-03-31 17:07:52 +03:00
any libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
as_const libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
assume_aligned libstdc++: Make std::assume_aligned a constexpr function [PR 97132] 2020-09-21 14:28:58 +01:00
auto_ptr Update copyright years. 2020-01-01 12:51:42 +01:00
bad_function_call Update copyright years. 2020-01-01 12:51:42 +01:00
bind libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
bool_constant libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
common_reference/requirements Update copyright years. 2020-01-01 12:51:42 +01:00
common_type/requirements Update copyright years. 2020-01-01 12:51:42 +01:00
conditional/requirements Update copyright years. 2020-01-01 12:51:42 +01:00
decay/requirements Update copyright years. 2020-01-01 12:51:42 +01:00
declval/requirements Update copyright years. 2020-01-01 12:51:42 +01:00
default_delete libstdc++: Fix failing tests 2020-06-08 21:34:46 +01:00
duration libstdc++: Constrain chrono::duration conversions [LWG 2094] 2020-09-01 18:18:26 +01:00
duration_cast libstdc++: Test C++11 implementation of std::chrono::__detail::ceil 2020-10-05 11:09:03 +01:00
enable_if/requirements Update copyright years. 2020-01-01 12:51:42 +01:00
enable_shared_from_this libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
exchange libstdc++: Do not define __cpp_lib_constexpr_algorithms in <utility> 2020-04-22 22:54:35 +01:00
extent Update copyright years. 2020-01-01 12:51:42 +01:00
forward Update copyright years. 2020-01-01 12:51:42 +01:00
from_chars libstdc++: Fix test for old string ABI 2020-07-30 16:04:59 +01:00
function Update copyright years. 2020-01-01 12:51:42 +01:00
function_objects libstdc++: Fix noexcept-specifier for std::bind_front [PR 97101] 2020-09-21 00:17:02 +01:00
has_unique_object_representations Update copyright years. 2020-01-01 12:51:42 +01:00
has_virtual_destructor Update copyright years. 2020-01-01 12:51:42 +01:00
hash Update copyright years. 2020-01-01 12:51:42 +01:00
headers libstdc++: Require c++98_only effective target for some tests 2020-07-02 21:27:12 +01:00
in_place libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
integer_comparisons libstdc++: Fix new tests that fail for ILP32 targets 2020-02-18 18:57:30 +00:00
integer_sequence Update copyright years. 2020-01-01 12:51:42 +01:00
integral_constant Update copyright years. 2020-01-01 12:51:42 +01:00
invoke_result libstdc++: assert that type traits are not misused with incomplete types [PR 71579] 2020-09-24 18:51:37 +01:00
is_abstract Update copyright years. 2020-01-01 12:51:42 +01:00
is_aggregate libstdc++: Adjust tests that give different results in C++20 2020-07-31 17:51:00 +01:00
is_arithmetic Update copyright years. 2020-01-01 12:51:42 +01:00
is_array Update copyright years. 2020-01-01 12:51:42 +01:00
is_assignable Update copyright years. 2020-01-01 12:51:42 +01:00
is_base_of Update copyright years. 2020-01-01 12:51:42 +01:00
is_bounded_array Update copyright years. 2020-01-01 12:51:42 +01:00
is_class Update copyright years. 2020-01-01 12:51:42 +01:00
is_complete_or_unbounded Update copyright years. 2020-01-01 12:51:42 +01:00
is_compound Update copyright years. 2020-01-01 12:51:42 +01:00
is_const Update copyright years. 2020-01-01 12:51:42 +01:00
is_constant_evaluated Update copyright years. 2020-01-01 12:51:42 +01:00
is_constructible c++: Improve access checking inside templates [PR41437] 2020-06-16 08:21:33 -04:00
is_convertible Update copyright years. 2020-01-01 12:51:42 +01:00
is_copy_assignable Update copyright years. 2020-01-01 12:51:42 +01:00
is_copy_constructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_default_constructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_destructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_empty Update copyright years. 2020-01-01 12:51:42 +01:00
is_enum Update copyright years. 2020-01-01 12:51:42 +01:00
is_final Update copyright years. 2020-01-01 12:51:42 +01:00
is_floating_point Update copyright years. 2020-01-01 12:51:42 +01:00
is_function x32 does not support MS ABI, skip testcases that require it. 2020-03-16 14:38:06 +01:00
is_fundamental Update copyright years. 2020-01-01 12:51:42 +01:00
is_implicitly_default_constructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_integral Update copyright years. 2020-01-01 12:51:42 +01:00
is_invocable libstdc++: assert that type traits are not misused with incomplete types [PR 71579] 2020-09-24 18:51:37 +01:00
is_literal_type PR libstdc++/95915 2020-06-29 00:36:38 +03:00
is_lvalue_reference Update copyright years. 2020-01-01 12:51:42 +01:00
is_member_function_pointer x32 does not support MS ABI, skip testcases that require it. 2020-03-16 14:38:06 +01:00
is_member_object_pointer Update copyright years. 2020-01-01 12:51:42 +01:00
is_member_pointer Update copyright years. 2020-01-01 12:51:42 +01:00
is_move_assignable Update copyright years. 2020-01-01 12:51:42 +01:00
is_move_constructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_nothrow_assignable Update copyright years. 2020-01-01 12:51:42 +01:00
is_nothrow_constructible libstdc++: Support arrays in std::is_nothrow_constructible (PR 94149) 2020-04-21 22:18:51 +01:00
is_nothrow_convertible Update copyright years. 2020-01-01 12:51:42 +01:00
is_nothrow_copy_assignable Update copyright years. 2020-01-01 12:51:42 +01:00
is_nothrow_copy_constructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_nothrow_default_constructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_nothrow_destructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_nothrow_invocable libstdc++: assert that type traits are not misused with incomplete types [PR 71579] 2020-09-24 18:51:37 +01:00
is_nothrow_move_assignable Update copyright years. 2020-01-01 12:51:42 +01:00
is_nothrow_move_constructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_nothrow_swappable libstdc++: assert that type traits are not misused with incomplete types [PR 71579] 2020-08-19 12:12:40 +01:00
is_nothrow_swappable_with libstdc++: assert that type traits are not misused with incomplete types [PR 71579] 2020-08-19 12:12:40 +01:00
is_null_pointer Update copyright years. 2020-01-01 12:51:42 +01:00
is_object x32 does not support MS ABI, skip testcases that require it. 2020-03-16 14:38:06 +01:00
is_pod libstdc++: Fix testsuite failures and warnings due to is_pod deprecation 2020-01-09 21:31:50 +00:00
is_pointer Update copyright years. 2020-01-01 12:51:42 +01:00
is_polymorphic Update copyright years. 2020-01-01 12:51:42 +01:00
is_reference Update copyright years. 2020-01-01 12:51:42 +01:00
is_rvalue_reference Update copyright years. 2020-01-01 12:51:42 +01:00
is_same Update copyright years. 2020-01-01 12:51:42 +01:00
is_scalar Update copyright years. 2020-01-01 12:51:42 +01:00
is_signed Update copyright years. 2020-01-01 12:51:42 +01:00
is_standard_layout Update copyright years. 2020-01-01 12:51:42 +01:00
is_swappable libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
is_swappable_with libstdc++: assert that type traits are not misused with incomplete types [PR 71579] 2020-08-19 12:12:40 +01:00
is_trivial Update copyright years. 2020-01-01 12:51:42 +01:00
is_trivially_assignable Update copyright years. 2020-01-01 12:51:42 +01:00
is_trivially_constructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_trivially_copy_assignable Update copyright years. 2020-01-01 12:51:42 +01:00
is_trivially_copy_constructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_trivially_copyable Update copyright years. 2020-01-01 12:51:42 +01:00
is_trivially_default_constructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_trivially_destructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_trivially_move_assignable Update copyright years. 2020-01-01 12:51:42 +01:00
is_trivially_move_constructible Update copyright years. 2020-01-01 12:51:42 +01:00
is_unbounded_array Update copyright years. 2020-01-01 12:51:42 +01:00
is_union Update copyright years. 2020-01-01 12:51:42 +01:00
is_unsigned Update copyright years. 2020-01-01 12:51:42 +01:00
is_void Update copyright years. 2020-01-01 12:51:42 +01:00
is_volatile Update copyright years. 2020-01-01 12:51:42 +01:00
logical_traits libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
make_signed/requirements Update copyright years. 2020-01-01 12:51:42 +01:00
make_unsigned/requirements Update copyright years. 2020-01-01 12:51:42 +01:00
memory_resource Update copyright years. 2020-01-01 12:51:42 +01:00
monotonic_buffer_resource libstdc++: Reduce monotonic_buffer_resource overallocation [PR 96942] 2020-09-10 15:41:53 +01:00
move Update copyright years. 2020-01-01 12:51:42 +01:00
move_if_noexcept Update copyright years. 2020-01-01 12:51:42 +01:00
nonesuch Update copyright years. 2020-01-01 12:51:42 +01:00
optional libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
owner_less Update copyright years. 2020-01-01 12:51:42 +01:00
pair libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
pointer_safety Update copyright years. 2020-01-01 12:51:42 +01:00
pointer_traits Update copyright years. 2020-01-01 12:51:42 +01:00
polymorphic_allocator libstdc++: make polymorphic_allocator throw consistent type (LWG 3237) 2020-02-19 15:34:08 +00:00
rank Update copyright years. 2020-01-01 12:51:42 +01:00
ratio libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
raw_storage_iterator Update copyright years. 2020-01-01 12:51:42 +01:00
reference_wrapper libstdc++: Use c++NN_only effective target to tests 2020-07-31 19:58:02 +01:00
remove_all_extents Update copyright years. 2020-01-01 12:51:42 +01:00
remove_const Update copyright years. 2020-01-01 12:51:42 +01:00
remove_cv Update copyright years. 2020-01-01 12:51:42 +01:00
remove_cvref Update copyright years. 2020-01-01 12:51:42 +01:00
remove_extent Update copyright years. 2020-01-01 12:51:42 +01:00
remove_pointer Update copyright years. 2020-01-01 12:51:42 +01:00
remove_reference Update copyright years. 2020-01-01 12:51:42 +01:00
remove_volatile Update copyright years. 2020-01-01 12:51:42 +01:00
result_of Update copyright years. 2020-01-01 12:51:42 +01:00
scoped_allocator Update copyright years. 2020-01-01 12:51:42 +01:00
shared_ptr Fix libstdc++ testsuite to handle VxWorks gthreads implementation 2020-08-23 23:18:48 -03:00
specialized_algorithms libstdc++: Make ranges::construct_at constexpr-friendly [PR95788] 2020-10-08 18:10:05 -04:00
steady_clock Update copyright years. 2020-01-01 12:51:42 +01:00
synchronized_pool_resource libstdc++: Make pmr::synchronized_pool_resource work without libpthread (PR 94936) 2020-05-04 13:37:31 +01:00
system_clock Update copyright years. 2020-01-01 12:51:42 +01:00
time_point libstdc++: Add more C++20 additions to <chrono> 2020-08-25 10:23:59 -04:00
time_point_cast libstdc++: Remove duplicate dg-do directive 2020-07-31 17:51:00 +01:00
to_address libstdc++: Add missing feature test macros 2020-04-22 22:54:34 +01:00
to_chars libstdc++: Fix std::to_chars buffer overflow (PR 95851) 2020-06-24 12:28:13 +01:00
tuple libstdc++: Use correct argument type for __use_alloc, again [PR 96803] 2020-09-22 08:42:18 +01:00
type_identity/requirements Update copyright years. 2020-01-01 12:51:42 +01:00
typeindex libstdc++: Add spaceship operator to std::type_index 2020-04-15 19:47:47 +01:00
underlying_type/requirements Update copyright years. 2020-01-01 12:51:42 +01:00
unique_ptr libstdc++: Implement std::make_unique_for_overwrite 2020-10-19 22:11:39 +01:00
unsynchronized_pool_resource libstdc++: handle small max_blocks_per_chunk in pool resources [PR 94160] 2020-09-10 15:42:09 +01:00
unwrap_reference libstdc++: Add __cpp_lib_unwrap_ref feature test macro 2020-02-19 15:28:54 +00:00
uses_allocator libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
variant libstdc++: Optimize container node-handle type for size 2020-10-19 18:06:51 +01:00
void_t libstdc++: Ensure c++NN effective target present in all C++17 tests 2020-07-31 19:58:02 +01:00
weak_ptr Update copyright years. 2020-01-01 12:51:42 +01:00
rel_ops.cc Update copyright years. 2020-01-01 12:51:42 +01:00
temporary_buffer.cc Update copyright years. 2020-01-01 12:51:42 +01:00
variable_templates_for_traits.cc libstdc++: Add -Wno-deprecated for tests that warn in C++20 2020-07-31 17:51:00 +01:00