This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of New status.
Section: 31.11.2.4 [syncstream.syncbuf.members] Status: New Submitter: Jonathan Wakely Opened: 2020-11-10 Last modified: 2020-11-21
Priority: 3
View other active issues in [syncstream.syncbuf.members].
View all other issues in [syncstream.syncbuf.members].
View all issues with New status.
Discussion:
31.11.2.4 [syncstream.syncbuf.members] p5 says "May call member functions of wrapped while holding a lock uniquely associated with wrapped."
It's unclear what "uniquely associated" means. Is it required to be a one-to-one mapping, so that every streambuf* that is wrapped is associated with a different lock? I believe the intention is only that for a given streambuf* every syncbuf that wraps it uses the same lock. The intention was that it's a valid implementation for the same lock to be used for more than one streambuf* (e.g. using a table of N locks which are indexed by a hash of the streambuf* value). The current wording can be interpreted to forbid that implementation.[2020-11-21; Reflector prioritization]
Set priority to 3 during reflector discussions.
Proposed resolution: