diff options
author | mikhnenko <mikhnenko@yandex-team.com> | 2023-09-22 23:06:24 +0300 |
---|---|---|
committer | mikhnenko <mikhnenko@yandex-team.com> | 2023-09-22 23:25:13 +0300 |
commit | b8b31d1d500378c44c7e2d817c2b1b4f86524320 (patch) | |
tree | 6a482e8061d7b747a149dc6c8944b383d545846d | |
parent | 472fb95eccedb6f33c8a1b40919a0b9930178177 (diff) | |
download | ydb-b8b31d1d500378c44c7e2d817c2b1b4f86524320.tar.gz |
Udp libc++ for 2 days with fake-id changes
-rw-r--r-- | build/sysincl/stl-to-libcxx.yml | 3 | ||||
-rw-r--r-- | build/sysincl/stl-to-libcxxmsvc.yml | 1 | ||||
-rw-r--r-- | build/ymake.core.conf | 2 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/libcxx/include/__algorithm/in_found_result.h | 49 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/libcxx/include/__algorithm/min_max_result.h | 56 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/libcxx/include/algorithm | 14 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/libcxx/include/limits | 12 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/libcxx/ya.make | 4 |
8 files changed, 135 insertions, 6 deletions
diff --git a/build/sysincl/stl-to-libcxx.yml b/build/sysincl/stl-to-libcxx.yml index c61443cfd8..6bd41c8747 100644 --- a/build/sysincl/stl-to-libcxx.yml +++ b/build/sysincl/stl-to-libcxx.yml @@ -207,6 +207,7 @@ - __algorithm/generate.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/generate.h - __algorithm/generate_n.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/generate_n.h - __algorithm/half_positive.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/half_positive.h + - __algorithm/in_found_result.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/in_found_result.h - __algorithm/in_fun_result.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/in_fun_result.h - __algorithm/in_in_out_result.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/in_in_out_result.h - __algorithm/in_in_result.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/in_in_result.h @@ -229,6 +230,7 @@ - __algorithm/merge.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/merge.h - __algorithm/min.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/min.h - __algorithm/min_element.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/min_element.h + - __algorithm/min_max_result.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/min_max_result.h - __algorithm/minmax.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/minmax.h - __algorithm/minmax_element.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/minmax_element.h - __algorithm/mismatch.h: contrib/libs/cxxsupp/libcxx/include/__algorithm/mismatch.h @@ -325,6 +327,7 @@ - __concepts/semiregular.h: contrib/libs/cxxsupp/libcxx/include/__concepts/semiregular.h - __concepts/swappable.h: contrib/libs/cxxsupp/libcxx/include/__concepts/swappable.h - __concepts/totally_ordered.h: contrib/libs/cxxsupp/libcxx/include/__concepts/totally_ordered.h + - __filesystem/file_time_type.h: contrib/libs/cxxsupp/libcxx/include/__filesystem/file_time_type.h - __functional/binary_function.h: contrib/libs/cxxsupp/libcxx/include/__functional/binary_function.h - __functional/binary_negate.h: contrib/libs/cxxsupp/libcxx/include/__functional/binary_negate.h - __functional/bind.h: contrib/libs/cxxsupp/libcxx/include/__functional/bind.h diff --git a/build/sysincl/stl-to-libcxxmsvc.yml b/build/sysincl/stl-to-libcxxmsvc.yml index e622eb6f44..715c59ddef 100644 --- a/build/sysincl/stl-to-libcxxmsvc.yml +++ b/build/sysincl/stl-to-libcxxmsvc.yml @@ -301,6 +301,7 @@ - __concepts/semiregular.h: contrib/libs/cxxsupp/libcxxmsvc/include/__concepts/semiregular.h - __concepts/swappable.h: contrib/libs/cxxsupp/libcxxmsvc/include/__concepts/swappable.h - __concepts/totally_ordered.h: contrib/libs/cxxsupp/libcxxmsvc/include/__concepts/totally_ordered.h + - __filesystem/file_time_type.h: contrib/libs/cxxsupp/libcxxmsvc/include/__filesystem/file_time_type.h - __functional/binary_function.h: contrib/libs/cxxsupp/libcxxmsvc/include/__functional/binary_function.h - __functional/binary_negate.h: contrib/libs/cxxsupp/libcxxmsvc/include/__functional/binary_negate.h - __functional/bind.h: contrib/libs/cxxsupp/libcxxmsvc/include/__functional/bind.h diff --git a/build/ymake.core.conf b/build/ymake.core.conf index 00110eb982..1492e773a5 100644 --- a/build/ymake.core.conf +++ b/build/ymake.core.conf @@ -9,7 +9,7 @@ FAKEID=628318530716 SANDBOX_FAKEID=${FAKEID}.7600000 -CPP_FAKEID=2023-09-19 +CPP_FAKEID=2023-09-22 GO_FAKEID=11100371 ANDROID_FAKEID=2023-05-17 CLANG_TIDY_FAKEID=2023-06-06 diff --git a/contrib/libs/cxxsupp/libcxx/include/__algorithm/in_found_result.h b/contrib/libs/cxxsupp/libcxx/include/__algorithm/in_found_result.h new file mode 100644 index 0000000000..08ebf2fbcc --- /dev/null +++ b/contrib/libs/cxxsupp/libcxx/include/__algorithm/in_found_result.h @@ -0,0 +1,49 @@ +// -*- C++ -*- +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#ifndef _LIBCPP___ALGORITHM_IN_FOUND_RESULT_H +#define _LIBCPP___ALGORITHM_IN_FOUND_RESULT_H + +#include <__concepts/convertible_to.h> +#include <__config> +#include <__utility/move.h> + +#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) +# pragma GCC system_header +#endif + +#if !defined(_LIBCPP_HAS_NO_CONCEPTS) && !defined(_LIBCPP_HAS_NO_INCOMPLETE_RANGES) + +_LIBCPP_BEGIN_NAMESPACE_STD + +namespace ranges { +template <class _I1> +struct in_found_result { + _LIBCPP_NO_UNIQUE_ADDRESS _I1 in; + bool found; + + template <class _I2> + requires convertible_to<const _I1&, _I2> + _LIBCPP_HIDE_FROM_ABI constexpr operator in_found_result<_I2>() const & { + return {in, found}; + } + + template <class _I2> + requires convertible_to<_I1, _I2> + _LIBCPP_HIDE_FROM_ABI constexpr operator in_found_result<_I2>() && { + return {std::move(in), found}; + } +}; +} // namespace ranges + +_LIBCPP_END_NAMESPACE_STD + +#endif // _LIBCPP_HAS_NO_CONCEPTS + +#endif // _LIBCPP___ALGORITHM_IN_FOUND_RESULT_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__algorithm/min_max_result.h b/contrib/libs/cxxsupp/libcxx/include/__algorithm/min_max_result.h new file mode 100644 index 0000000000..1d56a741f5 --- /dev/null +++ b/contrib/libs/cxxsupp/libcxx/include/__algorithm/min_max_result.h @@ -0,0 +1,56 @@ +// -*- C++ -*- +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#ifndef _LIBCPP___ALGORITHM_MIN_MAX_RESULT_H +#define _LIBCPP___ALGORITHM_MIN_MAX_RESULT_H + +#include <__concepts/convertible_to.h> +#include <__config> +#include <__utility/move.h> + +#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) +# pragma GCC system_header +#endif + +_LIBCPP_PUSH_MACROS +#include <__undef_macros> + +_LIBCPP_BEGIN_NAMESPACE_STD + +#if!defined(_LIBCPP_HAS_NO_CONCEPTS) && !defined(_LIBCPP_HAS_NO_INCOMPLETE_RANGES) + +namespace ranges { + +template <class _T1> +struct min_max_result { + _LIBCPP_NO_UNIQUE_ADDRESS _T1 min; + _LIBCPP_NO_UNIQUE_ADDRESS _T1 max; + + template <class _T2> + requires convertible_to<const _T1&, _T2> + _LIBCPP_HIDE_FROM_ABI constexpr operator min_max_result<_T2>() const & { + return {min, max}; + } + + template <class _T2> + requires convertible_to<_T1, _T2> + _LIBCPP_HIDE_FROM_ABI constexpr operator min_max_result<_T2>() && { + return {std::move(min), std::move(max)}; + } +}; + +} // namespace ranges + +#endif + +_LIBCPP_END_NAMESPACE_STD + +_LIBCPP_POP_MACROS + +#endif diff --git a/contrib/libs/cxxsupp/libcxx/include/algorithm b/contrib/libs/cxxsupp/libcxx/include/algorithm index e4aba31567..cc37d71b24 100644 --- a/contrib/libs/cxxsupp/libcxx/include/algorithm +++ b/contrib/libs/cxxsupp/libcxx/include/algorithm @@ -20,17 +20,23 @@ namespace std namespace ranges { template <class I, class F> - struct in_fun_result; // since C++20 + struct in_fun_result; // since C++20 template <class I1, class I2> - struct in_in_result; // since C++20 + struct in_in_result; // since C++20 template <class I1, class I2, class O> - struct in_in_out_result; // since C++20 + struct in_in_out_result; // since C++20 template <class I, class O1, class O2> struct in_out_out_result; // since C++20 + template <class I1, class I2> + struct min_max_result; // since C++20 + + template <class I> + struct in_found_result; // since C++20 + template<forward_iterator I, sentinel_for<I> S, class Proj = identity, indirect_strict_weak_order<projected<I, Proj>> Comp = ranges::less> // since C++20 constexpr I min_element(I first, S last, Comp comp = {}, Proj proj = {}); @@ -716,6 +722,7 @@ template <class BidirectionalIterator, class Compare> #include <__algorithm/generate.h> #include <__algorithm/generate_n.h> #include <__algorithm/half_positive.h> +#include <__algorithm/in_found_result.h> #include <__algorithm/in_fun_result.h> #include <__algorithm/in_in_out_result.h> #include <__algorithm/in_in_result.h> @@ -738,6 +745,7 @@ template <class BidirectionalIterator, class Compare> #include <__algorithm/merge.h> #include <__algorithm/min.h> #include <__algorithm/min_element.h> +#include <__algorithm/min_max_result.h> #include <__algorithm/minmax.h> #include <__algorithm/minmax_element.h> #include <__algorithm/mismatch.h> diff --git a/contrib/libs/cxxsupp/libcxx/include/limits b/contrib/libs/cxxsupp/libcxx/include/limits index bf5d6d1fc4..5afef4bd7e 100644 --- a/contrib/libs/cxxsupp/libcxx/include/limits +++ b/contrib/libs/cxxsupp/libcxx/include/limits @@ -339,7 +339,11 @@ protected: static _LIBCPP_CONSTEXPR const bool is_modulo = false; static _LIBCPP_CONSTEXPR const bool traps = false; +#if (defined(__arm__) || defined(__aarch64__)) + static _LIBCPP_CONSTEXPR const bool tinyness_before = true; +#else static _LIBCPP_CONSTEXPR const bool tinyness_before = false; +#endif static _LIBCPP_CONSTEXPR const float_round_style round_style = round_to_nearest; }; @@ -385,7 +389,11 @@ protected: static _LIBCPP_CONSTEXPR const bool is_modulo = false; static _LIBCPP_CONSTEXPR const bool traps = false; +#if (defined(__arm__) || defined(__aarch64__)) + static _LIBCPP_CONSTEXPR const bool tinyness_before = true; +#else static _LIBCPP_CONSTEXPR const bool tinyness_before = false; +#endif static _LIBCPP_CONSTEXPR const float_round_style round_style = round_to_nearest; }; @@ -435,7 +443,11 @@ protected: static _LIBCPP_CONSTEXPR const bool is_modulo = false; static _LIBCPP_CONSTEXPR const bool traps = false; +#if (defined(__arm__) || defined(__aarch64__)) + static _LIBCPP_CONSTEXPR const bool tinyness_before = true; +#else static _LIBCPP_CONSTEXPR const bool tinyness_before = false; +#endif static _LIBCPP_CONSTEXPR const float_round_style round_style = round_to_nearest; }; diff --git a/contrib/libs/cxxsupp/libcxx/ya.make b/contrib/libs/cxxsupp/libcxx/ya.make index 94d4a0e438..3c01766feb 100644 --- a/contrib/libs/cxxsupp/libcxx/ya.make +++ b/contrib/libs/cxxsupp/libcxx/ya.make @@ -11,9 +11,9 @@ LICENSE( LICENSE_TEXTS(.yandex_meta/licenses.list.txt) -VERSION(2022-02-18) +VERSION(2022-02-20) -ORIGINAL_SOURCE(https://github.com/llvm/llvm-project/archive/34313583331e5c8cb0d3df28efb6c34c428fd235.tar.gz) +ORIGINAL_SOURCE(https://github.com/llvm/llvm-project/archive/eb4c8608115c1c9af0fc8cb5b1e9f2bc960014ef.tar.gz) ADDINCL( GLOBAL contrib/libs/cxxsupp/libcxx/include |