This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of C++11 status.
Section: 20.3.2.4 [util.smartptr.ownerless] Status: C++11 Submitter: Thomas Plum Opened: 2008-12-30 Last modified: 2016-01-28
Priority: Not Prioritized
View all issues with C++11 status.
Discussion:
20.3.2.4 [util.smartptr.ownerless] (class template owner_less) says that operator()(x,y) shall return x.before(y).
However, shared_ptr and weak_ptr have an owner_before() but not a before(), and there's no base class to provide a missing before().
Being that the class is named owner_less , I'm guessing that "before()" should be "owner_before()", right?
[ Herve adds: ]
Agreed with the typo, it should be "shall return x.owner_before(y)".
[ Post Summit: ]
Recommend Tentatively Ready.
Proposed resolution:
Change 20.3.2.4 [util.smartptr.ownerless] p2:
-2- operator()(x,y) shall return x.owner_before(y). [Note: ...