diff options
author | DongHun Kwak <dh0128.kwak@samsung.com> | 2019-12-05 15:24:45 +0900 |
---|---|---|
committer | DongHun Kwak <dh0128.kwak@samsung.com> | 2019-12-05 15:24:45 +0900 |
commit | 5ce1cfc2525b06c0a9e38531813781de0281c96d (patch) | |
tree | 19cc66c6cf6396db288813b2558cc350f1deede2 /boost/filesystem/path.hpp | |
parent | 3c1df2168531ad5580076ae08d529054689aeedd (diff) | |
download | boost-5ce1cfc2525b06c0a9e38531813781de0281c96d.tar.gz boost-5ce1cfc2525b06c0a9e38531813781de0281c96d.tar.bz2 boost-5ce1cfc2525b06c0a9e38531813781de0281c96d.zip |
Imported Upstream version 1.71.0upstream/1.71.0
Diffstat (limited to 'boost/filesystem/path.hpp')
-rw-r--r-- | boost/filesystem/path.hpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/boost/filesystem/path.hpp b/boost/filesystem/path.hpp index d0cf9a11ca..ad036f19a2 100644 --- a/boost/filesystem/path.hpp +++ b/boost/filesystem/path.hpp @@ -536,7 +536,8 @@ namespace path_detail // intentionally don't use filesystem::detail to not bring bool is_relative() const { return !is_absolute(); } bool is_absolute() const { -# ifdef BOOST_WINDOWS_API + // Windows CE has no root name (aka drive letters) +# if defined(BOOST_WINDOWS_API) && !defined(UNDER_CE) return has_root_name() && has_root_directory(); # else return has_root_directory(); @@ -783,7 +784,7 @@ namespace path_detail // intentionally don't use filesystem::detail to not bring inline bool operator> (const path& lhs, const path& rhs) {return rhs < lhs;} inline bool operator>=(const path& lhs, const path& rhs) {return !(lhs < rhs);} - inline std::size_t hash_value(const path& x) + inline std::size_t hash_value(const path& x) BOOST_NOEXCEPT { # ifdef BOOST_WINDOWS_API std::size_t seed = 0; @@ -797,9 +798,18 @@ namespace path_detail // intentionally don't use filesystem::detail to not bring inline void swap(path& lhs, path& rhs) BOOST_NOEXCEPT { lhs.swap(rhs); } - inline path operator/(const path& lhs, const path& rhs) { return path(lhs) /= rhs; } + inline path operator/(const path& lhs, const path& rhs) + { + path p = lhs; + p /= rhs; + return p; + } # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) - inline path&& operator/(path&& lhs, const path& rhs) { lhs /= rhs; return std::move(lhs); } + inline path operator/(path&& lhs, const path& rhs) + { + lhs /= rhs; + return std::move(lhs); + } # endif // inserters and extractors |