Commit 67087c7e by Jonathan Wakely Committed by Jonathan Wakely

PR libstdc++/89986 export directory_iterator::increment

	PR libstdc++/89986
	* config/abi/pre/gnu.ver: Add missing exports.
	* testsuite/27_io/filesystem/iterators/directory_iterator.cc: Test
	increment member.

From-SVN: r270174
parent c7dde4a9
2019-04-05 Jonathan Wakely <jwakely@redhat.com> 2019-04-05 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/89986
* config/abi/pre/gnu.ver: Add missing exports.
* testsuite/27_io/filesystem/iterators/directory_iterator.cc: Test
increment member.
* config/abi/pre/gnu.ver: Export new symbols. * config/abi/pre/gnu.ver: Export new symbols.
* include/bits/fs_dir.h (recursive_directory_iterator::options()) * include/bits/fs_dir.h (recursive_directory_iterator::options())
(recursive_directory_iterator::recursion_pending()) (recursive_directory_iterator::recursion_pending())
......
...@@ -2200,13 +2200,14 @@ GLIBCXX_3.4.26 { ...@@ -2200,13 +2200,14 @@ GLIBCXX_3.4.26 {
_ZNSt10filesystem16weakly_canonical*; _ZNSt10filesystem16weakly_canonical*;
_ZNKSt10filesystem18directory_iteratordeEv; _ZNKSt10filesystem18directory_iteratordeEv;
_ZNSt10filesystem18directory_iteratorC[12]ERKNS_4pathENS_17directory_optionsEPSt10error_code;
_ZNSt10filesystem18directory_iterator9incrementERSt10error_code;
_ZNSt10filesystem18directory_iteratorppEv;
_ZNKSt10filesystem28recursive_directory_iterator7optionsEv; _ZNKSt10filesystem28recursive_directory_iterator7optionsEv;
_ZNKSt10filesystem28recursive_directory_iterator5depthEv; _ZNKSt10filesystem28recursive_directory_iterator5depthEv;
_ZNKSt10filesystem28recursive_directory_iterator17recursion_pendingEv; _ZNKSt10filesystem28recursive_directory_iterator17recursion_pendingEv;
_ZNSt10filesystem28recursive_directory_iterator25disable_recursion_pendingEv; _ZNSt10filesystem28recursive_directory_iterator25disable_recursion_pendingEv;
_ZNKSt10filesystem28recursive_directory_iteratordeEv; _ZNKSt10filesystem28recursive_directory_iteratordeEv;
_ZNSt10filesystem18directory_iteratorC[12]ERKNS_4pathENS_17directory_optionsEPSt10error_code;
_ZNSt10filesystem18directory_iteratorppEv;
_ZNSt10filesystem28recursive_directory_iterator3popERSt10error_code; _ZNSt10filesystem28recursive_directory_iterator3popERSt10error_code;
_ZNSt10filesystem28recursive_directory_iterator3popEv; _ZNSt10filesystem28recursive_directory_iterator3popEv;
_ZNSt10filesystem28recursive_directory_iterator9incrementERSt10error_code; _ZNSt10filesystem28recursive_directory_iterator9incrementERSt10error_code;
...@@ -2216,13 +2217,14 @@ GLIBCXX_3.4.26 { ...@@ -2216,13 +2217,14 @@ GLIBCXX_3.4.26 {
_ZNSt10filesystem28recursive_directory_iteratorppEv; _ZNSt10filesystem28recursive_directory_iteratorppEv;
_ZNKSt10filesystem7__cxx1118directory_iteratordeEv; _ZNKSt10filesystem7__cxx1118directory_iteratordeEv;
_ZNSt10filesystem7__cxx1118directory_iteratorC[12]ERKNS0_4pathENS_17directory_optionsEPSt10error_code;
_ZNSt10filesystem7__cxx1118directory_iterator9incrementERSt10error_code;
_ZNSt10filesystem7__cxx1118directory_iteratorppEv;
_ZNKSt10filesystem7__cxx1128recursive_directory_iterator7optionsEv; _ZNKSt10filesystem7__cxx1128recursive_directory_iterator7optionsEv;
_ZNKSt10filesystem7__cxx1128recursive_directory_iterator5depthEv; _ZNKSt10filesystem7__cxx1128recursive_directory_iterator5depthEv;
_ZNKSt10filesystem7__cxx1128recursive_directory_iterator17recursion_pendingEv; _ZNKSt10filesystem7__cxx1128recursive_directory_iterator17recursion_pendingEv;
_ZNKSt10filesystem7__cxx1128recursive_directory_iteratordeEv; _ZNKSt10filesystem7__cxx1128recursive_directory_iteratordeEv;
_ZNSt10filesystem7__cxx1128recursive_directory_iterator25disable_recursion_pendingEv; _ZNSt10filesystem7__cxx1128recursive_directory_iterator25disable_recursion_pendingEv;
_ZNSt10filesystem7__cxx1118directory_iteratorC[12]ERKNS0_4pathENS_17directory_optionsEPSt10error_code;
_ZNSt10filesystem7__cxx1118directory_iteratorppEv;
_ZNSt10filesystem7__cxx1128recursive_directory_iterator3popERSt10error_code; _ZNSt10filesystem7__cxx1128recursive_directory_iterator3popERSt10error_code;
_ZNSt10filesystem7__cxx1128recursive_directory_iterator3popEv; _ZNSt10filesystem7__cxx1128recursive_directory_iterator3popEv;
_ZNSt10filesystem7__cxx1128recursive_directory_iterator9incrementERSt10error_code; _ZNSt10filesystem7__cxx1128recursive_directory_iterator9incrementERSt10error_code;
......
...@@ -100,6 +100,15 @@ test02() ...@@ -100,6 +100,15 @@ test02()
VERIFY( entry1.path() == p/"x" ); VERIFY( entry1.path() == p/"x" );
VERIFY( iter == end(iter) ); VERIFY( iter == end(iter) );
// Test post-increment (libstdc++/89986)
ec = bad_ec;
iter = fs::directory_iterator(p, ec);
VERIFY( !ec );
VERIFY( iter != end(iter) );
iter.increment(ec);
VERIFY( !ec );
VERIFY( iter == end(iter) );
remove_all(p, ec); remove_all(p, ec);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment