This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of C++17 status.
Section: 31.12.11.2 [fs.dir.itr.members], 31.12.12.2 [fs.rec.dir.itr.members] Status: C++17 Submitter: Daniel Krügler Opened: 2016-06-20 Last modified: 2017-07-30
Priority: 0
View all other issues in [fs.dir.itr.members].
View all issues with C++17 status.
Discussion:
Setting X as being either directory_iterator or recursive_directory_iterator there exists a member function in X,
X& increment(error_code& ec) noexcept;
whose effects are described as:
As specified by Input iterators (24.2.3).
which is somewhat surprising, because for input iterators there is no call expression naming increment specified.
The intention here is to consider increment as a another name for the prefix increment operator of iterators, but that needs to be expressed somewhere.[2016-06 Oulu]
Moved to P0/Ready during issues prioritization.
Friday: status to Immediate
Proposed resolution:
This wording is relative to N4594.
[Drafting note: The suggested wording for this issue also repairs the information loss that had been caused by the third bullet of the proposed resolution of 2704]
Change 31.12.11.2 [fs.dir.itr.members] as indicated:
directory_iterator& operator++(); directory_iterator& increment(error_code& ec) noexcept;-10- Effects: As specified
byfor the prefix increment operation of Input iterators (25.3.5.3 [input.iterators]).
Change 31.12.12.2 [fs.rec.dir.itr.members] as indicated:
recursive_directory_iterator& operator++(); recursive_directory_iterator& increment(error_code& ec) noexcept;[…]
-27- Effects: As specifiedbyfor the prefix increment operation of Input iterators (25.3.5.3 [input.iterators]), except that: […]