From 2b5225352e9267152dc714e256576563a949a8f4 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Sun, 6 Jan 2019 22:34:29 +0000 Subject: [PATCH] PR libstdc++/86756 add std::filesystem::path to libstdc++.so Move the C++17 std::filesystem::path definitions from the libstdc++fs.a archive to the main libstdc++ library. The path classes do not depend on any OS functions, so can be defined unconditionally on all targets (rather than depending on --enable-libstdcxx-filesystem-ts). The tests should pass on all targets too. PR libstdc++/86756 * config/abi/pre/gnu.ver (GLIBCXX_3.4): Make various patterns for typeinfo and vtables less greedy. (GLIBCXX_3.4.26): Export symbols for std::filesystem::path. * src/c++17/Makefile.am: Add fs_path.cc and cow-fs_path.cc. * src/c++17/Makefile.in: Regenerate. * src/c++17/cow-fs_path.cc: Move src/filesystem/cow-std-path.cc to here, and change name of included file. * src/c++17/fs_path.cc: Move src/filesystem/std-path.cc to here. * src/filesystem/Makefile.am: Remove std-path.cc and cow-std-path.cc from sources. * src/filesystem/Makefile.in: Regenerate. * src/filesystem/cow-std-path.cc: Move to src/c++17/cow-fs_path.cc. * src/filesystem/std-path.cc: Move to src/c++17/fs_path.cc. * testsuite/27_io/filesystem/path/append/path.cc: Remove -lstdc++fs from dg-options and remove dg-require-filesystem-ts. * testsuite/27_io/filesystem/path/append/source.cc: Likewise. * testsuite/27_io/filesystem/path/assign/assign.cc: Likewise. * testsuite/27_io/filesystem/path/assign/copy.cc: Likewise. * testsuite/27_io/filesystem/path/compare/compare.cc: Likewise. * testsuite/27_io/filesystem/path/compare/lwg2936.cc: Likewise. * testsuite/27_io/filesystem/path/compare/path.cc: Likewise. * testsuite/27_io/filesystem/path/compare/strings.cc: Likewise. * testsuite/27_io/filesystem/path/concat/path.cc: Likewise. * testsuite/27_io/filesystem/path/concat/strings.cc: Likewise. * testsuite/27_io/filesystem/path/construct/80762.cc: Likewise. * testsuite/27_io/filesystem/path/construct/copy.cc: Likewise. * testsuite/27_io/filesystem/path/construct/default.cc: Likewise. * testsuite/27_io/filesystem/path/construct/format.cc: Likewise. * testsuite/27_io/filesystem/path/construct/locale.cc: Likewise. * testsuite/27_io/filesystem/path/construct/range.cc: Likewise. * testsuite/27_io/filesystem/path/construct/string_view.cc: Likewise. * testsuite/27_io/filesystem/path/decompose/extension.cc: Likewise. * testsuite/27_io/filesystem/path/decompose/filename.cc: Likewise. * testsuite/27_io/filesystem/path/decompose/parent_path.cc: Likewise. * testsuite/27_io/filesystem/path/decompose/relative_path.cc: Likewise. * testsuite/27_io/filesystem/path/decompose/root_directory.cc: Likewise. * testsuite/27_io/filesystem/path/decompose/root_name.cc: Likewise. * testsuite/27_io/filesystem/path/decompose/root_path.cc: Likewise. * testsuite/27_io/filesystem/path/decompose/stem.cc: Likewise. * testsuite/27_io/filesystem/path/generation/normal.cc: Likewise. * testsuite/27_io/filesystem/path/generation/normal2.cc: Likewise. * testsuite/27_io/filesystem/path/generation/proximate.cc: Likewise. * testsuite/27_io/filesystem/path/generation/relative.cc: Likewise. * testsuite/27_io/filesystem/path/generic/generic_string.cc: Likewise. * testsuite/27_io/filesystem/path/itr/components.cc: Likewise. * testsuite/27_io/filesystem/path/itr/traversal.cc: Likewise. * testsuite/27_io/filesystem/path/modifiers/clear.cc: Likewise. * testsuite/27_io/filesystem/path/modifiers/make_preferred.cc: Likewise. * testsuite/27_io/filesystem/path/modifiers/remove_filename.cc: Likewise. * testsuite/27_io/filesystem/path/modifiers/replace_extension.cc: Likewise. * testsuite/27_io/filesystem/path/modifiers/replace_filename.cc: Likewise. * testsuite/27_io/filesystem/path/modifiers/swap.cc: Likewise. * testsuite/27_io/filesystem/path/native/string.cc: Likewise. * testsuite/27_io/filesystem/path/nonmember/append.cc: Likewise. * testsuite/27_io/filesystem/path/nonmember/hash_value.cc: Likewise. * testsuite/27_io/filesystem/path/query/empty.cc: Likewise. * testsuite/27_io/filesystem/path/query/has_extension.cc: Likewise. * testsuite/27_io/filesystem/path/query/has_filename.cc: Likewise. * testsuite/27_io/filesystem/path/query/has_parent_path.cc: Likewise. * testsuite/27_io/filesystem/path/query/has_relative_path.cc: Likewise. * testsuite/27_io/filesystem/path/query/has_root_directory.cc: Likewise. * testsuite/27_io/filesystem/path/query/has_root_name.cc: Likewise. * testsuite/27_io/filesystem/path/query/has_root_path.cc: Likewise. * testsuite/27_io/filesystem/path/query/has_stem.cc: Likewise. * testsuite/27_io/filesystem/path/query/is_absolute.cc: Likewise. * testsuite/27_io/filesystem/path/query/is_relative.cc: Likewise. From-SVN: r267615 --- libstdc++-v3/ChangeLog | 74 +++++++++++ libstdc++-v3/config/abi/pre/gnu.ver | 122 ++++++++++++++---- libstdc++-v3/src/c++17/Makefile.am | 20 +-- libstdc++-v3/src/c++17/Makefile.in | 30 +++-- .../cow-std-path.cc => c++17/cow-fs_path.cc} | 2 +- .../std-path.cc => c++17/fs_path.cc} | 0 libstdc++-v3/src/filesystem/Makefile.am | 4 +- libstdc++-v3/src/filesystem/Makefile.in | 8 +- .../27_io/filesystem/path/append/path.cc | 3 +- .../27_io/filesystem/path/append/source.cc | 3 +- .../27_io/filesystem/path/assign/assign.cc | 3 +- .../27_io/filesystem/path/assign/copy.cc | 3 +- .../27_io/filesystem/path/compare/compare.cc | 3 +- .../27_io/filesystem/path/compare/lwg2936.cc | 3 +- .../27_io/filesystem/path/compare/path.cc | 3 +- .../27_io/filesystem/path/compare/strings.cc | 3 +- .../27_io/filesystem/path/concat/path.cc | 3 +- .../27_io/filesystem/path/concat/strings.cc | 3 +- .../27_io/filesystem/path/construct/80762.cc | 1 - .../27_io/filesystem/path/construct/copy.cc | 3 +- .../filesystem/path/construct/default.cc | 3 +- .../27_io/filesystem/path/construct/format.cc | 3 +- .../27_io/filesystem/path/construct/locale.cc | 3 +- .../27_io/filesystem/path/construct/range.cc | 3 +- .../filesystem/path/construct/string_view.cc | 3 +- .../filesystem/path/decompose/extension.cc | 3 +- .../filesystem/path/decompose/filename.cc | 3 +- .../filesystem/path/decompose/parent_path.cc | 3 +- .../path/decompose/relative_path.cc | 3 +- .../path/decompose/root_directory.cc | 3 +- .../filesystem/path/decompose/root_name.cc | 3 +- .../filesystem/path/decompose/root_path.cc | 3 +- .../27_io/filesystem/path/decompose/stem.cc | 3 +- .../filesystem/path/generation/normal.cc | 3 +- .../filesystem/path/generation/normal2.cc | 3 +- .../filesystem/path/generation/proximate.cc | 3 +- .../filesystem/path/generation/relative.cc | 3 +- .../filesystem/path/generic/generic_string.cc | 3 +- .../27_io/filesystem/path/itr/components.cc | 3 +- .../27_io/filesystem/path/itr/traversal.cc | 3 +- .../27_io/filesystem/path/modifiers/clear.cc | 3 +- .../path/modifiers/make_preferred.cc | 3 +- .../path/modifiers/remove_filename.cc | 3 +- .../path/modifiers/replace_extension.cc | 3 +- .../path/modifiers/replace_filename.cc | 3 +- .../27_io/filesystem/path/modifiers/swap.cc | 3 +- .../27_io/filesystem/path/native/string.cc | 3 +- .../27_io/filesystem/path/nonmember/append.cc | 3 +- .../filesystem/path/nonmember/hash_value.cc | 3 +- .../27_io/filesystem/path/query/empty.cc | 3 +- .../filesystem/path/query/has_extension.cc | 3 +- .../filesystem/path/query/has_filename.cc | 3 +- .../filesystem/path/query/has_parent_path.cc | 3 +- .../path/query/has_relative_path.cc | 3 +- .../path/query/has_root_directory.cc | 3 +- .../filesystem/path/query/has_root_name.cc | 3 +- .../filesystem/path/query/has_root_path.cc | 3 +- .../27_io/filesystem/path/query/has_stem.cc | 3 +- .../filesystem/path/query/is_absolute.cc | 3 +- .../filesystem/path/query/is_relative.cc | 3 +- 60 files changed, 251 insertions(+), 163 deletions(-) rename libstdc++-v3/src/{filesystem/cow-std-path.cc => c++17/cow-fs_path.cc} (97%) rename libstdc++-v3/src/{filesystem/std-path.cc => c++17/fs_path.cc} (100%) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index fe1643d69cc..dd893977340 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,79 @@ 2019-01-06 Jonathan Wakely + PR libstdc++/86756 + * config/abi/pre/gnu.ver (GLIBCXX_3.4): Make various patterns for + typeinfo and vtables less greedy. + (GLIBCXX_3.4.26): Export symbols for std::filesystem::path. + * src/c++17/Makefile.am: Add fs_path.cc and cow-fs_path.cc. + * src/c++17/Makefile.in: Regenerate. + * src/c++17/cow-fs_path.cc: Move src/filesystem/cow-std-path.cc to + here, and change name of included file. + * src/c++17/fs_path.cc: Move src/filesystem/std-path.cc to here. + * src/filesystem/Makefile.am: Remove std-path.cc and cow-std-path.cc + from sources. + * src/filesystem/Makefile.in: Regenerate. + * src/filesystem/cow-std-path.cc: Move to src/c++17/cow-fs_path.cc. + * src/filesystem/std-path.cc: Move to src/c++17/fs_path.cc. + * testsuite/27_io/filesystem/path/append/path.cc: Remove -lstdc++fs + from dg-options and remove dg-require-filesystem-ts. + * testsuite/27_io/filesystem/path/append/source.cc: Likewise. + * testsuite/27_io/filesystem/path/assign/assign.cc: Likewise. + * testsuite/27_io/filesystem/path/assign/copy.cc: Likewise. + * testsuite/27_io/filesystem/path/compare/compare.cc: Likewise. + * testsuite/27_io/filesystem/path/compare/lwg2936.cc: Likewise. + * testsuite/27_io/filesystem/path/compare/path.cc: Likewise. + * testsuite/27_io/filesystem/path/compare/strings.cc: Likewise. + * testsuite/27_io/filesystem/path/concat/path.cc: Likewise. + * testsuite/27_io/filesystem/path/concat/strings.cc: Likewise. + * testsuite/27_io/filesystem/path/construct/80762.cc: Likewise. + * testsuite/27_io/filesystem/path/construct/copy.cc: Likewise. + * testsuite/27_io/filesystem/path/construct/default.cc: Likewise. + * testsuite/27_io/filesystem/path/construct/format.cc: Likewise. + * testsuite/27_io/filesystem/path/construct/locale.cc: Likewise. + * testsuite/27_io/filesystem/path/construct/range.cc: Likewise. + * testsuite/27_io/filesystem/path/construct/string_view.cc: Likewise. + * testsuite/27_io/filesystem/path/decompose/extension.cc: Likewise. + * testsuite/27_io/filesystem/path/decompose/filename.cc: Likewise. + * testsuite/27_io/filesystem/path/decompose/parent_path.cc: Likewise. + * testsuite/27_io/filesystem/path/decompose/relative_path.cc: Likewise. + * testsuite/27_io/filesystem/path/decompose/root_directory.cc: + Likewise. + * testsuite/27_io/filesystem/path/decompose/root_name.cc: Likewise. + * testsuite/27_io/filesystem/path/decompose/root_path.cc: Likewise. + * testsuite/27_io/filesystem/path/decompose/stem.cc: Likewise. + * testsuite/27_io/filesystem/path/generation/normal.cc: Likewise. + * testsuite/27_io/filesystem/path/generation/normal2.cc: Likewise. + * testsuite/27_io/filesystem/path/generation/proximate.cc: Likewise. + * testsuite/27_io/filesystem/path/generation/relative.cc: Likewise. + * testsuite/27_io/filesystem/path/generic/generic_string.cc: Likewise. + * testsuite/27_io/filesystem/path/itr/components.cc: Likewise. + * testsuite/27_io/filesystem/path/itr/traversal.cc: Likewise. + * testsuite/27_io/filesystem/path/modifiers/clear.cc: Likewise. + * testsuite/27_io/filesystem/path/modifiers/make_preferred.cc: + Likewise. + * testsuite/27_io/filesystem/path/modifiers/remove_filename.cc: + Likewise. + * testsuite/27_io/filesystem/path/modifiers/replace_extension.cc: + Likewise. + * testsuite/27_io/filesystem/path/modifiers/replace_filename.cc: + Likewise. + * testsuite/27_io/filesystem/path/modifiers/swap.cc: Likewise. + * testsuite/27_io/filesystem/path/native/string.cc: Likewise. + * testsuite/27_io/filesystem/path/nonmember/append.cc: Likewise. + * testsuite/27_io/filesystem/path/nonmember/hash_value.cc: Likewise. + * testsuite/27_io/filesystem/path/query/empty.cc: Likewise. + * testsuite/27_io/filesystem/path/query/has_extension.cc: Likewise. + * testsuite/27_io/filesystem/path/query/has_filename.cc: Likewise. + * testsuite/27_io/filesystem/path/query/has_parent_path.cc: Likewise. + * testsuite/27_io/filesystem/path/query/has_relative_path.cc: Likewise. + * testsuite/27_io/filesystem/path/query/has_root_directory.cc: + Likewise. + * testsuite/27_io/filesystem/path/query/has_root_name.cc: Likewise. + * testsuite/27_io/filesystem/path/query/has_root_path.cc: Likewise. + * testsuite/27_io/filesystem/path/query/has_stem.cc: Likewise. + * testsuite/27_io/filesystem/path/query/is_absolute.cc: Likewise. + * testsuite/27_io/filesystem/path/query/is_relative.cc: Likewise. + PR libstdc++/87431 * include/std/variant (_Variant_storage::_M_valid): Check is_trivially_copyable instead of is_scalar. diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver index 6c18caa6d8a..f83d2b1cca9 100644 --- a/libstdc++-v3/config/abi/pre/gnu.ver +++ b/libstdc++-v3/config/abi/pre/gnu.ver @@ -767,19 +767,24 @@ GLIBCXX_3.4 { _ZTVSt18basic_stringstreamI*; _ZTVSt19basic_istringstreamI*; _ZTVSt19basic_ostringstreamI*; - _ZTVSt[0-9][0-9][c-d]*; - _ZTVSt[0-9][0-9][g-k]*; + _ZTVSt10ctype_base; + _ZTVSt12codecvt_base; + _ZTVSt12ctype_bynameI[cw]E; + _ZTVSt14co*_bynameI[cw]*; + _ZTVSt12domain_error; + _ZTVSt10istrstream; + _ZTVSt16invalid_argument; _ZTVSt11logic_error; _ZTVSt12length_error; -# _ZTVSt[0-9][0-9][m-q]*; - _ZTVSt[0-9][0-9][m]*; - _ZTVSt[0-9][0-9]n[^e]*; - _ZTVSt[0-9][0-9][o-q]*; + _ZTVSt1[07]money*; + _ZTVSt1[35]messages*; + _ZTVSt15numpunct_bynameI[cw]E; + _ZTVSt1[024]o*; _ZTVSt11range_error; _ZTVSt13runtime_error; - _ZTVSt[0-9][0-9][t-z]*; - _ZTVSt[0-9][0-9]e[^r]*; - _ZTVSt[0-9][0-9]s[^y]*; + _ZTVSt12strstreambuf; + _ZTVSt15time*; + _ZTVSt15underflow_error; _ZTVSt11__timepunctI[cw]E; _ZTVSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE; @@ -821,19 +826,24 @@ GLIBCXX_3.4 { _ZTISt18basic_stringstreamI*; _ZTISt19basic_istringstreamI*; _ZTISt19basic_ostringstreamI*; - _ZTISt[0-9][0-9][c-d]*; - _ZTISt[0-9][0-9][g-k]*; + _ZTISt10ctype_base; + _ZTISt12codecvt_base; + _ZTISt12ctype_bynameI[cw]E; + _ZTISt14co*_bynameI[cw]*; + _ZTISt12domain_error; + _ZTISt10istrstream; + _ZTISt16invalid_argument; _ZTISt11logic_error; _ZTISt12length_error; -# _ZTISt[0-9][0-9][m-q]*; - _ZTISt[0-9][0-9][m]*; - _ZTISt[0-9][0-9]n[^e]*; - _ZTISt[0-9][0-9][o-q]*; + _ZTISt1[07]money*; + _ZTISt1[35]messages*; + _ZTISt15numpunct_bynameI[cw]E; + _ZTISt1[024]o*; _ZTISt11range_error; _ZTISt13runtime_error; - _ZTISt[0-9][0-9][t-z]*; - _ZTISt[0-9][0-9]e[^r]*; - _ZTISt[0-9][0-9]s[^y]*; + _ZTISt12strstreambuf; + _ZTISt15time*; + _ZTISt15underflow_error; _ZTISt11__timepunctI[cw]E; _ZTISt10__num_base; _ZTISt21__ctype_abstract_baseI[cw]E; @@ -869,19 +879,24 @@ GLIBCXX_3.4 { _ZTSSt18basic_stringstreamI*; _ZTSSt19basic_istringstreamI*; _ZTSSt19basic_ostringstreamI*; - _ZTSSt[0-9][0-9][c-d]*; - _ZTSSt[0-9][0-9][g-k]*; + _ZTSSt10ctype_base; + _ZTSSt12codecvt_base; + _ZTSSt12ctype_bynameI[cw]E; + _ZTSSt14co*_bynameI[cw]*; + _ZTSSt12domain_error; + _ZTSSt10istrstream; + _ZTSSt16invalid_argument; _ZTSSt11logic_error; _ZTSSt12length_error; -# _ZTSSt[0-9][0-9][m-q]*; - _ZTSSt[0-9][0-9][m]*; - _ZTSSt[0-9][0-9]n[^e]*; - _ZTSSt[0-9][0-9][o-q]*; + _ZTSSt1[07]money*; + _ZTSSt1[35]messages*; + _ZTSSt15numpunct_bynameI[cw]E; + _ZTSSt1[024]o*; _ZTSSt11range_error; _ZTSSt13runtime_error; - _ZTSSt[0-9][0-9][t-z]*; - _ZTSSt[0-9][0-9]e[^r]*; - _ZTSSt[0-9][0-9]s[^y]*; + _ZTSSt12strstreambuf; + _ZTSSt15time*; + _ZTSSt15underflow_error; _ZTSSt11__timepunctI[cw]E; _ZTSSt10__num_base; @@ -2099,6 +2114,59 @@ GLIBCXX_3.4.26 { _ZNSbIwSt11char_traitsIwESaIwEEC[12]ENS2_12__sv_wrapperERKS1_; _ZNSt7__cxx1112basic_stringI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]ENS4_12__sv_wrapperERKS3_; + # std::filesystem symbols + _ZNKSt10filesystem16filesystem_error4whatEv; + _ZNKSt10filesystem16filesystem_error5path[12]Ev; + _ZNKSt10filesystem4path1[1-9][hlpr]*Ev; + _ZNKSt10filesystem4path17_M_find_extensionEv; + _ZNKSt10filesystem4path1[89]lexically_*ERKS0_; + _ZNKSt10filesystem4path5_List13_Impl_deleterclEPNS1_5_ImplE; + _ZNKSt10filesystem4path5_List3endEv; + _ZNKSt10filesystem4path5_List5beginEv; + _ZNKSt10filesystem4path7compareERKS0_; + _ZNKSt10filesystem4path7compareESt17basic_string_viewIcSt11char_traitsIcEE; + _ZNKSt10filesystem4path9root_*Ev; + _ZNSt10filesystem10hash_valueERKNS_4pathE; + _ZNSt10filesystem16filesystem_errorC[12]E*; + _ZNSt10filesystem16filesystem_errorD[012]Ev; + _ZNSt10filesystem4path14_M_split_cmptsEv; + _ZNSt10filesystem4path14_S_convert_locEPKcS2_RKSt6locale; + _ZNSt10filesystem4path1[567]re*; + _ZNSt10filesystem4path5_ListC1ERKS1_; + _ZNSt10filesystem4path5_ListC1Ev; + _ZNSt10filesystem4path9_M_appendESt17basic_string_viewIcSt11char_traitsIcEE; + _ZNSt10filesystem4path9_M_concatESt17basic_string_viewIcSt11char_traitsIcEE; + _ZNSt10filesystem4pathaSERKS0_; + _ZNSt10filesystem4pathdVERKS0_; + _ZNSt10filesystem4pathpLERKS0_; + _ZT[IV]NSt10filesystem16filesystem_errorE; + + _ZNKSt10filesystem7__cxx1116filesystem_error4whatEv; + _ZNKSt10filesystem7__cxx1116filesystem_error5path[12]Ev; + _ZNKSt10filesystem7__cxx114path1[1-9][hlpr]*Ev; + _ZNKSt10filesystem7__cxx114path17_M_find_extensionEv; + _ZNKSt10filesystem7__cxx114path1[89]lexically_*ERKS1_; + _ZNKSt10filesystem7__cxx114path5_List13_Impl_deleterclEPNS2_5_ImplE; + _ZNKSt10filesystem7__cxx114path5_List3endEv; + _ZNKSt10filesystem7__cxx114path5_List5beginEv; + _ZNKSt10filesystem7__cxx114path7compareERKS1_; + _ZNKSt10filesystem7__cxx114path7compareESt17basic_string_viewIcSt11char_traitsIcEE; + _ZNKSt10filesystem7__cxx114path9root_*Ev; + _ZNSt10filesystem7__cxx1110hash_valueERKNS0_4pathE; + _ZNSt10filesystem7__cxx1116filesystem_errorC[12]E*; + _ZNSt10filesystem7__cxx1116filesystem_errorD[012]Ev; + _ZNSt10filesystem7__cxx114path14_M_split_cmptsEv; + _ZNSt10filesystem7__cxx114path14_S_convert_locEPKcS3_RKSt6locale; + _ZNSt10filesystem7__cxx114path1[567]re*; + _ZNSt10filesystem7__cxx114path5_ListC1ERKS2_; + _ZNSt10filesystem7__cxx114path5_ListC1Ev; + _ZNSt10filesystem7__cxx114path9_M_appendESt17basic_string_viewIcSt11char_traitsIcEE; + _ZNSt10filesystem7__cxx114path9_M_concatESt17basic_string_viewIcSt11char_traitsIcEE; + _ZNSt10filesystem7__cxx114pathaSERKS1_; + _ZNSt10filesystem7__cxx114pathdVERKS1_; + _ZNSt10filesystem7__cxx114pathpLERKS1_; + _ZT[IV]NSt10filesystem7__cxx1116filesystem_errorE; + } GLIBCXX_3.4.25; # Symbols in the support library (libsupc++) have their own tag. diff --git a/libstdc++-v3/src/c++17/Makefile.am b/libstdc++-v3/src/c++17/Makefile.am index afa119eecb6..85883c33f2d 100644 --- a/libstdc++-v3/src/c++17/Makefile.am +++ b/libstdc++-v3/src/c++17/Makefile.am @@ -27,14 +27,12 @@ noinst_LTLIBRARIES = libc++17convenience.la headers = -sources = \ - memory_resource.cc \ - string-inst.cc - if ENABLE_DUAL_ABI extra_string_inst_sources = cow-string-inst.cc +extra_fs_sources = cow-fs_path.cc else extra_string_inst_sources = +extra_fs_sources = endif if ENABLE_EXTERN_TEMPLATE @@ -46,6 +44,12 @@ else inst_sources = endif +sources = \ + fs_path.cc \ + memory_resource.cc \ + string-inst.cc \ + $(extra_fs_sources) + vpath % $(top_srcdir)/src/c++17 libc__17convenience_la_SOURCES = $(sources) $(inst_sources) @@ -59,16 +63,12 @@ AM_CXXFLAGS = \ -std=gnu++17 \ $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \ $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \ - $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) + $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) \ + -fimplicit-templates AM_MAKEFLAGS = \ "gxx_include_dir=$(gxx_include_dir)" -memory_resource.lo: memory_resource.cc - $(LTCXXCOMPILE) -fimplicit-templates -c $< -o $@ -memory_resource.o: memory_resource.cc - $(CXXCOMPILE) -fimplicit-templates -c $< -o $@ - # Libtool notes # 1) In general, libtool expects an argument such as `--tag=CXX' when diff --git a/libstdc++-v3/src/c++17/Makefile.in b/libstdc++-v3/src/c++17/Makefile.in index 0657bdcf9d9..d76580f08aa 100644 --- a/libstdc++-v3/src/c++17/Makefile.in +++ b/libstdc++-v3/src/c++17/Makefile.in @@ -121,10 +121,12 @@ CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = LTLIBRARIES = $(noinst_LTLIBRARIES) libc__17convenience_la_LIBADD = -am__objects_1 = memory_resource.lo string-inst.lo -@ENABLE_DUAL_ABI_TRUE@am__objects_2 = cow-string-inst.lo -@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_3 = $(am__objects_2) -am_libc__17convenience_la_OBJECTS = $(am__objects_1) $(am__objects_3) +@ENABLE_DUAL_ABI_TRUE@am__objects_1 = cow-fs_path.lo +am__objects_2 = fs_path.lo memory_resource.lo string-inst.lo \ + $(am__objects_1) +@ENABLE_DUAL_ABI_TRUE@am__objects_3 = cow-string-inst.lo +@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_4 = $(am__objects_3) +am_libc__17convenience_la_OBJECTS = $(am__objects_2) $(am__objects_4) libc__17convenience_la_OBJECTS = $(am_libc__17convenience_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) @@ -410,12 +412,10 @@ AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPFLAGS) # Convenience library for C++17 runtime. noinst_LTLIBRARIES = libc++17convenience.la headers = -sources = \ - memory_resource.cc \ - string-inst.cc - @ENABLE_DUAL_ABI_FALSE@extra_string_inst_sources = @ENABLE_DUAL_ABI_TRUE@extra_string_inst_sources = cow-string-inst.cc +@ENABLE_DUAL_ABI_FALSE@extra_fs_sources = +@ENABLE_DUAL_ABI_TRUE@extra_fs_sources = cow-fs_path.cc # XTEMPLATE_FLAGS = @ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources = @@ -423,6 +423,12 @@ sources = \ @ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources = \ @ENABLE_EXTERN_TEMPLATE_TRUE@ $(extra_string_inst_sources) +sources = \ + fs_path.cc \ + memory_resource.cc \ + string-inst.cc \ + $(extra_fs_sources) + libc__17convenience_la_SOURCES = $(sources) $(inst_sources) # AM_CXXFLAGS needs to be in each subdirectory so that it can be @@ -434,7 +440,8 @@ AM_CXXFLAGS = \ -std=gnu++17 \ $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \ $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \ - $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) + $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) \ + -fimplicit-templates AM_MAKEFLAGS = \ "gxx_include_dir=$(gxx_include_dir)" @@ -732,11 +739,6 @@ uninstall-am: vpath % $(top_srcdir)/src/c++17 -memory_resource.lo: memory_resource.cc - $(LTCXXCOMPILE) -fimplicit-templates -c $< -o $@ -memory_resource.o: memory_resource.cc - $(CXXCOMPILE) -fimplicit-templates -c $< -o $@ - # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff --git a/libstdc++-v3/src/filesystem/cow-std-path.cc b/libstdc++-v3/src/c++17/cow-fs_path.cc similarity index 97% rename from libstdc++-v3/src/filesystem/cow-std-path.cc rename to libstdc++-v3/src/c++17/cow-fs_path.cc index f0717aef876..53539a6b806 100644 --- a/libstdc++-v3/src/filesystem/cow-std-path.cc +++ b/libstdc++-v3/src/c++17/cow-fs_path.cc @@ -23,4 +23,4 @@ // . #define _GLIBCXX_USE_CXX11_ABI 0 -#include "std-path.cc" +#include "fs_path.cc" diff --git a/libstdc++-v3/src/filesystem/std-path.cc b/libstdc++-v3/src/c++17/fs_path.cc similarity index 100% rename from libstdc++-v3/src/filesystem/std-path.cc rename to libstdc++-v3/src/c++17/fs_path.cc diff --git a/libstdc++-v3/src/filesystem/Makefile.am b/libstdc++-v3/src/filesystem/Makefile.am index 12367c7c02c..6f2a9f63b8a 100644 --- a/libstdc++-v3/src/filesystem/Makefile.am +++ b/libstdc++-v3/src/filesystem/Makefile.am @@ -32,8 +32,7 @@ cxx11_abi_sources = \ cow-ops.cc \ cow-path.cc \ cow-std-dir.cc \ - cow-std-ops.cc \ - cow-std-path.cc + cow-std-ops.cc else cxx11_abi_sources = endif @@ -44,7 +43,6 @@ sources = \ path.cc \ std-dir.cc \ std-ops.cc \ - std-path.cc \ ${cxx11_abi_sources} # vpath % $(top_srcdir)/src/filesystem diff --git a/libstdc++-v3/src/filesystem/Makefile.in b/libstdc++-v3/src/filesystem/Makefile.in index f2345118033..12524ff1cc6 100644 --- a/libstdc++-v3/src/filesystem/Makefile.in +++ b/libstdc++-v3/src/filesystem/Makefile.in @@ -151,9 +151,9 @@ LTLIBRARIES = $(toolexeclib_LTLIBRARIES) libstdc__fs_la_LIBADD = @ENABLE_DUAL_ABI_TRUE@am__objects_1 = cow-dir.lo cow-ops.lo \ @ENABLE_DUAL_ABI_TRUE@ cow-path.lo cow-std-dir.lo \ -@ENABLE_DUAL_ABI_TRUE@ cow-std-ops.lo cow-std-path.lo +@ENABLE_DUAL_ABI_TRUE@ cow-std-ops.lo am__objects_2 = dir.lo ops.lo path.lo std-dir.lo std-ops.lo \ - std-path.lo $(am__objects_1) + $(am__objects_1) am_libstdc__fs_la_OBJECTS = $(am__objects_2) libstdc__fs_la_OBJECTS = $(am_libstdc__fs_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) @@ -444,8 +444,7 @@ headers = @ENABLE_DUAL_ABI_TRUE@ cow-ops.cc \ @ENABLE_DUAL_ABI_TRUE@ cow-path.cc \ @ENABLE_DUAL_ABI_TRUE@ cow-std-dir.cc \ -@ENABLE_DUAL_ABI_TRUE@ cow-std-ops.cc \ -@ENABLE_DUAL_ABI_TRUE@ cow-std-path.cc +@ENABLE_DUAL_ABI_TRUE@ cow-std-ops.cc sources = \ dir.cc \ @@ -453,7 +452,6 @@ sources = \ path.cc \ std-dir.cc \ std-ops.cc \ - std-path.cc \ ${cxx11_abi_sources} diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/append/path.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/append/path.cc index 3375b065181..93c0f15f5ea 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/append/path.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/append/path.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/append/source.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/append/source.cc index a73766ce307..db80087ba6c 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/append/source.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/append/source.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2018-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/assign/assign.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/assign/assign.cc index b93543c41df..13828fe9550 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/assign/assign.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/assign/assign.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/assign/copy.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/assign/copy.cc index e182d1ae21a..6c24e3ae7b9 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/assign/copy.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/assign/copy.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/compare/compare.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/compare/compare.cc index b24527312e0..7ce16f4d190 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/compare/compare.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/compare/compare.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/compare/lwg2936.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/compare/lwg2936.cc index e45f9366c8e..bcb99cc6ddc 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/compare/lwg2936.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/compare/lwg2936.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/compare/path.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/compare/path.cc index b46ff703bcb..4de5a789994 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/compare/path.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/compare/path.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/compare/strings.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/compare/strings.cc index f12b68fb019..3f0aa4bde06 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/compare/strings.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/compare/strings.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/concat/path.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/concat/path.cc index e2a14bd8fcc..9f534e64cb7 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/concat/path.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/concat/path.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/concat/strings.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/concat/strings.cc index 21e2ecdfcaf..80ce25ef119 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/concat/strings.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/concat/strings.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/80762.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/80762.cc index 5bf8298a818..71cdaa9d969 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/80762.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/80762.cc @@ -17,7 +17,6 @@ // { dg-options "-std=gnu++17" } // { dg-do compile { target c++17 } } -// { dg-require-filesystem-ts "" } #include diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/copy.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/copy.cc index 5bab635eb1a..b29ab34332e 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/copy.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/copy.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/default.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/default.cc index 2280e7de64a..1e49c681a34 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/default.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/default.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/format.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/format.cc index b97305b2aa6..f80d9860496 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/format.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/format.cc @@ -15,9 +15,8 @@ // with this library; see the file COPYING3. If not see // . -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } #include #include diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/locale.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/locale.cc index 12b437c37b0..bfb8aa136ea 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/locale.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/locale.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/range.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/range.cc index 6b447980129..f7a40364b8a 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/range.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/range.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/string_view.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/string_view.cc index 42340e6eb75..343928edde6 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/construct/string_view.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/construct/string_view.cc @@ -1,6 +1,5 @@ -// { dg-options "-lstdc++fs -std=gnu++17" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2016-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/extension.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/extension.cc index d3f8d7e3c54..a4d48c96eda 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/extension.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/extension.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/filename.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/filename.cc index 51c4773a8db..1bda26f088a 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/filename.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/filename.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/parent_path.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/parent_path.cc index 33f645fd649..a49419f19dc 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/parent_path.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/parent_path.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/relative_path.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/relative_path.cc index 58a5c915e52..b1e9b1d7a9f 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/relative_path.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/relative_path.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_directory.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_directory.cc index f799faede21..f171425f8a6 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_directory.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_directory.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_name.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_name.cc index ce0d1335ca9..eb8e416eddb 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_name.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_name.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_path.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_path.cc index 917f1a3842c..4f4c531819f 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_path.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/root_path.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/stem.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/stem.cc index 705fff89b8b..3320e7aca3e 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/stem.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/decompose/stem.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/generation/normal.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/generation/normal.cc index 844168352c8..c93a1245b70 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/generation/normal.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/generation/normal.cc @@ -15,9 +15,8 @@ // with this library; see the file COPYING3. If not see // . -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } #include #include diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/generation/normal2.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/generation/normal2.cc index f78f5dd8a9f..8c5bb954e81 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/generation/normal2.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/generation/normal2.cc @@ -15,9 +15,8 @@ // with this library; see the file COPYING3. If not see // . -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } #undef _GLIBCXX_USE_CXX11_ABI #define _GLIBCXX_USE_CXX11_ABI 0 diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/generation/proximate.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/generation/proximate.cc index 01b548bf5ef..1d666791001 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/generation/proximate.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/generation/proximate.cc @@ -15,9 +15,8 @@ // with this library; see the file COPYING3. If not see // . -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } #include #include diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/generation/relative.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/generation/relative.cc index 0bf8d34dbe0..dde08d46f2c 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/generation/relative.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/generation/relative.cc @@ -15,9 +15,8 @@ // with this library; see the file COPYING3. If not see // . -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } #include #include diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/generic/generic_string.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/generic/generic_string.cc index 60e53fec2aa..5a0c24c25c3 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/generic/generic_string.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/generic/generic_string.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2017-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/itr/components.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/itr/components.cc index 70eba60b34e..51583dd55b5 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/itr/components.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/itr/components.cc @@ -15,9 +15,8 @@ // with this library; see the file COPYING3. If not see // . -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } #include #include diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/itr/traversal.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/itr/traversal.cc index 16147ca8c28..8513021e729 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/itr/traversal.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/itr/traversal.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/clear.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/clear.cc index 65c2c4c049b..3fa89938d7d 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/clear.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/clear.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/make_preferred.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/make_preferred.cc index 2c514b4caff..e49c08e8032 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/make_preferred.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/make_preferred.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/remove_filename.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/remove_filename.cc index 53423155a75..3b2ef062b6f 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/remove_filename.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/remove_filename.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/replace_extension.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/replace_extension.cc index b0f6ff70eab..df4b77aa116 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/replace_extension.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/replace_extension.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/replace_filename.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/replace_filename.cc index 52e438096b8..6503454e303 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/replace_filename.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/replace_filename.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/swap.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/swap.cc index 34ae9262a8b..7414b8078b4 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/swap.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/modifiers/swap.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/native/string.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/native/string.cc index 853eb70d0d2..5417ab4c011 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/native/string.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/native/string.cc @@ -15,9 +15,8 @@ // with this library; see the file COPYING3. If not see // . -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } #include #include diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/nonmember/append.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/nonmember/append.cc index 8c16f60bdad..d4e1d6fb5f6 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/nonmember/append.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/nonmember/append.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2018-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/nonmember/hash_value.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/nonmember/hash_value.cc index f8614d85656..13a0767a9eb 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/nonmember/hash_value.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/nonmember/hash_value.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/query/empty.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/query/empty.cc index f176ef61848..7d0dc9bf8cc 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/query/empty.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/query/empty.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_extension.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_extension.cc index a18fee6808f..870d585a173 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_extension.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_extension.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_filename.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_filename.cc index d58cc2760fd..7e6981130ea 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_filename.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_filename.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_parent_path.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_parent_path.cc index 2d0b52ac315..17bbaba6310 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_parent_path.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_parent_path.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_relative_path.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_relative_path.cc index 3af632badf1..42b1758d18a 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_relative_path.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_relative_path.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_directory.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_directory.cc index 4df0054f518..d7f09b3f4b3 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_directory.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_directory.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_name.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_name.cc index bda2c1c938a..15ab315bc93 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_name.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_name.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_path.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_path.cc index f5daabc9d2a..a5742ca4d77 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_path.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_root_path.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_stem.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_stem.cc index e3366763e9b..09714994185 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_stem.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/query/has_stem.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/query/is_absolute.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/query/is_absolute.cc index a48d3206eeb..ac97eee5115 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/query/is_absolute.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/query/is_absolute.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2018-2019 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/27_io/filesystem/path/query/is_relative.cc b/libstdc++-v3/testsuite/27_io/filesystem/path/query/is_relative.cc index 3f7317286e1..61bbd57edec 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/path/query/is_relative.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/path/query/is_relative.cc @@ -1,6 +1,5 @@ -// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-options "-std=gnu++17" } // { dg-do run { target c++17 } } -// { dg-require-filesystem-ts "" } // Copyright (C) 2014-2019 Free Software Foundation, Inc. // -- 2.30.2