Created on 2020-11-10.00:00:00 last changed 1 month ago
This wording is relative to N4885.
Modify [syncstream.syncbuf.assign] as indicated:
basic_syncbuf& operator=(basic_syncbuf&& rhs)
-1- Effects: […]-2- Postconditions: […] -3- Returns: […] -4- Remarks: […]void swap(basic_syncbuf& other)
-5- Preconditions: […]-6- Effects: […]
[ 2021-06-23; Reflector poll ]
Set status to Tentatively Ready after eight votes in favour during reflector poll.
[ 2021-05-22 Tim adds PR ]
The move assignment is specified to call emit() which can throw, and there's nothing in the wording providing for catching/ignoring the exception, so it can't be noexcept. The swap needs to call basic_streambuf::swap, which isn't noexcept, so it shouldn't be noexcept either.
[ 2020-11-21; Reflector prioritization ]
Set priority to 3 during reflector discussions.
The synopsis in [syncstream.syncbuf.overview] shows the move assignment operator and swap member as potentially throwing. The detailed descriptions in [syncstream.syncbuf.assign] are noexcept.Daniel: This mismatch is already present in the originally accepted paper P0053R7, so this is nothing that could be resolved editorially.
|2021-06-23 14:16:45||admin||set||messages: + msg11958|
|2021-06-23 14:16:45||admin||set||status: new -> ready|
|2021-05-22 16:14:55||admin||set||messages: + msg11840|
|2021-05-22 16:14:55||admin||set||messages: + msg11839|
|2020-11-21 14:06:16||admin||set||messages: + msg11624|