aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/cxxsupp/libcxx/include/string_view
diff options
context:
space:
mode:
authorAndrey Khalyavin <halyavin@gmail.com>2022-06-02 00:33:58 +0300
committerAndrey Khalyavin <halyavin@gmail.com>2022-06-02 00:33:58 +0300
commite673b301b03ea16c0bdc9537de9501f1c9b4cf28 (patch)
tree27631393b7e7889db9ac6fcbd8e6b61b0f5a1ba0 /contrib/libs/cxxsupp/libcxx/include/string_view
parent5424a48cca3b5a79e8431052b74fafb9768e669e (diff)
downloadydb-e673b301b03ea16c0bdc9537de9501f1c9b4cf28.tar.gz
Update libc++ to eaadc451 (4 Feb 2022).
Notable changes: * fix chrono::duration constructor constraint * delete base class for std::basic_string * add ranges::in_out_out_result and ranges::in_in_out_result * implement indirectly_copyable{,_storable} concepts * rename __referenceable to __can_reference to match text of the standard * add _LIBCPP_HAS_NO_CONCEPTS guards where concepts are used * simplify no concepts guards * add specifications for basic_common_reference and common_type for pair * make _VSTD an alias for std so that it can be removed in the future * remove std from friend declaration to facilitate switch from _VSTD to std * fix TOCTOU issue with std::filesystem::remove_all * add additional constraints to std::ranges::get for subranges when N == 0 * pick unique bit for __regex_word constant * use vsnprintf instead of _vsnprintf on Windows * ADL-proof ranges::iter_swap and ranges::iter_move * implement std::ranges::distance * merge _LIBCPP_HAS_NO_RANGES into _LIBCPP_HAS_NO_CONCEPTS ref:b637aa39f39243eeac99a2109af1daaac7c29316
Diffstat (limited to 'contrib/libs/cxxsupp/libcxx/include/string_view')
-rw-r--r--contrib/libs/cxxsupp/libcxx/include/string_view12
1 files changed, 6 insertions, 6 deletions
diff --git a/contrib/libs/cxxsupp/libcxx/include/string_view b/contrib/libs/cxxsupp/libcxx/include/string_view
index c4bc2c03a1..a3c4ac7a81 100644
--- a/contrib/libs/cxxsupp/libcxx/include/string_view
+++ b/contrib/libs/cxxsupp/libcxx/include/string_view
@@ -294,7 +294,7 @@ public:
#endif
}
-#if _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_HAS_NO_RANGES)
+#if !defined(_LIBCPP_HAS_NO_CONCEPTS)
template <contiguous_iterator _It, sized_sentinel_for<_It> _End>
requires (is_same_v<iter_value_t<_It>, _CharT> && !is_convertible_v<_End, size_type>)
constexpr _LIBCPP_HIDE_FROM_ABI basic_string_view(_It __begin, _End __end)
@@ -304,7 +304,7 @@ public:
}
#endif
-#if _LIBCPP_STD_VER > 20 && !defined(_LIBCPP_HAS_NO_RANGES)
+#if _LIBCPP_STD_VER > 20 && !defined(_LIBCPP_HAS_NO_CONCEPTS)
template <class _Range>
requires (
!is_same_v<remove_cvref_t<_Range>, basic_string_view> &&
@@ -719,23 +719,23 @@ private:
size_type __size;
};
-#if _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_HAS_NO_RANGES)
+#if !defined(_LIBCPP_HAS_NO_CONCEPTS)
template <class _CharT, class _Traits>
inline constexpr bool ranges::enable_view<basic_string_view<_CharT, _Traits>> = true;
template <class _CharT, class _Traits>
inline constexpr bool ranges::enable_borrowed_range<basic_string_view<_CharT, _Traits> > = true;
-#endif // _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_HAS_NO_RANGES)
+#endif // !defined(_LIBCPP_HAS_NO_CONCEPTS)
// [string.view.deduct]
-#if _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_HAS_NO_RANGES)
+#if !defined(_LIBCPP_HAS_NO_CONCEPTS)
template <contiguous_iterator _It, sized_sentinel_for<_It> _End>
basic_string_view(_It, _End) -> basic_string_view<iter_value_t<_It>>;
#endif
-#if _LIBCPP_STD_VER > 20 && !defined(_LIBCPP_HAS_NO_RANGES)
+#if _LIBCPP_STD_VER > 20 && !defined(_LIBCPP_HAS_NO_CONCEPTS)
template <ranges::contiguous_range _Range>
basic_string_view(_Range) -> basic_string_view<ranges::range_value_t<_Range>>;
#endif