WIP: Implement Filesystem TS

Jonathan Wakely jwakely@redhat.com
Mon Aug 4 13:50:00 GMT 2014


This is a 99% complete implementation of the Filesystem TS as defined
by the N4099 draft,
http://open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4099.html

The .cc files use C++14 but the headers are C++11 so it can be used by
more people. Rather than adding loads of new exports to libstdc++.so
the library builds as libstdc++fs.a, so you need to link to that to
use it. That might not be a permanent solution, but works for now.

To use std::quoted in C++11 headers I had to split the implementation
into the public C++14-only definition of std::quoted and the internals
which can now be called from elsewhere in the library by C++11 code.

It could do with more tests, especially for the directory iterators
(I've tested them locally, but doing so needs various files and
directories to exist, ideally with un-readable permissions, and that's
hard to set up in the testsuite).

I haven't prepared a ChangeLog entry yet either, as this is actually
33 separate patches in my local git tree (plus another one for python
pretty printers).

I'm not in a rush to commit this, but am posting it now for anyone
interested (I know Ed wants to see this). Comments and fixes welcome!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: filesystem.txt.gz
Type: application/gzip
Size: 29891 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20140804/9ae55f7c/attachment.gz>


More information about the Libstdc++ mailing list