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: 22.3.9 [forwardlist] Status: C++11 Submitter: Martin Sebor Opened: 2008-08-23 Last modified: 2018-08-10
Priority: Not Prioritized
View all other issues in [forwardlist].
View all issues with C++11 status.
forward_list member functions that take a forward_list::iterator (denoted position in the function signatures) argument have the following precondition:
Requires: position is dereferenceable or equal to before_begin().
I believe what's actually intended is this:
Requires: position is in the range [before_begin(), end()).
That is, when it's dereferenceable, position must point into *this, not just any forward_list object.
[ San Francisco: ]
Robert suggested alternate proposed wording which had large support.
[ Post Summit: ]
Walter: "position is before_begin() or a dereferenceable": add "is" after the "or"
With that minor update, Recommend Tentatively Ready.
Change the Requires clauses 22.3.9 [forwardlist], p21, p24, p26, p29, and, 18.104.22.168 [forwardlist.ops], p39, p43, p47 as follows:
Requires: position is dereferenceable
or equal to before_begin(). ...