Created on 2019-11-26.00:00:00 last changed 46 months ago
Proposed resolution:
This wording is relative to N4835.
Modify [pairs.pair] as indicated:
-2- The defaulted move and copy constructor, respectively, of pair shall be a constexpr function if and only if all required element-wise initializations for
copymove andmovecopy, respectively, would satisfy the requirements for a constexpr function.
Modify [tuple.cnstr] as indicated:
-3- The defaulted move and copy constructor, respectively, of tuple shall be a constexpr function if and only if all required element-wise initializations for
copymove andmovecopy, respectively, would satisfy the requirements for a constexpr function. The defaulted move and copy constructor of tuple<> shall be constexpr functions.
[ 2019-12-08 Issue Prioritization ]
Status to Tentatively Ready and priority to 0 after ten positive votes on the reflector.
[ 2019-12-01; Daniel comments and provides wording ]
These inverted wording effects are an unintended oversight caused by N3471.
[pairs.pair] p2 and [tuple.cnstr] p3 say:
The defaulted move and copy constructor, respectively, of {pair,tuple} is a constexpr function if and only if all required element-wise initializations for copy and move, respectively, would satisfy the requirements for a constexpr function.
Note that we specify the copy constructor in terms of element move operations and the move constructor in terms of element copy operations. Is that really the intent? This appears to be how this was originally specified when the wording was added by N3471.
History | |||
---|---|---|---|
Date | User | Action | Args |
2021-02-25 10:48:01 | admin | set | status: wp -> c++20 |
2020-02-24 16:02:59 | admin | set | status: voting -> wp |
2020-01-17 04:54:50 | admin | set | status: ready -> voting |
2019-12-08 18:39:21 | admin | set | messages: + msg10873 |
2019-12-08 18:39:21 | admin | set | status: new -> ready |
2019-12-01 10:59:21 | admin | set | messages: + msg10856 |
2019-12-01 10:59:21 | admin | set | messages: + msg10855 |
2019-11-26 00:00:00 | admin | create |