summaryrefslogtreecommitdiffstats
path: root/contrib/libs/cxxsupp/libcxx/src
Commit message (Collapse)AuthorAgeFilesLines
* publishFullContrib: true for ydbmaxim-yurchuk2024-10-097-0/+566
| | | | | <HIDDEN_URL> commit_hash:c82a80ac4594723cebf2c7387dec9c60217f603e
* Turn on new sort implnechda2024-07-071-53/+0
| | | | | | | | Этот PR переключает std::sort на новую реализацию из libcxx 1. Если у вас начали падать тесты, которые можно переканонить, то проведите реканонизацию. 2. Если тест невозможно переканонизировть, то попытайтесь найти связанную задачу на починку тестов в тикете https://st.yandex-team.ru/ 3. Если связанного тикета на починку нет пишите в [DEVTOOLSSUPPORT](https://st.yandex-team.ru/DEVTOOLSSUPPORT) 28675795fac4ceab2315c30ad9251d1bfc187c71
* Add caching file attributes for directory_iterator.sath2024-05-252-10/+15
| | | | | Will be upstreamed in/ https://github.com/llvm/llvm-project/pull/93316 c8062150c5a7da5f056ef6edbaf5dd8c76020903
* Update libcxx to 10 Oct 2023 dc129d6f715cf83a2072fc8de8b4e4c70bca6935mikhnenko2024-03-2723-511/+663
| | | | 97ce40d276e44357a49b7a945af841896126dca8
* Update libcxx to llvmorg-17.0.6hiddenpath2024-02-2160-2603/+2731
| | | | | Update libcxx to llvmorg-17.0.6 c871ef572c71b4fef22d4a9e65bcebc57e625aea
* Update libcxx to 02 June 2023 185b81e034ba60081023b6e59504dfffb560f3e3 ↵mikhnenko2024-01-263-9/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (llvmorg-16.0.5) :warning: Для всех проектов и мимо проходящим коллегам :warning: Если по каким-то причинам ваши тесты подломались, пожалуйста, переканонизируйте их сами. По статистике там просто поменялся порядок в канонизации. Если изменения действительно серьезные -- приходите в [DEVTOOLSSUPPORT](https://st.yandex-team.ru/createTicket?queue=DEVTOOLSSUPPORT) / пишите в телеграм / призывайте в тикеты, будем разбираться. ``` Changes: [libc++] Don't try to provide source_location on AppleClang 1403 [release/16.x][libc++] Revert the bitset sort optimization [libc++] Avoid ODR violations in __exception_guard [libc++][ranges] Fix incorrect integer typedef in `elements_view` test. [libc++][format] Fix a missing include in tests. [libc++][format] Fixes invalid usage of m type. [libc++][format] Fix floating point formatting. [libc++] Fix ranges::binary_search() returning true for cases where the element is not in the range [libc++] Temporarily not use compiler intrinsics for some type traits in Objective-C++ mode. [libc++][ranges] move all range iterators back in class [libcxx][ranges] revert join_view::iterator and sentinel to be in-class [libc++] Add FTM for views::as_rvalue [libc++] Fix bug in allocate_shared_for_overwrite [libc++] fix `shared_ptr`'s incorrect constraints [libc++] In tests, use `abort` to terminate upon an error. [libc++] Guard the fix to CityHash behind ABI v2 [libc++][format] Fixes constexpr validation. [libc++] Remove use of internal glibc macros to determine if c8rtomb() and mbrtoc8() are present. [libc++] Fixes the Clang modular build. [libc++][ranges] Temporarily mark `ranges::join_view` as experimental. libcxx: Don't apply ABI tags to extern "C" fns [libc++] Introduce a compile-time mechanism to override __libcpp_verbose_abort [libc++][format] Fixes usage of contiguous ranges. [libc++][doc] Updates format status. [libc++][ranges] implement `std::ranges::split_view` [libc++] implement P1020R1 P1973R1 make_unique[shared]_for_overwrite [libc++] Improve binary size when using __transaction [libc++] Rename take_while_view::__sentinel to __take_while_view_sentinel [libc++] Granularize <type_traits> includes in <bit>, <numbers> and <coroutine> [libc++] Implement P1413R3 (Deprecate std::aligned_storage and std::aligned_union) [libc++] Add FreeBSD XFAILs in preparation for CI [libc++] add FreeBSD atomic wait support [libc++][format] range-default-formatter for set. [libc++] Move iota_view::iterator and sentinel out of iota_view [libc++] Enable clang-tidy from the buildkite pipeline instead of hard-coding it in run-buildbot [libc++] Enable segmented iterator optimizations for join_view::iterator [libc++] Mark LWG3349 as complete [libc++] Remove old CI configurations and update the supported compiler versions [libc++] Implement P2446R2 (views::as_rvalue) [libc++][format] range-default-formatter for map [libc++][format] Adds formatter std::vector<bool>. [libc++][format] Adds container adaptor formatters. [libc++][format] Implements range_formatter [libc++][format] Adds new test macros. [libc++][ranges] Remove a leftover include version control markers in Cxx20Papers.csv [libc++][ranges] Mark completed Ranges papers and issues as done, bump version macro [libc++] Add ALLOW_RETRIES to a few flaky tests [SystemZ][z/OS] Fix cityhash lit for EBCDIC [libc++] Mark std::pmr virtual functions as _LIBCPP_HIDE_FROM_ABI_VIRTUAL [libc++] Remove <type_traits> includes from <atomic> and <ratio> [libcxx] Add missing includes [libc++] allow redefined macro in non_trivial_copy_move_ABI test [libc++][ranges] implement `std::views::elements_view` [libc++] Add [[clang::lifetimebound]] attribute to std::forward and friends Reapply "[libc++][ranges]Refactor `copy{,_backward}` and `move{,_backward}`" [libc++] Add clang-tidy to the list of possible substitutions for %{clang-tidy} [libc++] Add missing includes in move_iterator.h [libc++] Make pmr::monotonic_buffer_resource bump down [libc++] Add [[nodiscard]] extensions in <math.h> [libc++] Fix ranges::uninitialized_move{, _n} for move-only types [libc++][ranges] Fix incorrect integer type in `view_interface` tests. [libc++] Hold mutex lock while notify_all is called at notify_all_at_thread_exit [Libcxx] Add <source_location> header. [libc++] Rename transform_view::{__iterator, __sentinel} to __transform_view_{iterator, sentinel} [libc++] Add FreeBSD exceptions.nonew ABI list [libc++][format] Fixes escaping string literals. [libc++] Use _LIBCPP_HIDE_FROM_ABI_VIRTUAL instead of _LIBCPP_INLINE_VISIBILITY attribute on virtual function [libc++][test] Move `common_input_iterator` to `test_iterators.h` [libc++][utils] Remove unused import in `run.py` [libc++] Remove warning for `LIBCXX_SYSROOT`, `LIBCXX_TARGET_TRIPLE`, and `LIBCXX_GCC_TOOLCHAIN` [libc++] Fix aligned_alloc usage for Android [libc++] Use %{clang-query} when calling clang-query [libc++] Add missing include in __format/unicode.h [libc++] Remove HIDE_FROM_ABI from virtual functions [libc++] Fix transitive includes list for C++23 [libc++] Add _LIBCPP_HIDE_FROM_ABI to __constexpr_logb and __constexpr_scalbn [libc++] Granularize <bit> and remove <__bits> [libc++] [C++20] [P0415] Constexpr for std::complex. libc++: bring back the unsigned in the return type in wcstoull_l [libc++][CI] Improves clang-(tidy|query) selection. [libc++] Granularize <type_traits> includes in <iterator> [libc++] Implement constexpr {isfinite, isinf, isnan, isnormal} [libc++][chrono] Add calendar type formatters. [libc++] LWG3738 Validates a missing precondition. [libc++] LWG3745 noexcept for atomic_wait. [libc++] Granularize <type_traits> includes in <compare> std::sort: add BlockQuickSort partitioning algorithm for arithmetic types [libc++] Granularize <type_traits> includes in <utility> [libc++][format] Removes test redundancy. [libc++][format] Adds formatter for tuple and pair [libc++] Use aligned_alloc instead of posix_memalign for C++17 [libc++] Rename __tuple to __tuple_dir to avoid file collision [libc++] Add FreeBSD ABI list [libc++] Adds __cpp_lib_constexpr_algorithms to utility. [libc++] Granularize <type_traits> includes in <concepts [libc++][format] Renames __null_sentinel. Implementstd::ranges::view_interface::size returns a signed type [libc++] Implement P1169R4 (static operator()) [libc++] Implement `std::expected` P0323R12 [libc++][Android] Disable pbump2gig for Android [libc++][Android] Android/Bionic headers don't work with modules yet [libc++][math.h] Add double overloads [libc++] Move filter_view::iterator and sentinel out of filter_view [libc++] Implement P0339R6 (polymorphic_allocator<> as a vocabulary type) [libc++][format] Adds range-default-formatter. [libc++][Android] Rename user NS to User to avoid conflict with struct [libc++] Fix memory leaks when throwing inside std::vector constructors ```
* feat contrib: aiogram 3armenqa2024-01-1916-195/+683
| | | | Relates: https://st.yandex-team.ru/, https://st.yandex-team.ru/
* Library import 8 (#1074)AlexSm2024-01-188-31/+89
| | | | | * Library import 8 * Add contrib/libs/cxxsupp/libcxx/include/__verbose_abort
* Import libs 1 (#590)AlexSm2023-12-212-10/+2
| | | | | | | * Import libs 1 * Add new file without extension * Add file missed in export config
* Remove more old patchesmikhnenko2023-12-151-1/+1
|
* Fix _an attribute list cannot appear here_ from clang-cl16thegeorg2023-12-141-1/+1
|
* Intermediate changesrobot-piglet2023-12-042-3/+0
|
* Drop more msvc-specific patchesmikhnenko2023-11-281-8/+0
|
* Upd libc++ to 01 July 2022 da1609ad73540978f66111e96ea500b97ca9b39amikhnenko2023-11-152-2/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ``` [libc++] Improve the formatting of static_assert messages [libc++] Remove dead code and unneeded C++03 specializations from type_traits [libc++] Implement P0618R0 (Deprecating <codecvt>) [libc++] Disentangle _If, _Or and _And Uglify __support/xlocale [libc++][format] Improve pointer formatters. [libc++][format] Improve integral formatters. [libc++] Fix signature of main() in tests [libc++][ranges] Finish LWG issues directly related to the One Ranges Proposal. [libc++] Re-add transitive includes that had been removed since LLVM 14 [libc++] Add a few missing min/max macro push/pop [libc++] Remove dummy command in Dockerfile [libc++] Use bounded iterators in std::span when the debug mode is enabled [libc++] Improve Lit's buildhost=XXXX feature on a few platforms [libc++] Simplify type_traits and use more builtins [libc++] P2321R2 section [tuple.tuple]. Adding C++23 constructors, assignment operators and swaps to `tuple` [libc++][AIX] Make basic_string layout compatible with earlier version [libcxx][test] Suppress complex<int> warnings when testing MSVC [libc++] Add a test to pin down the set of transitive public includes [libc++][format] Copy code to new location. [libc++] Implement ranges::move{, _backward} [libc++] Implement P0154R1 (Hardware inference size) [libc++] Simplify the visibility attributes [libc++] Clarify std::function release note [libc++] Reduces std::to_chars instantiations. [libc++] Fixesbuild. [libc++] fix views::all hard error on lvalue move only views instead of SFINAE [libc++] Complete the implementation of N4190 [libc++] Remove std::function in C++03 [libc++][format] Improve string formatters [libc++] Pass -fno-modules to clang-tidy instead of disabling it for the modules build [libc++][clang-tidy] Enable bugprone-use-after-move and explicitly list all used checks [libc++] Improve charconv base10 algorithm. [libc++][format] Improves the handle test. [libc++] Implement P0174R2 (Deprecating Vestigial Library Parts in C++17) ```
* Upd libc++ to 18 Jun 2022 ff3989e6ae740a9b3adaad0e2bf7691ffd6dad12mikhnenko2023-11-071-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | ``` [libc++] Add Implemented Papers section [libc++] Enable -Wweak-vtables [libc++] Make sure we install libc++abi headers on Apple [libc++] Don't force -O2 when building the benchmarks [libc++] Mark standard-mandated includes as such [libc++] Implement std::boyer_moore{, _horspool}_searcher [libc++] Unwrap reverse_iterator<reverse_iterator<Iter>> in __unwrap_iter [libc++] Simplify __config a bit [libc++][ranges] Implement `ranges::sort`. [libc++] Remove now-unused experimental/filesystem config file [libc++] Robust against C++20-hostile iterators [libc++] Implement ranges::lexicographical_compare [libc++] Removes unneeded <iterator> includes. [libcxx] Fix allocator<void>::pointer in C++20 with removed members [libcxx] Remove extraneous '---' lines in .clang-format files [libc++][NFCI] span: replace enable_if with concepts [libc++] Find a clang-format everybody is happy with [libc++] Use explicit module cache path in tests [libc++] Remove macros for IBM compiler ```
* Upd libc++ to 14 Jun 2022 1cf4113952ae3e4cc75decdf6feb3ce5dd8ca4a1mikhnenko2023-11-024-147/+26
|
* Upd libc++ to 1 Jun 2022 10c4eec2785a68880c287d36c262d5be3a72a128mikhnenko2023-10-254-210/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [libc++][format] Fixes string-literal formatting. [libc++] Removes __cpp_lib_monadic_optional. [libcxx] Temporarily skip Arm configs [libc++] Reduce the verbosity when running the libc++ Lit configuration [libc++] Adds __format_string as nasty macro. [libc++] Use __enable_if_t and is_integral in cstddef [libc++] Adds missing includes. [libc++] Minor emscripten changes from downstream [libc++] Granularize more of <type_traits> [libc++] Remove unused __functional includes [libc++] Add various missing _LIBCPP_HIDE_FROM_ABI [libc++] Use __libcpp_clz for a tighter __log2i function [libc++] Enable ranges_robust_against* and niebloid tests for implemented ranges algorithms [libc++] Implement ranges::is_sorted{, _until} [libc++] Time tests during CI [libc++] Implement ranges::{all, any, none}_of [libc++] Remove temporary workaround for existing CMake caches [libc++] Implement ranges::equal [libc++] Remove conditional include [libc++] Use Python subprocess instead of libc++'s own utilities [libc++] Implement ranges::fill{, _n} [libc++] Make sure that all headers can be included with modules enabled [libc++] Rename the generic-singlethreaded CI job to generic-no-threads for consistency [libc++] Implement ranges::reverse [libc++] Replace modulus operations in std::seed_seq::generate with conditional checks. [libc++] type_traits: use __is_core_convertible in __invokable_r. [libc++] Remove duplicate tests for callable concepts [libc++] Add ranges::max_element to the synopsis and ADL-proof the __min_element_impl calls [libc++] Add auto to the list of required extensions in C++03 [libc++] Assume that push_macro and pop_macro are available [libc++] Always enable the ranges concepts [libc++] Granularize parts of <type_traits> [libc++] Improve error messages for disabled modes [libc++] Override the value of LIBCXX_CXX_ABI in the cache [libc++] Granularize algorithm benchmarks [libc++] Enable move semantics for vector in C++03 [libc++][format][5/6] Improve format_to_n.
* Upd libc++ to 18 May f0e61029506fd63bb300f2dbbd65ba792e4ef3a2mikhnenko2023-10-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [libc++][P0943] Add stdatomic.h header. [libc++] Implement ranges::is_partitioned [libcxx] Reject month 0 in get_date/__get_month [libc++] Mark tests that use check_assertion.h as requiring unix headers [libcxx] [ci] Add a i386 Windows configuration to CI [libcxx] [test] Narrow down an XFAIL for clang-cl configurations [libcxx] [test] Extend the UNSUPPORTED lines in strong_order_long_dou… [libcxx] [test] Fix max_size.pass.cpp for other Windows architectures [libc++] Avoid a Microsoft SAL macro. [libc++] Add a few _LIBCPP_ASSERTs in __tree [libc++] Implement ranges::for_each{, _n} [libc++] Refactor max_size.pass.cpp [runtimes] Fix how we trigger CI [libc++] Overhaul how we select the ABI library [runtimes] [cmake] Fix -Werror detection in common build configs [libc++] Mark <stdatomic.h> as requiring C++23 [libcxx] Switch __cxx_contention_t to int32_t on 32 bit AIX [libc++] Remove __invalidate_all_iterators and replace the uses with … [libc++] Add a few more debug wrapper functions [libc++][ranges] Implement views::drop. [libcxx] [test] Fix the nasty_macros test on Windows on ARM/ARM64 [libcxx] Remove static inline and make use of _LIBCPP_HIDE_FROM_ABI i… [libcxx] random_device, use arc4random() on Solaris [libc++][ranges] Implement views::single. [libc++][ranges] Implement views::take. [libc++] Improve std::to_chars for base != 10. [lib++][doc] Fixes a link in the status paper. [libc++] Simplify the string structures a bit more [libc++][test] Verify std::views::drop and std::views::join are CPOs [runtimes] Introduce object libraries [libc++] Remove the legacy LIBCXX_LIBCPPABI_VERSION option [libc++] Remove overly conservative error in <stdatomic.h> [libc++] Introduce LIBCXX_LIBRARY_VERSION [libcxx] [test] Add missing header for std::numeric_limits [libcxx] [test] Include header for strverscmp [runtimes] Default LIB*_HERMETIC_STATIC_LIBRARY to ON on Windows [libc++][format] Adds a formattable concept. [libc++][format] Adds formatter<charT[N], charT>.
* Revert commit rXXXXXX, Upd libc++ to 18 May ↵mikhnenko2023-10-161-1/+1
| | | | 4ac0589122830fc6d90e0ea091300c0b979a42dc
* Upd libc++ to 18 May 4ac0589122830fc6d90e0ea091300c0b979a42dcmikhnenko2023-10-161-1/+1
|
* Update libc++ to 1 May 2022 639b9618f46d75f4dabd2082b3f6ba8433c287bfmikhnenko2023-10-141-2/+7
|
* Upd libc++ to 0cc34ca7ecfc9d0efee322f60ed6c3169f4f70ca (12 Apr 2022)mikhnenko2023-10-114-28/+37
|
* Upd libc++ to 95a2527261443729a398e16bc7dc6dd325fc2691 (29 Mar 2022)mikhnenko2023-10-063-22/+6
|
* Upd libc++ to d0af4276d62418ba9e54fec99b293d2fd7c92213 (14 Mar 2022)mikhnenko2023-09-271-8/+7
|
* Update libc++ to 9b03c08e (6 Mar 2022).halyavin2023-09-263-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Notable changes: * don't warn that coroutines are not supported when using experimental/coroutine * add _LIBCPP_HIDE_FROM_ABI to __quoted_proxy constructors * ADL-proof calls of __quoted * fix ctype facet `is` method for Windows * change return type of bit_width to int (LWG3656) * make private __wrap_iter constructors explicit * fix delayed initialization of `__fill_` in basic_ios * ranges::iter_move cleanup * ADL-proof __synth_three_way * reject random number generators with signed types * use C++ overloads from math.h on AIX * add explicit to some internal constructors * replace _LIBCPP_HAS_NO_STRONG_ENUMS with C++ version check * use `inline constexpr bool` instead of `constexpr bool` for helpers in ranges * reject uniform_int_distribution<bool>, uniform_int_distribution<char> and all user types * allow std::mergeable and std::sortable even with incomplete ranges * fix double close bug in std::filesystem::remove_all * remove recursion in basic_string::insert because it interferes with constexpr * fix error checking of wctob_l calls * pack _Flags class on AIX * fix integer type in __estimate_column_width exposed by AIX * qualify all std::move calls with std * make chrono includes granular * set std::numeric_limits::tinyness_before to true on ARM * add ranges::in_found_result and ranges::min_max_result
* Put libc++ under ym2mikhnenko2023-09-2014-34/+33
|
* YT-19142: Add emscripten patches to libcxxdtorilov2023-05-242-0/+13
|
* Resolve Y_UCRT_INCLUDE_NEXT and _LIBCPP_MSVC_INCLUDE to voidmikhnenko2023-05-231-1/+1
|
* add windows platform to ydb github exportalexv-smirnov2022-12-205-0/+646
|
* Update libc++ to 34313583 (20 Feb 2022).halyavin2022-07-2158-249/+295
| | | | | | | | | | | | | | | | | | | | Notable changes: * replace _LIBCPP_INLINE_VISIBILITY with _LIBCPP_HIDE_FROM_ABI in __filesystem/operations.h * implement sortable and mergeable concepts * replace __uncvref with __uncvref_t * implement consistent stateful allocator behavior in std::basic_string::operator+ * remove some _LIBCPP_CXX03_LANG ifdef's * move _LIBCPP_ASSERT related code to a separate file * enable std::hash<Enum> in C++11 mode * make algorithm includes more granular * implement range functionality for std::istream_iterator * add debug check in basic_string::insert * replace "" with <> in includes in src/ files for consistency with include/ * add push/pop macros defines in src/ files for consistency with include/ * add availability annotations to optional operations * remove conditional noexcept from view_interface --- this is allowed by the standard * replace _LIBCPP_SAFE_STATIC with _LIBCPP_CONSTINIT * guard most of std::ranges under _LIBCPP_HAS_NO_INCOMPLETE_RANGES * remove priority pragma for AIX from locale.cpp because it is ignored anyway
* fix ya.makemonster2022-07-0714-1410/+0
|
* Update libc++ to a7c2a628 (15 Feb 2022).Andrey Khalyavin2022-07-0510-51/+39
| | | | | | | | | | | | 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
* Update libc++ to 8f0b2ac1 (12 Feb 2022).Andrey Khalyavin2022-06-242-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | Notable changes: * use [[no_unique_address]] for field `__base_` in join_view * remove _LIBCPP_HIDE_FROM_ABI from __threading_support functions * remove __functional_base header which is just a set of #include directives * remove unused include in ranges_swap_ranges.h * do not print bools with "c" format. * add noexcept to basic_format_context::arg constructor * add ranges::min_element * add ranges::in_fun_result * add ranges::swap_ranges * add std::vector::reference::operator=(bool) const * replace _LIBCPP_DEBUG with _LIBCPP_DEBUG_LEVEL * fix constexpr in __debug_less * modernize code in compress_pair.h * add permutable concept * cleanup format headers * remove _LIBCPP_ABI_UNSTABLE, we must set _LIBCPP_ABI_VERSION and _LIBCPP_ABI_NAMESPACE outselves now * make some members private in experimental/functional * remove std::nullptr_t emulation in C++03 mode ref:f3c7583f32067a3dd9da42aeb15f1b01d746dc59
* Update libc++ to 24c12bfb (5 Feb 2022).Andrey Khalyavin2022-06-091-2/+15
| | | | | | | | | | | | | Notable changes: * make _LIBCPP_ABI_UNSTABLE set _LIBCPP_ABI_VERSION * replace include utility with specific includes in __utility folder * disallow ranges:begin for array of incomplete types * move fpos to separate header * delete optional usage of type builtins that were never implemented * define ranges::views namespace in its own header * remove base class of the vector ref:1d141d911ba017f306cca431c3b56c25d495e54e
* Update libc++ to eaadc451 (4 Feb 2022).Andrey Khalyavin2022-06-023-8/+124
| | | | | | | | | | | | | | | | | | | | | | | 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
* Update libc++ to revision ab0554b2 (31 Jan 2022).Andrey Khalyavin2022-05-263-90/+83
| | | | | | | | | | | | | | | | | | | | | | | Notable changes: * allow using thread safety annotation in MinGW mode * implement compare_{strong,weak,partial}_fallback * omit atomic_{,un}signed_lock_free on platforms that doesn't support lock free atomics * set enable_borrowed_range template variable for ref_view and empty_view * fix bug in reverse_iterator::operator= * move some function from directory_iterator.cpp to a header so that they can be reused * fix bug in ranges::advance when try to advance by 0 * fix missing constraint which affects common_iterator for output iterators * correctly handle move-only iterators in move_iterator * make base() method in counted_iterator and transform_view::iterator noexcept * remove C++03 workarounds in reference_wrapper, since clang supports necessary features in C++03 mode * simplify convertible_to concept implementation * fix issue with __convertible_to_non_slicing rejecting correct case * remove excessive wrapping in std::ref and std::cref * fix std::seed_seq constructors * remove std::basic_string base class when using ABI v2 * std::basic_string::reserve now never shrinks in all C++ modes ref:b62ec6bac0283b075dd2348bad7e8a271155b378
* Update libc++ to 429a717e (20 Jan 2022).Andrey Khalyavin2022-04-213-10/+156
| | | | | | | | | | | | | | | | Notable changes: * use _LIBCPP_DEBUG_ASSERT in unordered_map and vector headers * use reserved identifiers for template parameters * fix category of fs::path::iterator * introduce __debug_db_insert_i() for debug checks to support compile-time evaluation * add specializations of basic_common_reference and common_type for tuple * fix std::lognormal_distribution::param_type * add _LIBCPP_HIDE_FROM_ABI to in_in_result conversion operators * replace _LIBCPP_INLINE_VISIBILITY with _LIBCPP_HIDE_FROM_ABI in move_iterator.h * fix __simple_view concept in std::ranges * add some ASCII/EBCDIC support for z/OS ref:b0e68cbe142a3f06a8804f247119b5eb0a455a39
* Update libc++ to 5726e559 (14 Jan 2022).Andrey Khalyavin2022-04-171-0/+1
| | | | | | | Notable changes: * chrono modularization ref:42040cfb4887a3eaac1dd7bc783623c820734637
* Update libc++ to b6d87773 (14 Jan 2022).Andrey Khalyavin2022-04-151-3/+1
| | | | | | | | | | | | | | | | Notable changes: * implement operator << for filesystem::directory_entry * add std::ranges::in_in_result * add std::ranges::owning_view * add std::ranges::cdata * add std::ranges::construct_at and destroy{,_n,_at} * small fixes in std::ranges::data * SFINAE away std::ranges::cbegin(const T&&) for non-borrowed T * use arc4random to implement std::random_device on Apple * introduce __fits_in_sso to put constexpr check into a central place * introduce __debug_db_insert_c to put #if and constexpr check into a central place ref:b3dd06bd52f06e8939227ca0f0a5873d0c211e48
* Update libc++ to 8d23b742 (11 Jan 2022).Andrey Khalyavin2022-04-071-4/+19
| | | | | | | | | | | | | | Notable changes: * implement in_out_result in ranges * implement uninitialized_copy{,_n} and uninitialized_move{,_n} in ranges * use _LIBCPP_DEBUG_ASSERT in list * alphabetize header includes. * use Fuchsia-native monotonic clock for std::chrono::steady_clock * properly handle specializations of std::is_placeholder * add __cpo namespace to ranges::{advance, next, prev} for ADL reasons * add template lerp function ref:1cc313d57e8757bed1d0950624d0c3a2b7da8a4f
* intermediate changesarcadia-devtools2022-04-031-1/+24
| | | | ref:8fcd56b3fe762902848ae3f9eabb01e1aa97432c
* intermediate changesarcadia-devtools2022-03-302-1/+3
| | | | ref:6e865ff0ae14a24901c8add989f674d8e88acf17
* intermediate changesarcadia-devtools2022-03-2410-41/+31
| | | | ref:9eb06e5e31eb4c81bc7f55fa295da8edd4e644bb
* intermediate changesarcadia-devtools2022-03-2315-17/+8884
| | | | ref:e2259743aaaa198850a5184b92813fca8eb3a49b
* intermediate changesarcadia-devtools2022-03-171-5/+5
| | | | ref:b701e8676af251d91697287754da22505ad43d4e
* Support std::filesystem::path in Arcadia streamsthegeorg2022-03-031-0/+10
| | | | ref:11bbdd83544b9579747dd12d51395840bda86faf
* intermediate changesarcadia-devtools2022-03-0146-53/+55
| | | | ref:ca7f4ea59c35451f4846b211a4122df6ab12b4df
* intermediate changesarcadia-devtools2022-02-151-0/+2
| | | | ref:6047a064234457e5084bb81c38d0758e4de103c3
* intermediate changesarcadia-devtools2022-02-121-0/+23
| | | | ref:7c971b97c72bbbcbf889118d39017bd14f99365a
* intermediate changesarcadia-devtools2022-02-103-57/+19
| | | | ref:4635f4dd763168c3fa295f87727595c785b4d5a4