gcc/libstdc++-v3/testsuite
Jonathan Wakely a2e0054e1d Prepare shared_ptr for array support
* include/backward/auto_ptr.h (__shared_ptr(auto_ptr&&))
	(shared_ptr(auto_ptr&&)): Adjust template parameter lists.
	* include/bits/shared_ptr.h (__sp_compatible_with)
	(__sp_is_constructible): New helper traits for shared_ptr.
	(shared_ptr::_Convertible): Replace with _Constructible.
	(shared_ptr::_Constructible, shared_ptr::_Assignable): Forward checks
	to base class.
	(shared_ptr::shared_ptr, shared_ptr::operator=): Constrain template
	with _Constructible and _Assignable.
	(shared_ptr::shared_ptr(shared_ptr<_Tp1>, _Tp*)): Use element_type
	instead of _Tp.
	(operator<): Likewise.
	(operator>): Define in terms of operator<.
	(static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
	element_type instead of _Tp.
	(reinterpret_pointer_cast): Define for C++17.
	(weak_ptr::_Convertible): Replace with _Constructible.
	(weak_ptr::_Constructible, weak_ptr::_Assignable): Forward checks
	to base class.
	(weak_ptr::weak_ptr, weak_ptr::operator=): Constrain templates
	with _Constructible and _Assignable.
	* include/bits/shared_ptr_base.h (__shared_ptr::_Convertible): Replace
	with _Compatible.
	(__shared_ptr::_SafeConv): New constraint for incoming raw pointers.
	(__shared_ptr::_Compatible): New constraint for converting from
	other types of shared_ptr and weak_ptr.
	(__shared_ptr::_Assignable): Define in terms of _Compatible.
	(__shared_ptr::_UniqCompatible, __shared_ptr::_UniqAssignable): New
	constraints for converting from unique_ptr.
	(__shared_ptr::__shared_ptr, __shared_ptr::operator=): Constrain
	template with _SaveConf, _Compatible and _Assignable. Remove
	__glibcxx_function_requires concept checks. Add static assertion for
	deleter expression being well-formed.
	(__shared_ptr::__shared_ptr(__shared_ptr<_Tp1>, _Tp*))
	(__shared_ptr::operator*, __shared_ptr::operator->)
	(__shared_ptr::get, __shared_ptr::_M_ptr): Use element_type instead
	of _Tp.
	(operator<): Likewise.
	(operator>): Define in terms of operator<.
	(static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
	element_type instead of _Tp.
	(reinterpret_pointer_cast): Define for C++17.
	(weak_ptr::_Convertible): Replace with _Compatible.
	(weak_ptr::_Compatible, weak_ptr::_Assignable): New constraints for
	conversions from other types of weak_ptr and shared_ptr.
	(__weak_ptr::__weak_ptr, __weak_ptr::operator=): Constrain templates
	with _Constructible and _Assignable.
	(__weak_ptr::_M_ptr): Use element_type instead of _Tp.
	* testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Adjust
	dg-error pattern.
	* testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Test conversions.
	* testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/casts/reinterpret.cc: New test.

From-SVN: r241373
2016-10-20 13:07:45 +01:00
..
17_intro
18_support
19_diagnostics
20_util Prepare shared_ptr for array support 2016-10-20 13:07:45 +01:00
21_strings
22_locale isblank.cc: Remove 'test' variables. 2016-10-17 00:02:57 +00:00
23_containers 57619.C: Rename to 57619.cc. 2016-10-17 13:32:32 +00:00
24_iterators container_access.cc: Remove 'test' variables. 2016-10-13 19:37:45 +00:00
25_algorithms PR77994 Convert std::sample size argument to suitable type 2016-10-17 15:39:23 +01:00
26_numerics 1.cc: Remove 'test' variables. 2016-10-14 13:50:24 +00:00
27_io 12790-1.cc: Remove 'test' variables. 2016-10-17 22:24:50 +00:00
28_regex container_access.cc: Remove 'test' variables. 2016-10-13 19:37:45 +00:00
29_atomics container_access.cc: Remove 'test' variables. 2016-10-13 19:37:45 +00:00
30_threads isblank.cc: Remove 'test' variables. 2016-10-17 00:02:57 +00:00
abi
backward container_access.cc: Remove 'test' variables. 2016-10-13 19:37:45 +00:00
config
data
decimal container_access.cc: Remove 'test' variables. 2016-10-13 19:37:45 +00:00
experimental Make std::enable_shared_from_this cope with ambiguity 2016-10-19 21:13:14 +01:00
ext Make sure the return value of malloc_allocator::allocate is zero-initialized so... 2016-10-16 16:31:43 +03:00
lib
libstdc++-abi
libstdc++-dg
libstdc++-prettyprinters
libstdc++-xmethods
performance
special_functions container_access.cc: Remove 'test' variables. 2016-10-13 19:37:45 +00:00
tr1 isblank.cc: Remove 'test' variables. 2016-10-17 00:02:57 +00:00
tr2 container_access.cc: Remove 'test' variables. 2016-10-13 19:37:45 +00:00
util container_access.cc: Remove 'test' variables. 2016-10-13 19:37:45 +00:00
Makefile.am
Makefile.in