* doc/xml/manual/status_cxx2017.xml: Update status. * doc/html/manual/status.html: Regenerate. * include/bits/shared_ptr.h (shared_ptr(unique_ptr<_Yp, _Del>)): Add extension constructor to maintain C++14 behaviour. * include/bits/shared_ptr_base.h (__sp_array_delete): Add new struct. (__shared_count(_Ptr, false_type), __shared_count(_Ptr, true_type)): New constructors. (__sp_compatible_with, __sp_is_constructible): Add specializations for array support. (__sp_is_constructible_arr, __sp_is_constructible_arrN): New helpers. (__shared_ptr_access): New base class for observer member functions. (__shared_ptr::element_type): Use remove_extent. (__shared_ptr::_UniqCompatible): Add __sp_compatible_with check. (__shared_ptr(_Yp*)): Use tag dispatching to call new __shared_count constructor. (__shared_ptr(unique_ptr<_Yp, _Del>)): Add extension constructor. (__shared_ptr::operator*, __shared_ptr::operator->): Remove and inherit from __shared_ptr_access base class. (__shared_ptr::__has_esft_base): Return false for array types. (__weak_ptr::element_type): Use remove_extent. * include/experimental/bits/shared_ptr.h (__libfund_v1): Remove. (__shared_ptr<__libfund_v1<_Tp>>): Remove specializations. (__wak_ptr<__libfund_v1<_Tp>>): Likewise. (experimental::__sp_compatible_v): Redefine using __sp_compatible_with. (experimental::__sp_is_constructible_v): Redefine using __sp_is_constructible. (get_deleter, operator<<): Change argument from __shared_ptr to shared_ptr. * testsuite/20_util/shared_ptr/cons/array.cc: New test. * testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: Adjust for new behaviour. * testsuite/20_util/shared_ptr/observers/array.cc: Test observers for arrays. * testsuite/20_util/shared_ptr/observers/array_neg.cc: New test. From-SVN: r242369
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| 39405.cc | Loading commit data... | |
| 43820_neg.cc | Loading commit data... | |
| 46910.cc | Loading commit data... | |
| 51365.cc | Loading commit data... | |
| 52924.cc | Loading commit data... | |
| 55123.cc | Loading commit data... | |
| 58659.cc | Loading commit data... | |
| 58839.cc | Loading commit data... | |
| 61036.cc | Loading commit data... | |
| alias.cc | Loading commit data... | |
| alloc.cc | Loading commit data... | |
| alloc_min.cc | Loading commit data... | |
| array.cc | Loading commit data... | |
| auto_ptr.cc | Loading commit data... | |
| auto_ptr_neg.cc | Loading commit data... | |
| constexpr.cc | Loading commit data... | |
| copy.cc | Loading commit data... | |
| default.cc | Loading commit data... | |
| move.cc | Loading commit data... | |
| noexcept_move_construct.cc | Loading commit data... | |
| nullptr.cc | Loading commit data... | |
| pointer.cc | Loading commit data... | |
| unique_ptr.cc | Loading commit data... | |
| unique_ptr_array.cc | Loading commit data... | |
| unique_ptr_deleter.cc | Loading commit data... | |
| unique_ptr_deleter_ref_1.cc | Loading commit data... | |
| unique_ptr_deleter_ref_2.cc | Loading commit data... | |
| unique_ptr_neg.cc | Loading commit data... | |
| void_neg.cc | Loading commit data... | |
| weak_ptr.cc | Loading commit data... | |
| weak_ptr_expired.cc | Loading commit data... |