diff options
author | Andrey Khalyavin <halyavin@gmail.com> | 2022-07-05 23:56:28 +0300 |
---|---|---|
committer | Andrey Khalyavin <halyavin@gmail.com> | 2022-07-05 23:56:28 +0300 |
commit | 41223d67bc008890be4c26f2860a749faad77d15 (patch) | |
tree | a31baff5f563db0e7f6bc0699f1a3f8b6e461311 /contrib/libs/cxxsupp/libcxx/src/filesystem | |
parent | 7cca6053f9af9db0dce2fc1c9bf1bad0910cdceb (diff) | |
download | ydb-41223d67bc008890be4c26f2860a749faad77d15.tar.gz |
Update libc++ to a7c2a628 (15 Feb 2022).
Notable changes:
* macros for disabling and enabling compile warnings
* replace _VSTD with std in __ranges
* add stdatomic.h
* implement unreachable()
* implement ranges::rbegin, rend, crbegin and crend
* remove experimental/filesystem header
ref:3104f711bf2401dd8b882290fa4fa01f71924406
Diffstat (limited to 'contrib/libs/cxxsupp/libcxx/src/filesystem')
-rw-r--r-- | contrib/libs/cxxsupp/libcxx/src/filesystem/filesystem_common.h | 6 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/libcxx/src/filesystem/operations.cpp | 17 |
2 files changed, 12 insertions, 11 deletions
diff --git a/contrib/libs/cxxsupp/libcxx/src/filesystem/filesystem_common.h b/contrib/libs/cxxsupp/libcxx/src/filesystem/filesystem_common.h index b693476518..4e117c3f19 100644 --- a/contrib/libs/cxxsupp/libcxx/src/filesystem/filesystem_common.h +++ b/contrib/libs/cxxsupp/libcxx/src/filesystem/filesystem_common.h @@ -14,11 +14,11 @@ #include "chrono" #include "climits" #include "cstdarg" -#include "cstdlib" #include "ctime" #include "filesystem" #include "ratio" #include "system_error" +#include <utility> #if defined(_LIBCPP_WIN32API) # define WIN32_LEAN_AND_MEAN @@ -188,7 +188,7 @@ struct ErrorHandler { case 2: __throw_filesystem_error(what, *p1_, *p2_, ec); } - _LIBCPP_UNREACHABLE(); + __libcpp_unreachable(); } _LIBCPP_ATTRIBUTE_FORMAT(__printf__, 3, 0) @@ -207,7 +207,7 @@ struct ErrorHandler { case 2: __throw_filesystem_error(what, *p1_, *p2_, ec); } - _LIBCPP_UNREACHABLE(); + __libcpp_unreachable(); } _LIBCPP_ATTRIBUTE_FORMAT(__printf__, 3, 4) diff --git a/contrib/libs/cxxsupp/libcxx/src/filesystem/operations.cpp b/contrib/libs/cxxsupp/libcxx/src/filesystem/operations.cpp index 8e1a8ef1ab..39777a316a 100644 --- a/contrib/libs/cxxsupp/libcxx/src/filesystem/operations.cpp +++ b/contrib/libs/cxxsupp/libcxx/src/filesystem/operations.cpp @@ -6,6 +6,7 @@ // //===----------------------------------------------------------------------===// +#include <__utility/unreachable.h> #include "filesystem" #include "array" #include "iterator" @@ -154,7 +155,7 @@ public: return makeState(PS_AtEnd); case PS_AtEnd: - _LIBCPP_UNREACHABLE(); + __libcpp_unreachable(); } } @@ -202,7 +203,7 @@ public: return makeState(PS_InRootName, Path.data(), RStart + 1); case PS_InRootName: case PS_BeforeBegin: - _LIBCPP_UNREACHABLE(); + __libcpp_unreachable(); } } @@ -224,7 +225,7 @@ public: case PS_InFilenames: return RawEntry; } - _LIBCPP_UNREACHABLE(); + __libcpp_unreachable(); } explicit operator bool() const noexcept { @@ -285,7 +286,7 @@ private: case PS_AtEnd: return getAfterBack(); } - _LIBCPP_UNREACHABLE(); + __libcpp_unreachable(); } /// \brief Return a pointer to the first character in the currently lexed @@ -302,7 +303,7 @@ private: case PS_AtEnd: return &Path.back() + 1; } - _LIBCPP_UNREACHABLE(); + __libcpp_unreachable(); } // Consume all consecutive separators. @@ -685,7 +686,7 @@ void filesystem_error::__create_what(int __num_paths) { return detail::format_string("filesystem error: %s [" PATH_CSTR_FMT "] [" PATH_CSTR_FMT "]", derived_what, path1().c_str(), path2().c_str()); } - _LIBCPP_UNREACHABLE(); + __libcpp_unreachable(); }(); } @@ -1192,7 +1193,7 @@ bool __fs_is_empty(const path& p, error_code* ec) { } else if (is_regular_file(st)) return static_cast<uintmax_t>(pst.st_size) == 0; - _LIBCPP_UNREACHABLE(); + __libcpp_unreachable(); } static file_time_type __extract_last_write_time(const path& p, const StatT& st, @@ -1805,7 +1806,7 @@ path path::lexically_normal() const { break; } case PK_None: - _LIBCPP_UNREACHABLE(); + __libcpp_unreachable(); } } // [fs.path.generic]p6.8: If the path is empty, add a dot. |