gcc/libstdc++-v3/include
Jonathan Wakely beb04ce9d4 Define new filesystem::__file_clock type
In C++17 the clock used for filesystem::file_time_type is unspecified,
allowing it to be chrono::system_clock. The C++2a draft requires it to
be a distinct type, with additional member functions to convert to/from
other clocks (either the system clock or UTC). In order to avoid an ABI
change later, this patch defines a new distinct type now, which will be
used for std::chrono::file_clock later.

	* include/bits/fs_fwd.h (__file_clock): Define new clock.
	(file_time_type): Redefine in terms of __file_clock.
	* src/filesystem/ops-common.h (file_time): Add FIXME comment about
	overflow.
	* src/filesystem/std-ops.cc (is_set(perm_options, perm_options)): Give
	internal linkage.
	(internal_file_lock): New helper type for accessing __file_clock.
	(do_copy_file): Use internal_file_lock to convert system time to
	file_time_type.
	(last_write_time(const path&, error_code&)): Likewise.
	(last_write_time(const path&, file_time_type, error_code&)): Likewise.

From-SVN: r267602
2019-01-05 20:03:22 +00:00
..
backward Update copyright years. 2019-01-01 13:31:55 +01:00
bits Define new filesystem::__file_clock type 2019-01-05 20:03:22 +00:00
c Update copyright years. 2019-01-01 13:31:55 +01:00
c_compatibility Update copyright years. 2019-01-01 13:31:55 +01:00
c_global Update copyright years. 2019-01-01 13:31:55 +01:00
c_std Update copyright years. 2019-01-01 13:31:55 +01:00
debug PR libstdc++/88607 replace or remove unnecessary UTF-8 characters 2019-01-03 20:38:11 +00:00
decimal Update copyright years. 2019-01-01 13:31:55 +01:00
experimental PR libstdc++/88607 replace some more UTF-8 characters 2019-01-03 22:07:52 +00:00
ext Update copyright years. 2019-01-01 13:31:55 +01:00
parallel PR libstdc++/88607 replace or remove unnecessary UTF-8 characters 2019-01-03 20:38:11 +00:00
precompiled Update copyright years. 2019-01-01 13:31:55 +01:00
profile Update copyright years. 2019-01-01 13:31:55 +01:00
std PR libstdc++/88607 replace some more UTF-8 characters 2019-01-03 22:07:52 +00:00
tr1 Update copyright years. 2019-01-01 13:31:55 +01:00
tr2 Update copyright years. 2019-01-01 13:31:55 +01:00
Makefile.am Update copyright years. 2019-01-01 13:31:55 +01:00
Makefile.in Implement uniform container erasure for C++20. 2018-11-28 16:44:25 +00:00