Title
§[thread.decaycopy] issue
Status
resolved
Section
[expos.only.entity]
Submitter
Marshall Clow

Created on 2017-07-11.00:00:00 last changed 48 months ago

Messages

Date: 2020-05-03.19:53:58
Resolved by editorial creation of

Rationale:

decay-copy after acceptance of P0758R1.
Date: 2020-05-15.00:00:00

[ 2020-05-03; Reflector discussions ]

Resolved by editorial action starting with N4800.

Date: 2019-03-15.00:00:00

[ 2019-03-22; Daniel comments ]

Starting with N4800 have now a constexpr and conditionally noexcept decay-copy in the working draft ([expos.only.func]). The pre-condition for that specification helper became possible by adoption of P0758R1, which introduced the missing is_nothrow_convertible trait.

Date: 2017-11-01.00:00:00

[ 2017-11-01 P3 as result of c++std-lib online vote. ]

Date: 2017-07-15.00:00:00

[ 2017-07-16, Daniel comments ]

Currently there exists no proper way to mark decay_copy as conditionally noexcept as explained in N3255 section "Adding to the Standard". This is also slighly related to the request to add an is_nothrow_convertible trait, as requested by LWG 2040.

Date: 2017-07-11.00:00:00

[thread.decaycopy] says:

In several places in this Clause the operation DECAY_COPY(x) is used. All such uses mean call the function decay_copy(x) and use the result, where decay_copy is defined as follows:

but decay_copy is not defined in any synopsis.

The Ranges TS has a similar use of DECAY_COPY, except that theirs is also constexpr and noexcept.

We should mark the function decay_copy as "exposition only" and constexpr and noexcept.

History
Date User Action Args
2020-05-03 19:53:58adminsetmessages: + msg11263
2019-03-22 17:54:23adminsetmessages: + msg10375
2019-03-22 17:54:23adminsetmessages: + msg10374
2019-03-22 17:54:23adminsetstatus: new -> resolved
2017-11-01 18:56:36adminsetmessages: + msg9494
2017-07-16 12:46:35adminsetmessages: + msg9404
2017-07-11 00:00:00admincreate