Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2080 commits
Select commit Hold shift + click to select a range
a728288
`<xloctime>`: Silence CodeQL warning SM03231 about leap year arithmet…
StephanTLavavej Jul 15, 2025
b7181cd
Restore `wmemchr` optimization in `ranges::find` (#5628)
AlexGuteniev Jul 15, 2025
f9a8e57
Update _MSVC_STL_UPDATE to July 2025 (#5633)
Confuzzl Jul 15, 2025
a3678cc
Cleanup: Mostly remove `_VCRT_ALLOW_INTERNALS` (#5636)
StephanTLavavej Jul 15, 2025
dbdb1ea
Put else-return logic into tighter scope (#5643)
achabense Jul 15, 2025
f015db5
Silence ABI warning C5291 for the entire STL (#5645)
StephanTLavavej Jul 15, 2025
082d80a
Update WinSDK comments (#5659)
StephanTLavavej Jul 29, 2025
52e35aa
Remove MSVC-specific workarounds for references-to-functions (#5661)
joemmett Aug 1, 2025
907f3e7
`<xstring>`: Suppress code analysis warning C6510 for `basic_string` …
muellerj2 Aug 8, 2025
72d8110
Speculatively implement LWG-4270 Diagnose misuse of `std::projected::…
frederick-vs-ja Aug 8, 2025
96f154a
Speculatively implement LWG-4273 Standard execution policy types shou…
frederick-vs-ja Aug 8, 2025
c1ce930
`<regex>`: Use `std::search()` in skip heuristic (#5586)
muellerj2 Aug 8, 2025
4525436
`<regex>`: Remove usage of non-standard `_Uelem` from parser (#5592)
muellerj2 Aug 8, 2025
5bc9e93
Implement LWG-4222 `expected` constructor from a single value missing…
frederick-vs-ja Aug 8, 2025
9ed9371
Implement LWG-4242 `ranges::distance` does not work with volatile ite…
frederick-vs-ja Aug 8, 2025
fae8c55
Implement P3223R2 Making `istream::ignore()` Less Surprising (#5604)
frederick-vs-ja Aug 8, 2025
c2097a1
`<chrono>`: qualify `_Ugly` function calls to avoid ADL (#5629)
localspook Aug 8, 2025
a0168f1
`<xlocale>`: Use `static_cast` to eliminate implicit conversions betw…
YexuanXiao Aug 8, 2025
eadd3be
`Dev11_0000000_null_forward_iterators`: Avoid Clang warnings, guard h…
YexuanXiao Aug 8, 2025
f9b486e
`VSO_0000000_initialize_everything`: Avoid compiler warnings (#5655)
YexuanXiao Aug 8, 2025
5255207
`VSO_0000000_instantiate_iterators_misc`: Suppress deprecated volatil…
YexuanXiao Aug 8, 2025
1d5f1aa
`VSO_0180466_algorithm_overhauls`: Suppress `-Wcharacter-conversion` …
YexuanXiao Aug 8, 2025
93dee9e
`<chrono>`: Use designated aggregate initialization when returning `t…
frederick-vs-ja Aug 8, 2025
5f8b525
Update _MSVC_STL_UPDATE macro to August 2025 (#5664)
Gabboxl Aug 8, 2025
f95868e
Toolset update: VS 2022 17.14.12 Preview 1 (#5674)
StephanTLavavej Aug 16, 2025
1449cee
`<regex>`: Remove non-standard `_Uelem` from matcher (#5671)
muellerj2 Aug 16, 2025
8aa8f97
`<regex>`: Speed up skip optimization for default `regex_traits` in `…
muellerj2 Aug 16, 2025
67ff5c3
P0811R3_midpoint_lerp: Suppress warning C4756 (#5676)
StephanTLavavej Aug 16, 2025
d7df896
`<algorithm>`: Avoid integer overflow in `stable_sort()` and `ranges:…
StephanTLavavej Aug 16, 2025
a2686a0
`<regex>`: Compare against `char` directly (#5675)
StephanTLavavej Aug 16, 2025
07045f4
`P0811R3_midpoint_lerp`: Work around ARM64 assertions (#5687)
StephanTLavavej Aug 21, 2025
867bff9
`<filesystem>`: Fix the `path` returned when there is an error with `…
YexuanXiao Aug 25, 2025
abcac64
Optimize core loop of `_Count_vbool` (#5640)
localspook Aug 25, 2025
99cdd88
Partially implement P3697R1 Minor Additions To Standard Library Harde…
frederick-vs-ja Aug 25, 2025
a433b37
Replace N5008 to N5014 (#5681)
AkhileshPatidar04 Aug 25, 2025
023485c
`<regex>`: Move saved match state to the heap (#5682)
muellerj2 Aug 25, 2025
af4f9c8
Benchmark `count` for `vector<bool>` (#5684)
AlexGuteniev Aug 25, 2025
37d575e
Update llvm-project (#5688)
StephanTLavavej Aug 26, 2025
8722a5e
`<vector>`: Silence static analysis warning C26450 (#5707)
StephanTLavavej Sep 3, 2025
821cc9c
`<xloctime>`: Silence CodeQL warning SM03231 about leap years, again …
StephanTLavavej Sep 5, 2025
b2976dc
Build the benchmark with clang-cl only on x64 (#5704)
AlexGuteniev Sep 10, 2025
1a11f5d
Optimize `_Div_ceil<_Signed128>` (#5637)
JMazurkiewicz Sep 10, 2025
10b879e
CMake build: Add `/CETCOMPAT` for x64, `/guard:MEOW` for various arch…
matbech Sep 10, 2025
a0239a5
Add missing Mandates for `resize_and_overwrite` (#5695)
frederick-vs-ja Sep 10, 2025
d08317c
Promote internal `_Countl_zero` to `__msvc_bit_utils.hpp` to reduce c…
AlexGuteniev Sep 10, 2025
a9780c2
`<regex>`: Rename the matcher again (#5703)
muellerj2 Sep 10, 2025
8fa0bc8
`<atomic>`: Workaround `__iso_volatile_{load,store}64` being non-atom…
cpplearner Sep 10, 2025
09f81c8
Update _MSVC_STL_UPDATE macro to September 2025 (#5709)
Ziglag Sep 10, 2025
0cb8132
`<random>`: Fuse TR1 types into Standard types (#5712)
StephanTLavavej Sep 10, 2025
38d7248
Toolset update: MSVC Compiler 19.50 Preview 1, Clang 20 (#5717)
StephanTLavavej Sep 15, 2025
43e96b2
Fix a typo (#5713)
achabense Sep 15, 2025
135c5d7
Disable `/analyze` for libcxx (#5724)
StephanTLavavej Sep 22, 2025
b49a10b
Mark templates users shouldn't specialize with `no_specializations` a…
localspook Sep 22, 2025
4816d1d
`README.md`: expand benchmarking examples (#5589)
AlexGuteniev Sep 22, 2025
3d2b494
`<regex>`: Process positive lookahead assertions non-recursively (#5714)
muellerj2 Sep 22, 2025
5165af0
`<regex>`: Handle overflow and allocation failure when parsing repeti…
muellerj2 Sep 22, 2025
2510fe9
`<complex>`: use hardware FMA on Clang too (#5721)
AlexGuteniev Sep 22, 2025
3effbb0
Fix UB in `vector<bool>` by adding missing special case (#5726)
AlexGuteniev Sep 22, 2025
9e2d9ec
`<vector>`: Fix allocator types in reallocation guards (#5729)
StephanTLavavej Sep 22, 2025
6d24b53
Deduction failures in pointer interconvertibility trait tests (#5730)
joemmett Sep 22, 2025
49f0d9d
Block building for the wrong target arch in Developer Command Prompt …
cpplearner Sep 22, 2025
21f58af
Add `is_implicit_lifetime` trait (for Clang) (#5445)
TymianekPL Sep 25, 2025
af895f2
Improve existing `vector<bool>` benchmarks (#5732)
AlexGuteniev Sep 25, 2025
fa166f2
`<regex>`: Process negative lookahead assertions non-recursively (#5734)
muellerj2 Sep 25, 2025
5913185
`<algorithm>`: Optimize `sample()` and `shuffle()` with Lemire's algo…
StephanTLavavej Sep 25, 2025
358868a
Restore implicitly converting cases in the test for P0466R5 (#5737)
frederick-vs-ja Sep 25, 2025
48db51b
`<random>`: Prevent full-width shifts in `independent_bits_engine` (#…
MattStephanson Sep 25, 2025
395e9a6
Implement P2255R2 Type Traits To Detect References Binding To Tempora…
frederick-vs-ja Oct 3, 2025
c95e938
Vectorize `search_n` for CPUs with SSE4.2 but not AVX2 support; handl…
AlexGuteniev Oct 4, 2025
64c0c4f
Vectorize `mismatch` for clang-cl for odd element sizes (#5591)
AlexGuteniev Oct 4, 2025
34ee4af
`<type_traits>`: Partially unblock P0466R5 for Clang (#5621)
frederick-vs-ja Oct 4, 2025
b7c03bb
Optimize `any::swap` (#5710)
achabense Oct 4, 2025
46ec4fc
Add some coverage of constexpr `vector<bool>` (#5728)
AlexGuteniev Oct 4, 2025
6da859f
Fix non-inline `random_bool_vector` in benchmarks (#5742)
AlexGuteniev Oct 4, 2025
747eb50
`vector_algorithms.cpp`: Improve conformance by adding missing `templ…
AlexGuteniev Oct 4, 2025
3b1d7d2
`vector_algorithms.cpp`: remove unused functions (#5744)
AlexGuteniev Oct 4, 2025
ec67f7b
`<regex>`: Process disjunctions non-recursively (#5745)
muellerj2 Oct 4, 2025
834a2dc
Reactivate Clang UBSan test coverage (#5746)
StephanTLavavej Oct 4, 2025
012f813
Improve `<filesystem>` test coverage (#5749)
StephanTLavavej Oct 4, 2025
9e50ca6
fixing MSVC_STL_UPDATE Macro (#5752)
SamanSathenjeri Oct 4, 2025
ba64eaa
Final cleanups for `<experimental/filesystem>` (#5753)
StephanTLavavej Oct 4, 2025
665118f
Add missing `size_type` cast to `basic_string` (#5562)
frederick-vs-ja Oct 10, 2025
0803ae6
Implement LWG-3677 for `tuple` (#5669)
frederick-vs-ja Oct 10, 2025
5f63382
`vector_algorithms.cpp`: fix incorrect activation of bitmap find-meow…
AlexGuteniev Oct 10, 2025
9ba4a22
`vector_algorithms.cpp`: avoid cast to integral in `__std_bitset_from…
AlexGuteniev Oct 10, 2025
f3eff99
`vector_algorithms.cpp`: avoid unaligned access (#5760)
AlexGuteniev Oct 10, 2025
2251b37
`vector_algorithms.cpp`: remove incorrect `__assume` (#5761)
AlexGuteniev Oct 10, 2025
616c862
`<regex>`: Process minimum number of reps in simple loops non-recursi…
muellerj2 Oct 10, 2025
57c30ca
`<cmath>`: Restore `std::pow(x, 2)` accuracy (#5771)
StephanTLavavej Oct 10, 2025
7d6e34a
Remove non-Standard TR1 (#5763)
StephanTLavavej Oct 10, 2025
ce071fc
Remove non-Standard `<hash_map>` and `<hash_set>` (#5764)
StephanTLavavej Oct 10, 2025
db9ac24
Remove non-Standard `<experimental/filesystem>` (#5765)
StephanTLavavej Oct 10, 2025
85e4b57
`<xstring>`: Add more casts to `basic_string` for ASan (#5775)
StephanTLavavej Oct 10, 2025
3bcc719
Toolset update: MSVC Compiler 19.50.35702, test `<filesystem>` long p…
StephanTLavavej Oct 17, 2025
7f05724
Unicode 16 (#5571)
JMazurkiewicz Oct 17, 2025
5f88083
`<charconv>`: floating benchmark (#5700)
AlexGuteniev Oct 17, 2025
4f63fa0
`<regex>`: Process non-greedy and longest-mode simple loops non-recur…
muellerj2 Oct 17, 2025
7f60cfb
Cleanups for `<any>` (#5784)
achabense Oct 17, 2025
1c2c4d4
`<regex>`: Process greedy simple loops non-recursively (#5790)
muellerj2 Oct 22, 2025
b44cd81
Implement P3503R3 Make Type-Erased Allocator Use In `promise` And `pa…
frederick-vs-ja Oct 22, 2025
78bb452
`<ranges>`: Make `ranges::to` support creating unions (#5794)
frederick-vs-ja Oct 22, 2025
de8c84c
(Semi-)vectorize `includes` (#5590)
AlexGuteniev Oct 22, 2025
ea857c7
Vectorize find-like algorithms for Clang for more types (#5767)
AlexGuteniev Oct 22, 2025
6a57871
`<regex>`: Fix `regex_error` when matching a repeated pattern contain…
muellerj2 Oct 22, 2025
249cb01
Optimize `std::transform` for `vector<bool>` (#5769)
AlexGuteniev Oct 22, 2025
eb024e0
Fix GH_001923_filesystem_long_path_support/custombuild.pl for the MSV…
StephanTLavavej Oct 23, 2025
1717ac0
Update CRT build to .NET 8.0 (#5814)
StephanTLavavej Oct 27, 2025
8196ecf
`move_only_function`: remove workaround for broken `noexcept(param)` …
AlexGuteniev Oct 29, 2025
a98226c
`move_only_function`: eliminate the repeated part in call specializat…
AlexGuteniev Oct 29, 2025
71ebc1b
`<regex>`: Process generic loops non-recursively (#5798)
muellerj2 Oct 29, 2025
b439695
Unicode 17 (#5803)
cpplearner Oct 29, 2025
755f6c9
`<algorithm>`: Rework internal buffers for stable sorting algorithms …
frederick-vs-ja Oct 29, 2025
e91e27b
`<__msvc_threads_core.hpp>`: Use aligned byte arrays as aligned buffe…
frederick-vs-ja Oct 29, 2025
e21d834
Add ARM64 runtime test coverage (#5815)
StephanTLavavej Oct 29, 2025
7dff4d7
Add algorithm-specific detection macros for vectorization (#5801)
StephanTLavavej Oct 29, 2025
1118f37
Deprecate experimental coroutine headers (#5804)
StephanTLavavej Oct 30, 2025
cf36aa9
`<regex>`: Small cleanups after completion of non-recursive matcher (…
muellerj2 Nov 5, 2025
3f29c70
`<regex>`: Fix matching of loops with context-dependent empty matches…
muellerj2 Nov 5, 2025
67dbf14
`<regex>`: Skip stack unwinding when encountering a successful match …
muellerj2 Nov 5, 2025
e6b85df
Implement P3349R1 Converting Contiguous Iterators To Pointers (#5683)
NylteJ Nov 5, 2025
0609cbf
`<iterator>`: Remove `stdext::checked_array_iterator` and `stdext::un…
StephanTLavavej Nov 5, 2025
8784104
Add Neon implementation of std::swap_ranges (#5819)
hazzlim Nov 5, 2025
defc75b
<yvals_core.h>: Update _MSVC_STL_UPDATE to November 2025 (#5822)
ksuraev Nov 5, 2025
693e0fb
Add ARM64EC runtime test coverage (#5831)
StephanTLavavej Nov 12, 2025
30f792a
The Astonishing xmath Overhaul (#5836)
StephanTLavavej Nov 12, 2025
e028940
Remove non-Standard `basic_istream::ipfx()`/`isfx()`, `basic_ostream:…
StephanTLavavej Nov 12, 2025
764f101
Unwrap call of `function` passed to `move_only_function` (#5808)
AlexGuteniev Nov 12, 2025
e98de6d
`<__msvc_chrono.hpp>`: Optimize 24 MHz to nanoseconds conversion in `…
statementreply Nov 12, 2025
d806de4
`<regex>`: Perform simplified stack unwinding for lookahead assertion…
muellerj2 Nov 12, 2025
ab6dec6
Enable vectorization of std::rotate on ARM64 (#5845)
hazzlim Nov 12, 2025
429f145
Toolset update: MSVC Compiler 19.50.35717 (#5879)
StephanTLavavej Nov 19, 2025
b6608a6
Standard Library Modules: Transition away from OS-33790456 (#5805)
davidmrdavid Nov 19, 2025
a3cc221
Prepare `move_only_function` machinery for future C++26 interactions …
AlexGuteniev Nov 19, 2025
44c4abc
`<regex>`: Remove capture extent vectors from stack frames (#5865)
muellerj2 Nov 19, 2025
a61404c
Implement LWG-4243 `as_bytes`/`as_writable_bytes` is broken with `spa…
frederick-vs-ja Nov 19, 2025
5bc755e
Implement LWG-4253 `basic_const_iterator` should provide `iterator_ty…
frederick-vs-ja Nov 19, 2025
5ad3cb0
Implement LWG-4294 `bitset(const CharT*)` constructor needs to be con…
frederick-vs-ja Nov 19, 2025
ee05a89
Add Neon implementations of std::reverse, std::reverse_copy (#5870)
hazzlim Nov 19, 2025
b3d928e
Make sure expected `__isa_enabled` bit was set before disabling it in…
AlexGuteniev Nov 19, 2025
cdf6dc5
Fix operator precedence warning for right shift and bitwise AND (#5875)
SiliconA-Z Nov 19, 2025
92dedaa
Fix operator precedence warning for logical AND and logical OR (#5876)
SiliconA-Z Nov 19, 2025
bbe7079
Add stl-lit flag to show test run time histogram (#5878)
AlexGuteniev Nov 19, 2025
5459853
Implement LWG-4266: `layout_stride::mapping` should treat empty mappi…
JMazurkiewicz Nov 19, 2025
e34ca44
Update llvm-project and toolset: MSVC Compiler 19.50.35719 (#5888)
StephanTLavavej Nov 27, 2025
fafda46
Implement LWG-4274: The chrono::hh_mm_ss constructor is ill-formed fo…
vmichal Nov 27, 2025
1248f54
Implement LWG-4257: Stream insertion for chrono::local_time should be…
vmichal Nov 27, 2025
20e274b
Implement LWG-4398: `enable_nonlocking_formatter_optimization` should…
JMazurkiewicz Nov 27, 2025
2725c36
Implement LWG-4301: condition_variable{_any}::wait_{for, until} shoul…
vmichal Nov 27, 2025
e7b1c23
Implement LWG-4366: Heterogeneous comparison of expected may be ill-f…
vmichal Nov 27, 2025
1326ff9
Implement LWG-4399 `enable_nonlocking_formatter_optimization` for `pa…
vmichal Nov 27, 2025
1e6d927
Implement LWG-4272: For `rank == 0`, `layout_stride` is atypically co…
JMazurkiewicz Nov 27, 2025
0cb7f5b
Implement LWG-4312 Const and value category mismatch for `allocator_a…
frederick-vs-ja Nov 27, 2025
5ee5b61
Remove comments after LWG-3454 "pointer_traits::pointer_to should be …
vmichal Nov 27, 2025
a6b014c
Enable bidirectional optimization for non-common ranges in `std::rang…
mirion-dev Nov 27, 2025
cf4bfd3
`<regex>`: Mark more loops as simple (#5889)
muellerj2 Nov 27, 2025
3099153
Perform stricter checks in `chrono::is_clock_v` (#5892)
vmichal Nov 27, 2025
e07e179
`<chrono>`: Replace an elaborate table with a `switch` (#5905)
StephanTLavavej Nov 27, 2025
6b485c2
`<chrono>`: Overhaul `zoned_time` to use concepts instead of SFINAE (…
StephanTLavavej Nov 27, 2025
fdadbc5
`<random>`: Replace inaccurate `_XLgamma()` with UCRT `lgamma()` (#5891)
StephanTLavavej Nov 27, 2025
2e27f1f
Remove the `/RTCc` escape hatch (#5906)
StephanTLavavej Nov 27, 2025
b09d18a
`<regex>`: Remove capture validity vectors from stack frames (#5918)
muellerj2 Dec 1, 2025
e36f2f1
Fix call unwrapping optimization (#5919)
AlexGuteniev Dec 1, 2025
f9db62a
Clang support for LWG-3617 `function`/`packaged_task` deduction guide…
StephanTLavavej Dec 1, 2025
8557b90
Unify locale helpers with `if constexpr` (#5923)
StephanTLavavej Dec 1, 2025
8cc5158
Various cleanups (#5924)
StephanTLavavej Dec 1, 2025
ca6b464
Simplify away `_STL_WIN32_WINNT` machinery for bincompat functions (#…
StephanTLavavej Dec 1, 2025
c370e05
`<xlocnum>`: Defend against `sprintf_s()` failure in `num_put::do_put…
StephanTLavavej Dec 2, 2025
93837db
Implement LWG-3343 Ordering of calls to `unlock()` and `notify_all()`…
vmichal Dec 8, 2025
c180c28
Backport P2404R3 Move-Only Types For Comparison Concepts to C++20 (#5…
frederick-vs-ja Dec 8, 2025
00db689
Update _MSVC_STL_UPDATE to December 2025 (#5930)
MannPatel1236 Dec 8, 2025
f1a6402
`<xutility>`: Fix incorrect `noexcept` specification of `_Debug_lt_pr…
NylteJ Dec 8, 2025
46ecf11
Backport LWG-3187 to pre-C++20 modes (#5933)
frederick-vs-ja Dec 8, 2025
df177d7
Disallow specializing `bitset` and `ratio` (#5937)
frederick-vs-ja Dec 8, 2025
3635601
`<regex>`: Avoid stack growth in simple loops (#5939)
muellerj2 Dec 8, 2025
e26c68a
`GH_000685_condition_variable_any`: Revert test changes for LWG-4301 …
StephanTLavavej Dec 8, 2025
0839948
`<mutex>`: Use `if constexpr` for `lock()` and `try_lock()` (#5941)
cpplearner Dec 8, 2025
c4d3fba
Remove `remove_cv_t` from standard integer type checks (#5946)
smundhra-git Dec 8, 2025
88db4d5
`<chrono>`: Properly handle `duration` with unsigned rep when formatt…
vmichal Dec 8, 2025
da23b20
Test tooling: Use stricter regex for lines in `expected_results.txt` …
vmichal Dec 11, 2025
b607409
`<regex>`: Revise the stack limit (#5954)
muellerj2 Dec 11, 2025
7c0b1c4
Toolset update: MSVC Compiler 19.50.35720, update llvm-project (#5955)
StephanTLavavej Dec 11, 2025
cbe2ee9
Update tests for upcoming compiler changes to `consteval` (#5960)
StephanTLavavej Dec 12, 2025
641410d
Use division by 100 in `to_string` for integers (#5691)
AlexGuteniev Jan 8, 2026
7364b42
Implement P3016R6 Resolve Inconsistencies In `begin`/`end` For `valar…
vmichal Jan 8, 2026
58d2910
Enable vectorized minmax_element using Neon on ARM64 (#5949)
hazzlim Jan 8, 2026
eec1e28
The Uncanny xmath Overhaul (#5959)
StephanTLavavej Jan 8, 2026
649a76a
`<regex>`: Simplify unwinding (#5961)
muellerj2 Jan 8, 2026
12b5859
Update working draft revision to N5032 (#5967)
TPPPP72 Jan 8, 2026
e7d5bf7
`<atomic>`: drop `_Atomic_reinterpret_as` (#5973)
AlexGuteniev Jan 8, 2026
b3f2c67
Vectorize `replace_copy` for x64 / x86 manually (#5980)
AlexGuteniev Jan 8, 2026
ba946a1
updated _MSVC_STL_UPDATE to January 2026 (#5985)
chai-shai Jan 8, 2026
4634ad4
Fix no-match handling when calling `memchr`/`wmemchr` on ARM64EC (#5993)
hazzlim Jan 8, 2026
32db7bd
Toolset update: MSVC Compiler 19.50.35722 (#6011)
StephanTLavavej Jan 15, 2026
f10833d
STL.natvis: Add `c_str` intrinsic function (#5997)
gregg-miskelly Jan 15, 2026
44821d9
Add Neon implementation of minmax (#5963)
hazzlim Jan 15, 2026
9553d3a
Add Neon implementation of `find` for ARM64 targets (#6003)
hazzlim Jan 15, 2026
e98005d
`<regex>`: Revise complexity limit (#6005)
muellerj2 Jan 15, 2026
46d99b6
Remove workarounds for ancient Clang versions (#6012)
StephanTLavavej Jan 15, 2026
c865e85
Update llvm-project (#6006)
StephanTLavavej Jan 15, 2026
f74acb0
`<functional>`: unwrap `move_only_function` with abominable and noexc…
AlexGuteniev Jan 20, 2026
6f769cb
Test that various Standard headers provide iterator range access func…
vmichal Jan 20, 2026
f649288
`<vector>`: Avoid off-by-default warning C4365 in `vector<bool>` copy…
StephanTLavavej Jan 20, 2026
e543428
`STL.natvis`: Add visualizers for `ranges::less` and other comparison…
vmichal Jan 20, 2026
855b004
`STL.natvis`: Improve iterator visualizations (#6019)
vmichal Jan 20, 2026
d8e8e6f
Add Neon implementation of `is_sorted_until` (#6018)
hazzlim Jan 20, 2026
2d6f26b
`<cmath>`: Tolerate 80-bit `long double` (#6021)
statementreply Jan 20, 2026
23b2324
`<regex>`: Optimize matching of branchless loops (#6022)
muellerj2 Jan 20, 2026
3f76681
`<regex>`: Skip initial NFA nodes that do nothing during matching (#6…
muellerj2 Jan 20, 2026
b379eb3
`<regex>`: Fix reentrant loops containing backreferences (#6055)
muellerj2 Feb 2, 2026
353b2b9
Add Neon implementation of `find_last` (#6030)
hazzlim Feb 2, 2026
7f2aae1
Add Neon implementation of `count` (#6049)
hazzlim Feb 2, 2026
e1a1a13
`<functional>`: add missed `function` in `move_only_function` coverag…
AlexGuteniev Feb 2, 2026
50d29b5
`<random>`: Remove non-Standard inheritance from piecewise distributi…
frederick-vs-ja Feb 2, 2026
f509417
Document some vector algorithms structure (#6039)
AlexGuteniev Feb 2, 2026
0fe0545
`<fstream>`: comment on `FILE*` ownership (#6043)
AlexGuteniev Feb 2, 2026
793b6f2
Fix off-by-one error in `__std_get_cvt` (#6059)
cpplearner Feb 2, 2026
3f638e3
Implement LWG-3090 What is [time.duration.cons]/4's "no overflow is i…
frederick-vs-ja Feb 2, 2026
7f083b9
Implement LWG-3436 `std::construct_at` should support arrays (#5920)
frederick-vs-ja Feb 2, 2026
a690f84
Update submodules: Boost.Math 1.90.0, Google Benchmark 1.9.5, LLVM (#…
StephanTLavavej Feb 2, 2026
95029ca
`STL.natvis`: add `extents` visualizer (#6053)
JMazurkiewicz Feb 11, 2026
cd1b544
P0429R9 `<flat_map>` and P1222R4 `<flat_set>` (#6071)
StephanTLavavej Feb 11, 2026
6081666
Added Arm64 feature detections in STL (#6067)
jaykang10 Feb 11, 2026
1ab2a9e
Add Neon implementation of `adjacent_find` (#6066)
hazzlim Feb 11, 2026
834c717
Add Neon implementation of `mismatch` (#6075)
hazzlim Feb 11, 2026
4e9e747
Add Neon implementation of `includes` (#6076)
hazzlim Feb 11, 2026
116f1cb
Optimize `transform` of `vector<bool>` for more predicates (#5796)
AlexGuteniev Feb 11, 2026
0d484dd
Optimize `all_of` / `any_of` / `none_of` for `vector<bool>` with some…
AlexGuteniev Feb 11, 2026
6c010d5
Improve vectorized `string::find_meow_of` for small bitmap cases (#6080)
AlexGuteniev Feb 11, 2026
0c32303
Implement P3860R1 Make `atomic_ref<T>` Convertible To `atomic_ref<con…
frederick-vs-ja Feb 11, 2026
aaeb6b6
Reject overlong UTF-8 forms in `_Mbrtowc` and add test case (#6060)
cpplearner Feb 11, 2026
6852554
`<filesystem>`: Fix `filesystem::copy()` for junctions on x86 (#6064)
StephanTLavavej Feb 11, 2026
60147bb
`<iomanip>`: Add missing Mandates to `get_money`/`put_money` (#6072)
frederick-vs-ja Feb 11, 2026
b352c2c
Use `extern "C++"` scopes for explicit specializations after P2615R1 …
StephanTLavavej Feb 11, 2026
0921554
Categorize some threading libc++ test skip (#6073)
AlexGuteniev Feb 11, 2026
41b2771
Simplify `nodiscard` macros (#6061)
StephanTLavavej Feb 11, 2026
7703c77
Update comments to reflect standardized predicate move guarantee; (#6…
iskandarem Feb 11, 2026
2fede4d
updated _MSVC_STL_UPDATE (#6063)
Camden-Kirkpatrick Feb 11, 2026
e2ef398
Implement LWG-4037 Static data members of `ctype_base` are not yet re…
frederick-vs-ja Feb 12, 2026
b77a97c
Improve test diagnostics when `expected_results.txt` contains syntax …
vmichal Feb 17, 2026
6750eaa
These tests appear to be passing under ASan (#6083)
AlexGuteniev Feb 17, 2026
7f41334
`<variant>`: Fix non-trivial `variant` copy assignment by using more …
frederick-vs-ja Feb 17, 2026
cb3428a
Enable ARM64EC vector algorithms (#6084)
AlexGuteniev Feb 17, 2026
8e0c6ff
Vector algorithms cleanups (#6089)
AlexGuteniev Feb 17, 2026
ec9cf0d
Toolset update: MSVC Compiler 19.51.36014 (#6095)
StephanTLavavej Feb 24, 2026
d9a326b
Add Neon implementation of `replace_copy` (#6090)
hazzlim Feb 24, 2026
fbaff7a
Add Neon implementation of `find_first_of` (#6094)
hazzlim Feb 24, 2026
d082ee0
Introduce macro for `minmax_element` vectorization for 64-bit integer…
AlexGuteniev Feb 24, 2026
a072dca
`_Locinfo`: Use `_wsetlocale` to query and restore locales (#5781)
lb90 Feb 24, 2026
333b1df
`<algorithm>`: Implement batched random integer generation for `shuff…
FranciscoThiesen Feb 24, 2026
5c9d98c
fix: improper use of ucal_inDaylightTime (#6097)
daksh-goyal Feb 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
273 changes: 219 additions & 54 deletions .clang-format

Large diffs are not rendered by default.

5 changes: 5 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,12 @@

# Ensure GitHub detects our C++ code as C++ code.
/stl/inc/** linguist-language=C++
/stl/modules/** linguist-language=C++
/stl/src/** linguist-language=C++
*.h linguist-language=C++

# Ensure GitHub detects lit.cfg and lit.local.cfg as Python instead of HAProxy.
*.cfg linguist-language=Python

# Ensure GitHub detects our Perl legacy test harness code as Perl code instead of Raku.
*.pl linguist-language=Perl
54 changes: 37 additions & 17 deletions .github/ISSUE_TEMPLATE/bug-report.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
---
name: Bug Report
about: Report a bug in the STL
title: "<header>: Problem"
title: "`<header>`: Problem"
labels: ''
assignees: ''

---

**Describe the bug**
# Describe the bug
A clear and concise description of what the bug is. Please check that you've
read the guidelines for submitting STL bug reports in `README.md`. If you are
having problems with any component that is not the STL, instructions to get
to the right place are there.

**Command-line test case**
# Command-line test case
```
C:\Temp>type repro.cpp
#include <iostream>
Expand All @@ -26,12 +26,18 @@ int main() {
std::cout << "test failure\n";
}

C:\Temp>cl /EHsc /W4 /WX .\repro.cpp
Microsoft (R) C/C++ Optimizing Compiler Version 19.23.28019.1 for x64
C:\Temp>cl /EHsc /W4 /WX /std:c++latest .\repro.cpp
Microsoft (R) C/C++ Optimizing Compiler Version 19.36.32522 for x64
Copyright (C) Microsoft Corporation. All rights reserved.

/std:c++latest is provided as a preview of language features from the latest C++
working draft, and we're eager to hear about bugs and suggestions for improvements.
However, note that these features are provided as-is without support, and subject
to changes or removal as the working draft evolves. See
https://go.microsoft.com/fwlink/?linkid=2045807 for details.

repro.cpp
Microsoft (R) Incremental Linker Version 14.23.28019.1
Microsoft (R) Incremental Linker Version 14.36.32522.0
Copyright (C) Microsoft Corporation. All rights reserved.

/out:repro.exe
Expand All @@ -41,25 +47,39 @@ C:\Temp>.\repro.exe
test failure
```

**Expected behavior**
# Expected behavior
A clear and concise description of what you expected to happen.
Alternatively, include `static_assert` or `assert` lines in your
test case above whose failure clearly indicates the problem.

**STL version**
* Option 1: Visual Studio version
* Displayed in Help > About Microsoft Visual Studio
* Example:
# STL version
* Option 1: MSVC Compiler version
+ Example:
```
C:\Temp>cl.exe
Microsoft (R) C/C++ Optimizing Compiler Version 19.50.35503 for x64
Copyright (C) Microsoft Corporation. All rights reserved.

usage: cl [ option... ] filename... [ /link linkoption... ]
```
Microsoft Visual Studio Community 2019 Preview
Version 16.5.0 Preview 5.0
* Option 2: `_MSVC_STL_UPDATE` value
+ Example:
```
C:\Temp>type meow.cpp
#include <iostream>
int main() {
std::cout << _MSVC_STL_UPDATE << "\n";
}

* Option 2: git commit hash
* Example:
C:\Temp>cl /EHsc /nologo /W4 meow.cpp && meow
meow.cpp
202507
```
* Option 3: git commit hash
+ Example:
```
https://github.com/microsoft/STL/commit/2195148
https://github.com/microsoft/STL/commit/219514876ea86491de191ceaa88632616bbc0f19
```

**Additional context**
# Additional context
Add any other context about the problem here.
9 changes: 3 additions & 6 deletions .github/ISSUE_TEMPLATE/cxx23-feature.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,6 @@ and the publication of the papers. When the papers are available,
the https://wg21.link redirector will start working.

Feature-test macro:
`#define MACRO_NAME MACRO_VALUE`

Note: We're still working on finishing C++20. Until we're done
with that (and the compiler implements distinct `/std:c++20` and
`/std:c++latest` options), we won't be able to review PRs for
C++23 features.
```cpp
#define MACRO_NAME MACRO_VALUE
```
39 changes: 39 additions & 0 deletions .github/workflows/update-status-chart.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

name: Update Status Chart
on:
schedule:
- cron: "0 7 * * *"
workflow_dispatch:
permissions:
contents: write
jobs:
build:
if: ${{ github.repository == 'microsoft/STL' }}
runs-on: ubuntu-latest
steps:
- name: Checkout gh-pages
uses: actions/checkout@v6
with:
ref: gh-pages
- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: ">=25.2.1"
- name: Install Packages
run: |
npm ci
- name: Compile And Run gather_stats.mts
run: |
SECRET_GITHUB_PERSONAL_ACCESS_TOKEN="${{ github.token }}" npm run gather
- name: Compile And Bundle status_chart.mts
run: |
npm run make
- name: Commit Changes
run: |
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add src/daily_table.mts src/monthly_table.mts built/status_chart.mjs
git diff-index --quiet HEAD || git commit -m "Automated update."
git push origin gh-pages
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,5 @@ __pycache__/
/build/
/out/
/tools/out/
/CMakeLists.txt.user
*.log
10 changes: 6 additions & 4 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

[submodule "vcpkg"]
path = vcpkg
url = https://github.com/microsoft/vcpkg.git
fetchRecurseSubmodules = false
[submodule "llvm-project"]
path = llvm-project
url = https://github.com/llvm/llvm-project.git
[submodule "boost-math"]
path = boost-math
url = https://github.com/boostorg/math.git
[submodule "benchmarks/google-benchmark"]
path = benchmarks/google-benchmark
url = https://github.com/google/benchmark.git
11 changes: 11 additions & 0 deletions .mailmap
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

# This file maps author and committer email addresses to canonical names and email
# addresses for display in the output of `git log` and `git blame`.
# Format:
# Canonical Name <canonical@example.com> <commit@example.com>


Amy Wishnousky <amyw@microsoft.com> <stwish@microsoft.com>
Anju del Moral Gonzalez <delMoralGonzalez.Anju@microsoft.com> <judelmor@microsoft.com>
26 changes: 22 additions & 4 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,37 @@
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
{
"C_Cpp.autoAddFileAssociations": false,
"editor.formatOnSave": true,
"editor.formatOnSave": false,
"[cpp]": {
"editor.formatOnSave": true
},
"files.associations": {
".clang-format": "yaml",
"header-units.json": "jsonc",
"**/stl/inc/**": "cpp"
},
"files.eol": "\r\n",
"files.exclude": {
"benchmarks/google-benchmark": true,
"boost-math": true,
"llvm-project": true,
"stl/msbuild": true,
"vcpkg": true
"stl/msbuild": true
},
"files.insertFinalNewline": true,
"files.trimFinalNewlines": true,
"files.trimTrailingWhitespace": true
"files.trimTrailingWhitespace": true,
"git.ignoredRepositories": [
"benchmarks/google-benchmark",
"boost-math",
"llvm-project"
],
"python.analysis.extraPaths": [
"./llvm-project/libcxx/utils",
"./llvm-project/llvm/utils/lit",
"./tests/utils"
],
"search.exclude": {
"stl/src/xcharconv_ryu_tables.cpp": true,
"tests/std/tests/P0067R5_charconv/*test_cases*.hpp": true
}
}
Loading