This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of NAD status.
Section: 33.6.4.2 [thread.mutex.requirements.mutex] Status: NAD Submitter: Pete Becker Opened: 2011-10-17 Last modified: 2016-01-28
Priority: Not Prioritized
View all other issues in [thread.mutex.requirements.mutex].
View all issues with NAD status.
Discussion:
33.6.4.2 [thread.mutex.requirements.mutex]/6, fourth bullet requires the return type of m.lock() to be void.
This is over-constrained. The true requirement is that the standard library ignores any value that the function returns. Yes, allowing non-void return types means that users can't store a pointer to this member function. No, that's not the least bit important. [See also the discussion following c++std-lib-31318][2012, Kona]
This does not specify a concept; it specifies requirements on the concrete mutex types.
Proposed resolution: