gcc/libstdc++-v3
Jonathan Wakely 9e16052644 Overload std::distance and std::advance for path::iterator
Although filesystem::path::iterator is only a bidirectional iterator,
the underlying sequence has random access iterators (specifically, raw
pointers). This means std::distance and std::advance can be implemented
more efficiently than the generic versions which apply ++ and --
repeatedly.

	PR libstdc++/71044 (partial)
	* include/bits/fs_path.h (__path_iter_distance, __path_iter_advance):
	New friend functions to implement std::distance and std::advance more
	efficiently.
	(distance, advance): Add overloads for path::iterator.
	* testsuite/27_io/filesystem/path/itr/components.cc: Test new
	overload.

From-SVN: r267057
2018-12-12 16:13:49 +00:00
..
config Implement std::pmr::synchronized_pool_resource 2018-11-17 23:35:44 +00:00
doc documentation_hacking.xml: Update reference to epubcheck. 2018-12-11 04:00:00 +00:00
include Overload std::distance and std::advance for path::iterator 2018-12-12 16:13:49 +00:00
libsupc++ Implement P0722R3, destroying operator delete. 2018-11-12 23:40:01 -05:00
po
python PR libstdc++/65229 fix pretty printer for std::bitset<0> 2018-11-23 16:12:03 +00:00
scripts Darwin fix libstdc++ build warnings. 2018-12-06 19:42:21 +00:00
src PR libstdc++/86910 fix filesystem::create_directories 2018-11-29 00:39:37 +00:00
testsuite Overload std::distance and std::advance for path::iterator 2018-12-12 16:13:49 +00:00
acinclude.m4 PR libstdc++/67843 set shared_ptr lock policy at build-time 2018-11-27 23:25:56 +00:00
aclocal.m4
ChangeLog Overload std::distance and std::advance for path::iterator 2018-12-12 16:13:49 +00:00
ChangeLog-1998
ChangeLog-1999
ChangeLog-2000
ChangeLog-2001
ChangeLog-2002
ChangeLog-2003
ChangeLog-2004
ChangeLog-2005
ChangeLog-2006
ChangeLog-2007
ChangeLog-2008
ChangeLog-2009
ChangeLog-2010
ChangeLog-2011
ChangeLog-2012
ChangeLog-2013
ChangeLog-2014
ChangeLog-2015
ChangeLog-2016
ChangeLog-2017
config.h.in PR libstdc++/67843 set shared_ptr lock policy at build-time 2018-11-27 23:25:56 +00:00
configure PR libstdc++/67843 set shared_ptr lock policy at build-time 2018-11-27 23:25:56 +00:00
configure.ac PR libstdc++/67843 set shared_ptr lock policy at build-time 2018-11-27 23:25:56 +00:00
configure.host
crossconfig.m4
fragment.am
linkage.m4
Makefile.am
Makefile.in
README

file: libstdc++-v3/README

New users may wish to point their web browsers to the file
index.html in the 'doc/html' subdirectory.  It contains brief
building instructions and notes on how to configure the library in
interesting ways.