Created on 2008-09-10.00:00:00 last changed 162 months ago
Proposed resolution:
In table 80 in section [container.requirements.general], replace the postcondition of a.swap(b) with the following:
Table 80 -- Container requirements Expression Return type Operational semantics Assertion/note pre-/post-conidtion Complexity ... ... ... ... ... a.swap(b); void swap(a,b)Exchange the contents of a and b.(Note A)
Remove the reference to swap from the paragraph following the table.
Notes: the algorithms
swap(),equal() and lexicographical_compare() are defined in Clause 25. ...
[ 2009-07 Frankfurt ]
Moved to Ready with minor edits (which have been made).
[ Post Summit Anthony Williams provided proposed wording. ]
[ San Francisco: ]
Robert to propose a resolution along the lines of "Postcondition: "a = b, b = a" This will be a little tricky for the hash containers, since they don't have operator==.
Note in particular that Table 90 "Container Requirements" gives semantics of a.swap(b) as swap(a,b), yet for all containers we define swap(a,b) to call a.swap(b) - a circular definition.
History | |||
---|---|---|---|
Date | User | Action | Args |
2011-08-23 20:07:26 | admin | set | status: wp -> c++11 |
2010-10-21 18:28:33 | admin | set | messages: + msg4183 |
2010-10-21 18:28:33 | admin | set | messages: + msg4182 |
2010-10-21 18:28:33 | admin | set | messages: + msg4181 |
2010-10-21 18:28:33 | admin | set | messages: + msg4180 |
2008-09-10 00:00:00 | admin | create |