Title
[fund.ts.v2] weak_ptr's converting move constructor should be modified as well for array support
Status
open
Section
[memory.smartptr.weak.const]
Submitter
Tim Song

Created on 2015-07-25.00:00:00 last changed 90 months ago

Messages

Date: 2016-11-20.18:55:07

Proposed resolution:

This wording is relative to N4529.

  1. At the end of [memory.smartptr.weak.const], add:
    [Drafting note: The current paragraph [memory.smartptr.weak.const] p2 is incorrectly declared as Requires element, but it does not describe a requirement, instead it describes a "template constraint" which are elsewhere always specified within a Remarks element because it describes constraints that an implementation (and not the user) has to meet. See LWG 2292 for a suggestion to introduce a separate new specification element for this situation. This has also been fixed in the current working draft. — end drafting note]

    weak_ptr(weak_ptr&& r) noexcept;
    template<class Y> weak_ptr(weak_ptr<Y>&& r) noexcept;
    

    -?- Remark: The second constructor shall not participate in overload resolution unless Y* is compatible with T*.

    -?- Effects: Move-constructs a weak_ptr instance from r.

    -?- Postconditions: *this shall contain the old value of r. r shall be empty. r.use_count() == 0.

Date: 2016-11-15.00:00:00

[ 2016-11-08, Issaquah ]

Adopted during NB comment resolution

Date: 2015-10-26.00:00:00

[ 2015-10-26 ]

Daniel adjusts wording to lib. fund. v2. As link to the originating proposal: The discussion in this issue refers to wording changes that were requested by N3920.

Date: 2015-10-26.20:17:22

Addresses: fund.ts.v2

[memory.smartptr.weak.const] altered the constraints on weak_ptr's constructor from const weak_ptr<Y>& and const shared_ptr<Y>&. The constraints on the converting move constructor from weak_ptr<Y>&& was not, but should be, similarly modified.

History
Date User Action Args
2017-07-30 20:10:41adminsetstatus: wp -> open
2016-11-20 18:55:07adminsetmessages: + msg8647
2016-11-20 18:55:07adminsetstatus: new -> wp
2015-10-26 20:17:22adminsetmessages: + msg7582
2015-08-18 19:25:27adminsetmessages: + msg7493
2015-07-25 00:00:00admincreate