[recursive_]directory_iterator::increment(error_code&)
is underspecifiedSection: 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.
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 (24.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 (24.3.5.3 [input.iterators]), except that: […]