Граф коммитов

1119 Коммитов

Автор SHA1 Сообщение Дата
Alex Guteniev b6b9778858
P0627R6: Function to mark unreachable code (#2526)
Co-authored-by: Casey Carter <cartec69@gmail.com>
2022-02-11 18:22:10 -08:00
Igor Zhukov 8096a27550
resize_and_overwrite: fix warning C4018 (#2525)
Co-authored-by: PowerGamer1 <PowerGamer1@users.noreply.github.com>
2022-02-11 18:07:05 -08:00
Stephan T. Lavavej bb0cdf6c22
Fix and test deduplicated header units (#2516) 2022-02-11 17:55:27 -08:00
Stephan T. Lavavej 067e8ea081
Toolset update: VS 2022 17.1 Preview 5, CMake 3.22, sparse index (#2514) 2022-02-11 17:49:26 -08:00
Casey Carter bbd5dbaa61
Speculatively implement LWG-3664 (#2522)
to fix a regression when calling `ranges::distance` with array arguments which _should_ decay to pointers. While we're here, let's merge `distance(i, s)` overloads and use `if constexpr` dispatch instead of concept overloading.

Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-02-07 11:54:49 -08:00
Ritik Rawal ee6a79e4ca
Update _MSVC_STL_UPDATE for 2022-02 (#2519) 2022-02-07 11:49:58 -08:00
Casey Carter 53d4f93525
Move `<ranges>` and `<format>` into C++20 (#2518)
* In `<yvals_core.h>`, don't require `_HAS_CXX23` to define `__cpp_lib_format` and `__cpp_lib_ranges`. Change the feature-test macro test consistently.

* Change test matrices for all tests that touch `<ranges>` and `<format>` to run in 20 mode instead of latest-only.

* Don't use the `span` constructor added by P1989 to C++23 in `P0896R4_views_split`, which now must run in c++20 mode where that constructor is unavailable.

Fixes #1814.

* Implement `__msvc_int128.hpp` to complete WG21-P1522 and provide integer-class types `_Signed128` and `_Unsigned128` to be the distance / size types of `iota_view<64-bit integral>`.
2022-02-07 11:36:22 -08:00
S. B. Tam 823dbe3b44
Rearrange feature test macros (#2510)
And don't bother to check `_DOWNLEVEL_COROUTINES_SUPPORTED` which equivalent to `__cpp_impl_coroutine`.

Fixes #2135.
2022-02-07 11:30:40 -08:00
Matt Stephanson a3b2a891af
constexpr all the generate_canonical parameters (#2498)
...up to 64 bits of entropy. Leave the original implementation for
more bits and naughty generators (I'm looking at you, tr1) whose
`min` and `max` functions aren't static.

Fixes #1964.
2022-02-07 11:23:45 -08:00
DadTech b11945b73f
Changed `_Unfancy_maybe_null()` to `_Unfancy()` (#2508)
Co-authored-by: Casey Carter <Casey@Carter.net>
2022-01-31 18:44:40 -08:00
Casey Carter c6df0b00b9
Add `P0295R0_gcd_lcm` test (#2507)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-01-31 18:35:56 -08:00
Charlie Barto e4303b5087
`<format>`: Use `_MSVC_EXECUTION_CHARACTER_SET` (#2493)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-01-31 18:15:52 -08:00
Stephan T. Lavavej fcd5cf555f
Toolset update: VS 2022 17.1 Preview 4, ARM64EC (#2496) 2022-01-25 22:33:39 -08:00
Sam Huang f575e7becd
`<ratio>`: Use `constexpr` functions instead of TMPs (#2450)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-01-25 22:28:42 -08:00
Charlie Barto f0c0eaaca0
`<format>`: Implement P2418R2 support for `std::generator`-like types (#2323)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-01-25 22:25:18 -08:00
Casey Carter 59a87ccc94
LWG-3392 `ranges::distance()` cannot be used on a move-only iterator with a sized sentinel (#2421)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-01-21 16:52:08 -08:00
Casey Carter d896ef8f54
LWG-3543: Update counted_iterator's "same sequence" definition (#2424)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-01-21 16:47:15 -08:00
Casey Carter 94bb6d2279
LWG-3589: subrange `get<0>` requires a copyable iterator (#2425) 2022-01-21 16:18:49 -08:00
Alex Guteniev 51ad3980f5
Alternative way to optimize `_Countr_zero` (#2343)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-01-21 16:11:36 -08:00
Stephan T. Lavavej 1035141929
Add diagnostics for sporadic failures in a `<format>` test (#2494) 2022-01-21 16:09:39 -08:00
Stephan T. Lavavej 33007ac754
Toolset update: VS 2022 17.1 Preview 2, Clang 13 (#2474) 2022-01-19 17:22:46 -08:00
Jino Park 086b072f8e
Remove some `strengthened` comments for LWG-3593 (#2448) 2022-01-19 16:50:18 -08:00
Stefan 20fea3fbe0
Fix begin/end for valarray crashing on empty instance (#2435)
Co-authored-by: Casey Carter <cartec69@gmail.com>
2022-01-19 16:42:21 -08:00
Alex Guteniev de24597790
`move_only_function`: more concise Python script (#2429) 2022-01-19 16:27:22 -08:00
Casey Carter 4dab194222
Render keys_view and values_view useless per LWG-3563 (#2426) 2022-01-19 16:17:51 -08:00
Casey Carter 3355484683
`allocator::is_always_equal` is deprecated, not removed, in C++20 (#2423) 2022-01-19 16:11:31 -08:00
Alex Guteniev c6169272b2
Activate `reverse_copy` optimization under C++20/C++23 mode (#2416) 2022-01-19 15:55:34 -08:00
Igor Zhukov 1881560e04
`<memory>`: Add `nullptr` check in `std::allocator` (#2412) 2022-01-19 15:46:51 -08:00
Curtis J Bezault 86e22c3cf3
`<vector>`: Fix ASan annotations when `clear`ing (#2464)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-01-13 17:35:04 -08:00
Senthilnathan 0dc93fcf0e
updated _MSVC_STL_UPDATE to January 2022 (#2455) 2022-01-05 22:33:15 -08:00
Stephan T. Lavavej dd5be88c63
Use `/ALTERNATENAME` instead of checked-in OBJ files generated by `aliasobj` (#2381) 2022-01-05 22:27:47 -08:00
Alex Guteniev 69541facb9
Untag dispatch find (#2380)
Co-authored-by: Michael Schellenberger Costa <mschellenbergercosta@gmail.com>
Co-authored-by: S. B. Tam <cpplearner@outlook.com>
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
Co-authored-by: Casey Carter <Casey@Carter.net>
2022-01-05 22:17:59 -08:00
Igor Zhukov 16251e3cde
handle Clang-CUDA (#2075)
* do not require protection from macroized `new` for Clang in Cuda mode
* Don't check NVCC version if `__CUDACC_VER_MAJOR__` is not defined

which admits both clang-CUDA and `cl /showIncludes /D__CUDACC__` into the STL.
2022-01-05 21:50:41 -08:00
Igor Zhukov 582735aa40
`<algorithm>`: `ranges::clamp`, the projection may be applied at most three times. (#1898)
* the projection may be applied at most three times.

Co-authored-by: Michael Schellenberger Costa <mschellenbergercosta@googlemail.com>
Co-authored-by: statementreply <statementreply@gmail.com>
Co-authored-by: Casey Carter <cacarter@microsoft.com>
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2022-01-05 21:44:35 -08:00
Curtis J Bezault 303df3dae6
`<vector>`: Correctly pass target size, not size change to ASan annotator (#2420) 2021-12-16 19:33:10 -08:00
Casey Carter 3318135d9c
Prefer `friend constexpr` to `constexpr friend`, skip flaky libcxx test (#2419) 2021-12-16 19:28:31 -08:00
Igor Zhukov 857815660d
improve iota_view's iterator's binary operator+ (LWG-3580) (#2417)
Co-authored-by: Casey Carter <Casey@Carter.net>
2021-12-16 19:23:45 -08:00
Igor Zhukov 3f59b281fe
Implement LWG-3470: `convertible-to-non-slicing` seems to reject valid case (#2414)
Co-authored-by: Michael Schellenberger Costa <mschellenbergercosta@gmail.com>
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2021-12-16 19:19:30 -08:00
cristei 9a60c82cdd
Implement LWG-3591 and LWG-3592 for `lazy_split_view` (#2411)
Co-authored-by: Casey Carter <Casey@Carter.net>
2021-12-16 19:15:05 -08:00
Igor Zhukov 4db457f0d5
Implement LWG-3574 and LWG-3595: `common_iterator` should be completely `constexpr`-able (#2410)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
Co-authored-by: Casey Carter <cartec69@gmail.com>
2021-12-16 19:09:59 -08:00
Igor Zhukov 3a570ee597
Implement LWG-3146: Excessive unwrapping in `std::ref`/`cref` (#2409)
Co-authored-by: Michael Schellenberger Costa <mschellenbergercosta@gmail.com>
2021-12-16 19:06:36 -08:00
Igor Zhukov 4b9ab17211
Implement LWG-3557: The `static_cast` expression in `convertible_to` has the wrong operand (#2406)
Co-authored-by: Michael Schellenberger Costa <mschellenbergercosta@gmail.com>
2021-12-16 19:03:17 -08:00
Igor Zhukov 1174e733da
Implement LWG-3590: `split_view::base() const &` is overconstrained (#2404)
Co-authored-by: Michael Schellenberger Costa <mschellenbergercosta@gmail.com>
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
Co-authored-by: Casey Carter <Casey@Carter.net>
2021-12-16 18:58:39 -08:00
Casey Carter d62ead3e34
Strike "with concepts support" from the GH-1814 messages (#2382) 2021-12-16 18:51:03 -08:00
Michael Schellenberger Costa 7c78a428bf
Fix Efficient access to streambuf buffer (#2361) 2021-12-16 18:44:57 -08:00
Alex Guteniev 2ff81498dd
P2077R3 Heterogeneous Erasure Overloads (#2350)
Co-authored-by: Stephan T. Lavavej <stl@microsoft.com>
2021-12-16 18:39:50 -08:00
Alex Guteniev f3ab9de28a
Update test for bsf private helper (#2337)
Co-authored-by: Stephan T. Lavavej <stl@microsoft.com>
2021-12-16 18:24:10 -08:00
Michael Schellenberger Costa 5eb9cb8ce3
Fix bugs in std::string (#2305)
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2021-12-16 18:17:42 -08:00
S. B. Tam 20b8f611c8
Implement P0798R8 monadic operations for std::optional (#2301)
Co-authored-by: Casey Carter <Casey@Carter.net>
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2021-12-16 18:03:45 -08:00
Alex Guteniev b33a89ec69
P0288R9 move_only_function (#2267)
Co-authored-by: frederick-vs-ja <de34@live.cn>
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
2021-12-16 17:24:28 -08:00