STL/stl/inc
A. Jiang fec1c8b6a1
`<algorithm>`: Fix bogus pointer arithmetic with integer-class (#5091)
Co-authored-by: Casey Carter <cacarter@microsoft.com>
2024-11-19 01:49:28 -08:00
..
experimental Change `_Always_false` to `false` for functions (#4591) 2024-04-18 18:15:08 -07:00
__msvc_all_public_headers.hpp Test CUDA in all supported Standard modes. (#4974) 2024-09-28 13:03:00 -07:00
__msvc_bit_utils.hpp Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
__msvc_chrono.hpp Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
__msvc_cxx_stdatomic.hpp Update preprocessor `#else` comment in product code to clarify which mode is where (#3900) 2023-08-10 16:48:21 -07:00
__msvc_filebuf.hpp Optimize `println()` overloads added in P3142R0 (#4672) 2024-10-24 07:13:00 -07:00
__msvc_format_ucd_tables.hpp Move `_Width_estimate_intervals_v2` to `__msvc_format_ucd_tables.hpp` (#4446) 2024-03-07 18:52:50 -08:00
__msvc_formatter.hpp Reduce inclusion for `<queue>`, `<stack>`, `<stacktrace>`, and `<thread>` (#5003) 2024-10-11 21:51:43 -07:00
__msvc_heap_algorithms.hpp Reduce inclusion for `<queue>` and `<stack>` (#4707) 2024-06-17 22:21:49 -07:00
__msvc_int128.hpp Standard Library Modules: Add compiler workarounds for `<random>` (#4906) 2024-08-25 12:22:04 -07:00
__msvc_iter_core.hpp Unwrapping output iterators in range algorithms (#5015) 2024-10-16 22:48:48 -07:00
__msvc_minmax.hpp Dedicated `ranges::minmax` vectorization that does not unnecessarily track element pointer (#4384) 2024-02-16 13:11:33 -08:00
__msvc_ostream.hpp Reduce inclusion for IO stream headers in C++23 (#4936) 2024-09-09 12:57:30 -07:00
__msvc_print.hpp Optimize `println()` overloads added in P3142R0 (#4672) 2024-10-24 07:13:00 -07:00
__msvc_ranges_to.hpp Casey's miscellaneous changes, definitive edition (#5014) 2024-10-16 22:46:30 -07:00
__msvc_ranges_tuple_formatter.hpp Casey's miscellaneous changes, definitive edition (#5014) 2024-10-16 22:46:30 -07:00
__msvc_sanitizer_annotate_container.hpp Toolset update: VS 2022 17.9 Preview 2, Clang 17 (#4259) 2023-12-14 13:56:17 -08:00
__msvc_string_view.hpp Vectorize `basic_string::rfind` (the single character overload) (#5087) 2024-11-19 01:44:15 -08:00
__msvc_system_error_abi.hpp Various cleanups: `extern "C"` (#4143) 2023-11-07 05:09:49 -08:00
__msvc_threads_core.hpp Abandon Windows-internal size optimizations for `mutex` and `condition_variable` (#5030) 2024-10-30 07:28:01 -07:00
__msvc_tzdb.hpp `static operator()` for stateless functors (#4358) 2024-02-06 01:18:25 -08:00
__msvc_xlocinfo_types.hpp Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
algorithm `<algorithm>`: Fix bogus pointer arithmetic with integer-class (#5091) 2024-11-19 01:49:28 -08:00
any Drop `inline`/`_INLINE_VAR` from templated `constexpr` variables in product and test codes (#4546) 2024-04-09 14:05:30 -07:00
array Casey's miscellaneous changes, definitive edition (#5014) 2024-10-16 22:46:30 -07:00
atomic Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
barrier Update preprocessor `#else` comment in product code to clarify which mode is where (#3900) 2023-08-10 16:48:21 -07:00
bit Use `requires`-clauses and concepts for miscellaneous C++20/23 components (#4637) 2024-05-20 15:50:10 -07:00
bitset `<bitset>`: optimize streaming `operator >>` (#5008) 2024-10-21 14:48:46 -07:00
cassert Include <cmeow> instead of <meow.h> (#1405) 2020-11-06 15:34:14 -08:00
ccomplex Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
cctype Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
cerrno Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
cfenv Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
cfloat Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
charconv Update CodeQL warning suppressions (#4985) 2024-09-28 13:28:10 -07:00
chrono `requires` for `chrono::parse` and comparison category detection (#5044) 2024-10-30 07:50:12 -07:00
cinttypes Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
ciso646 Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
climits Toolset update: VS 2022 17.11 Preview 2 (#4725) 2024-06-17 21:48:23 -07:00
clocale Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
cmath `<cmath>`, `<limits>`: Locally disable `-Wnan-infinity-disabled` for Clang (#4990) 2024-10-11 21:31:20 -07:00
codecvt Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
compare Remove `_NODISCARD_FRIEND` workaround (#4782) 2024-07-05 00:16:13 -07:00
complex Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
concepts Auto-vectorize arrays `swap` (#4991) 2024-10-24 08:44:18 -07:00
condition_variable Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
coroutine P2502R2 `<generator>`: Synchronous Coroutine Generator For Ranges (#4953) 2024-09-19 13:56:20 -07:00
csetjmp Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
csignal Update preprocessor `#else` comment in product code to clarify which mode is where (#3900) 2023-08-10 16:48:21 -07:00
cstdalign Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
cstdarg Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
cstdbool Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
cstddef Add `extern "C++"` as a temporary workaround for `#include`/`import` coexistence (#4154) 2023-11-10 10:48:04 -08:00
cstdint Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
cstdio Remove `_FPOSOFF` and non-Standard `std::fpos::seekpos()` (#4606) 2024-04-26 15:29:09 -07:00
cstdlib Add `extern "C++"` as a temporary workaround for `#include`/`import` coexistence (#4154) 2023-11-10 10:48:04 -08:00
cstring Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
ctgmath Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
ctime Add `extern "C++"` as a temporary workaround for `#include`/`import` coexistence (#4154) 2023-11-10 10:48:04 -08:00
cuchar Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
cwchar Add `extern "C++"` as a temporary workaround for `#include`/`import` coexistence (#4154) 2023-11-10 10:48:04 -08:00
cwctype Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
deque Enforce `assign_range()` mandates for sequence containers (#5086) 2024-11-19 01:39:38 -08:00
exception Remove `_NODISCARD_FRIEND` workaround (#4782) 2024-07-05 00:16:13 -07:00
execution Casey's miscellaneous changes, definitive edition (#5014) 2024-10-16 22:46:30 -07:00
expected Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
filesystem Remove `_NODISCARD_FRIEND` workaround (#4782) 2024-07-05 00:16:13 -07:00
format Casey's miscellaneous changes, definitive edition (#5014) 2024-10-16 22:46:30 -07:00
forward_list Enforce `assign_range()` mandates for sequence containers (#5086) 2024-11-19 01:39:38 -08:00
fstream Remove some functions defined in `_CRTBLD` blocks (#4005) 2023-09-14 12:07:27 -07:00
functional `<future>`: Make `packaged_task` accept move-only functors (#4946) 2024-10-11 21:13:09 -07:00
future `<future>`: Make `packaged_task` accept move-only functors (#4946) 2024-10-11 21:13:09 -07:00
generator P2502R2 `<generator>`: Synchronous Coroutine Generator For Ranges (#4953) 2024-09-19 13:56:20 -07:00
hash_map Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
hash_set Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
header-units.json Reduce inclusion for `<queue>`, `<stack>`, `<stacktrace>`, and `<thread>` (#5003) 2024-10-11 21:51:43 -07:00
initializer_list Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
iomanip Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
ios `<xiosbase>`: Remove non-conforming extension `ios_base::hexfloat` (#4345) 2024-01-30 12:30:32 -08:00
iosfwd Remove `_NODISCARD_FRIEND` workaround (#4782) 2024-07-05 00:16:13 -07:00
iostream Reduce inclusion for IO stream headers in C++23 (#4936) 2024-09-09 12:57:30 -07:00
iso646.h Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
istream Properly null-terminate output buffer in `basic_istream::get[line]` (#5073) 2024-11-14 12:31:57 -08:00
iterator Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
latch Update preprocessor `#else` and `#endif` comment (#3950) 2023-09-21 12:42:29 -07:00
limits `<cmath>`, `<limits>`: Locally disable `-Wnan-infinity-disabled` for Clang (#4990) 2024-10-11 21:31:20 -07:00
list Enforce `assign_range()` mandates for sequence containers (#5086) 2024-11-19 01:39:38 -08:00
locale `<locale>`: Hide some non-Standard functions of `locale::id` (#5067) 2024-11-08 09:39:15 -08:00
map Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
mdspan Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
memory Unwrapping output iterators in range algorithms (#5015) 2024-10-16 22:48:48 -07:00
memory_resource `static operator()` for stateless functors (#4358) 2024-02-06 01:18:25 -08:00
mutex Wait `condition_variable_any` for `steady_clock` (#4755) 2024-08-07 22:05:38 -07:00
new Toolset update: VS 2022 17.10 Preview 3 (#4576) 2024-04-12 11:09:33 -07:00
numbers Drop `inline`/`_INLINE_VAR` from templated `constexpr` variables in product and test codes (#4546) 2024-04-09 14:05:30 -07:00
numeric Guard `__restrict` usage for CUDA (#5061) 2024-11-08 09:20:42 -08:00
optional Clarify `optional::swap` conditions (#5065) 2024-11-08 09:32:14 -08:00
ostream Optimize `println()` overloads added in P3142R0 (#4672) 2024-10-24 07:13:00 -07:00
print Optimize `println()` overloads added in P3142R0 (#4672) 2024-10-24 07:13:00 -07:00
queue Reduce inclusion for `<queue>`, `<stack>`, `<stacktrace>`, and `<thread>` (#5003) 2024-10-11 21:51:43 -07:00
random Avoid using wider types in `generate_canonical` when the range of the random generator is a power of 2 (#4850) 2024-08-07 23:40:54 -07:00
ranges Casey's miscellaneous changes, definitive edition (#5014) 2024-10-16 22:46:30 -07:00
ratio Drop `inline`/`_INLINE_VAR` from templated `constexpr` variables in product and test codes (#4546) 2024-04-09 14:05:30 -07:00
regex `<regex>`: Silence CodeQL false positive warning (#5072) 2024-11-14 12:27:52 -08:00
scoped_allocator Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
semaphore Refactor `<limits>` usage (#4634) 2024-05-20 15:42:40 -07:00
set Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
shared_mutex Check `is_clock_v` for thread utilities before C++20 (#4585) 2024-04-18 18:46:44 -07:00
source_location `<source_location>`: Remove EDG workaround for DevCom-10199227 (#4939) 2024-09-09 13:17:10 -07:00
span Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
spanstream `<spanstream>`: Use `static_cast` to `std::span` to avoid ill-formed constructs (#4938) 2024-09-09 13:09:12 -07:00
sstream `<list>`, `<string>`: Remove allocator-moving tagged internal constructors (#4976) 2024-09-28 13:16:15 -07:00
stack Reduce inclusion for `<queue>`, `<stack>`, `<stacktrace>`, and `<thread>` (#5003) 2024-10-11 21:51:43 -07:00
stacktrace Reduce inclusion for `<queue>`, `<stack>`, `<stacktrace>`, and `<thread>` (#5003) 2024-10-11 21:51:43 -07:00
stdexcept Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
stdfloat Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
stop_token Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
streambuf Update preprocessor `#else` comment in product code to clarify which mode is where (#3900) 2023-08-10 16:48:21 -07:00
string Implement `formatter<vector<bool>::reference>` (#4133) 2023-11-29 12:29:21 -08:00
string_view Make `<string_view>` slimmer by default (#4633) 2024-05-30 09:17:42 -07:00
strstream Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
syncstream Various cleanups: `extern "C"` (#4143) 2023-11-07 05:09:49 -08:00
system_error Update CodeQL warning suppressions (#4985) 2024-09-28 13:28:10 -07:00
thread Reduce inclusion for `<queue>`, `<stack>`, `<stacktrace>`, and `<thread>` (#5003) 2024-10-11 21:51:43 -07:00
tuple Refactoring around `tuple-like`, `pair-like`, and `subrange` (#4983) 2024-10-11 21:27:15 -07:00
type_traits Auto-vectorize arrays `swap` (#4991) 2024-10-24 08:44:18 -07:00
typeindex `static operator()` for stateless functors (#4358) 2024-02-06 01:18:25 -08:00
typeinfo Toolset update: VS 2022 17.10 Preview 3 (#4576) 2024-04-12 11:09:33 -07:00
unordered_map Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
unordered_set Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
use_ansi.h Unify stringification macros (#4405) 2024-02-26 23:42:31 -08:00
utility Auto-vectorize arrays `swap` (#4991) 2024-10-24 08:44:18 -07:00
valarray Remove `_NODISCARD_FRIEND` workaround (#4782) 2024-07-05 00:16:13 -07:00
variant Short-circuit some `variant` constraints (#4966) 2024-09-28 12:45:12 -07:00
vector Enforce `assign_range()` mandates for sequence containers (#5086) 2024-11-19 01:39:38 -08:00
version Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
xatomic.h Improve ARM64 atomics for Clang (#4870) 2024-07-30 20:50:40 -07:00
xatomic_wait.h Temporarily restore support for Win7 / Server 2008 R2 (#4857) 2024-07-24 02:51:36 -07:00
xbit_ops.h Update CodeQL warning suppressions (#4985) 2024-09-28 13:28:10 -07:00
xcall_once.h Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
xcharconv.h Remove `_NODISCARD_FRIEND` workaround (#4782) 2024-07-05 00:16:13 -07:00
xcharconv_ryu.h `<xcharconv_ryu.h>`: `__umulh` is already an intrinsic for `_M_HYBRID_X86_ARM64` (#4330) 2024-01-18 21:21:30 -08:00
xcharconv_ryu_tables.h Drop `inline`/`_INLINE_VAR` from templated `constexpr` variables in product and test codes (#4546) 2024-04-09 14:05:30 -07:00
xcharconv_tables.h Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
xerrc.h Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
xfacet Update preprocessor `#else` comment in product code to clarify which mode is where (#3900) 2023-08-10 16:48:21 -07:00
xfilesystem_abi.h Fix `filesystem::directory_entry::refresh` on Win11 24H2 (#5077) 2024-11-14 12:08:53 -08:00
xhash Fix and extend key extraction for unique map/set containers (#5050) 2024-10-30 07:59:20 -07:00
xiosbase Add binary flag to xiosbase class to correct place (#4493) 2024-03-21 14:56:47 -07:00
xkeycheck.h Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
xlocale `<locale>`: Hide some non-Standard functions of `locale::id` (#5067) 2024-11-08 09:39:15 -08:00
xlocbuf Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
xlocinfo Various cleanups (#4230) 2023-12-07 08:41:33 -08:00
xlocmes Update preprocessor `#else` comment in product code to clarify which mode is where (#3900) 2023-08-10 16:48:21 -07:00
xlocmon Use `if constexpr` in locale facets (#5001) 2024-10-11 21:46:10 -07:00
xlocnum Use `if constexpr` in locale facets (#5001) 2024-10-11 21:46:10 -07:00
xloctime Use `if constexpr` in locale facets (#5001) 2024-10-11 21:46:10 -07:00
xmemory Fix and extend key extraction for unique map/set containers (#5050) 2024-10-30 07:59:20 -07:00
xnode_handle.h Add a Standard mode check to `<__msvc_print.hpp>` (#4111) 2023-10-25 16:37:48 -07:00
xpolymorphic_allocator.h Remove `_NODISCARD_FRIEND` workaround (#4782) 2024-07-05 00:16:13 -07:00
xsmf_control.h Toolset update: VS 2022 17.12 Preview 2, Clang 18.1.8 (#4947) 2024-09-11 20:13:13 -07:00
xstring `<list>`, `<string>`: Remove allocator-moving tagged internal constructors (#4976) 2024-09-28 13:16:15 -07:00
xthreads.h Wait `condition_variable_any` for `steady_clock` (#4755) 2024-08-07 22:05:38 -07:00
xtimec.h Various cleanups: `extern "C"` (#4143) 2023-11-07 05:09:49 -08:00
xtr1common Fix truncation warnings in `conjunction`/`disjunction` (#4846) 2024-08-07 23:27:15 -07:00
xtree Fix and extend key extraction for unique map/set containers (#5050) 2024-10-30 07:59:20 -07:00
xutility Vectorize `basic_string::rfind` (the single character overload) (#5087) 2024-11-19 01:44:15 -08:00
ymath.h Drop `#pragma once` in STL headers (#3895) 2023-07-26 11:54:17 -07:00
yvals.h Always use cmpxchg16b on x64 for `atomic_ref<16 bytes>` (#4751) 2024-07-05 00:39:01 -07:00
yvals_core.h Don't use `__restrict__` for CUDA (#5097) 2024-11-19 01:38:33 -08:00