Created on 2008-10-04.00:00:00 last changed 172 months ago
Proposed resolution:
In [tuple.tuple], class tuple just before member swap please change as indicated:
template <class... UTypes> requires HasAssign<Types, const UTypes&>... tuple& operator=(const pair<UTypes...>&); template <class... UTypes> requires HasAssign<Types, RvalueOf<UTypes>::type>... tuple& operator=(pair<UTypes...>&&);
In [tuple.cnstr], starting just before p. 11 please remove as indicated:
requires MoveAssignable<Types>... tuple& operator=(tuple&& u);
-11- Effects: Move-assigns each element of u to the corresponding element of *this.
-12- Returns: *this.
[ 2009-10 Santa Cruz: ]
Mark as NAD, see issue 801.
[ 2009-07 Frankfurt: ]
Leave this open pending the removal of concepts from the WD.
[ Batavia (2009-05): ]
We believe that the proposed resolution's part 1 is editorial.
Regarding part 2, we either remove the specification as proposed, or else add back the declaration to which the specification refers. Alisdair and Bill prefer the latter. It is not immediately obvious whether the function is intended to be present.
We recommend that the Project Editor restore the missing declaration and that we keep part 2 of the issue alive.
Move to Open.
[ Post Summit Daniel provided wording. ]
see also 916.
N2770 (and thus now the WP) removed the non-template move-assignment operator from tuple's class definition, but the latter individual member description does still provide this operator. Is this (a) an oversight and can it (b) be solved as part of an editorial process?
History | |||
---|---|---|---|
Date | User | Action | Args |
2010-10-21 18:28:33 | admin | set | messages: + msg4357 |
2010-10-21 18:28:33 | admin | set | messages: + msg4356 |
2010-10-21 18:28:33 | admin | set | messages: + msg4355 |
2010-10-21 18:28:33 | admin | set | messages: + msg4354 |
2010-10-21 18:28:33 | admin | set | messages: + msg4353 |
2008-10-04 00:00:00 | admin | create |