* PowerShell 7.3.4.
* New pool.
* VS 2022 17.7 Preview 1.
* Require Clang 16.
* Remove workaround for VSO-1753916 'C++23 tuple causes x86chk assertion: !"If lookup found RDSymbol before it should find something this time, too", ParseTree.cpp 10376'.
* Remove workarounds for VSO-1799670 "EDG rejects constexpr vector in debug mode with 'attempt to access expired storage' errors, part 3".
* Remove workarounds for LLVM-44833 "[concepts] deferred substitution into requirements of class template members not implemented".
* [llvm16] Clang has implemented P0960; unskip tests that now pass, and remove workaround in `P2474R2_views_repeat`.
* [llvm16] Clang now warns about overriding `/fp:strict` with `-ffp-contract`. Update `floating_point_model_matrix.lst` to silence these warnings.
* [llvm16] Fix redeclaration of `adjacent_transform_view` (atomic constraint expressions effectively cannot be reproduced since each utterance is distinct).
* [llvm16] Disambiguate `tuple` comparison operators.
* [llvm16] Workaround LLVM-62290, which has been fixed for Clang 17, in `<ranges>`.
* [llvm16] Remove workarounds for a couple of `TRANSITION, Clang 16` issues in `<ranges>` and `<type_traits>`.
* [llvm16] Perma-workaround unfiled clang bug in `P0896R4_views_take`.
* [llvm16 followup] Improve arrow comments.
* [llvm16 followup] We `_EXPORT_STD` both declarations and definitions.
* Disable UBSan to work around GH 3568 "Investigate why Clang/LLVM UBSan doesn't link".
* Guard `_addcarry_u64`/`_subborrow_u64` for Clang.
* `LDBL_DECIMAL_DIG` is now missing for Clang too.
* Although LLVM-46207 is still open, Clang now likes tgmath.h.
* Cite LLVM-62096 "Clang complains about concept depending on itself".
* Add workaround for LLVM-62762 "32-bit-only misoptimization of printf calls on Windows".
* clang-format 16, no manual changes.
The changes are almost entirely positive, with no horrible mangling,
and limited weirdness around `&`, `&&`, and `*`. No need for manual fixups.
* .clang-format: Update link to Clang 16.
* .clang-format: Sort defaults, no behavioral changes.
* .clang-format: Drop commented-out defaults, no behavioral changes.
`BreakBeforeInheritanceComma` and `BreakConstructorInitializersBeforeComma`
were never documented and aren't printed out by `-dump-config` anymore.
The weird empty `BasedOnStyle` isn't printed out by `-dump-config` anymore.
`ConstructorInitializerAllOnOneLineOrOnePerLine` and `AllowAllConstructorInitializersOnNextLine`
are now deprecated and aren't printed out by `-dump-config` anymore.
* .clang-format: `DeriveLineEnding` and `UseCRLF` were deprecated and fused into `LineEnding`, no behavioral changes.
* .clang-format: `AlignTrailingComments` is no longer a bool. Use the new options, no behavioral changes.
* .clang-format: `SortUsingDeclarations` (which we didn't customize) is no longer a bool, no behavioral changes.
* .clang-format: Add new defaults, no behavioral changes.
* .clang-format: `InsertNewlineAtEOF` is new, set it to `true`. Doesn't change any files right now.
* .clang-format: `RemoveSemicolon` is new, set it to `true`.
* clang-format 16, no manual changes - remove semicolons.
---------
Co-authored-by: Casey Carter <Casey@Carter.net>
Also
- Move `std::iter_swap` from `<utility>` to `<algorithm>`.
- In `_Partition_by_median_guess_unchecked`, only evaluate `_Prev_iter(_Glast)` once.
Fixes#2692.
Towards #182.
- This PR drops all section numbers except for D.x in `<yvals_core.h>`. I decided to cite WG21-N4868 for C++20 deprecation.
- Some citations in `<format>` are intentionally not updated because WG21-P2675R1 and LWG-3631 are not implemented yet.
- Citations in test files are not updated, but I think I'll do it soon.
- Drive-by change: a comment for `move_only_function`'s move assignment operator explaining why it's `noexcept(false)` (see https://github.com/microsoft/STL/pull/3565#discussion_r1134755402 and https://github.com/microsoft/STL/issues/2278#issuecomment-943360927).
---------
Co-authored-by: Stephan T. Lavavej <stl@nuwen.net>
Co-authored-by: Nicole Mazzuca <mazzucan@outlook.com>
Co-authored-by: Casey Carter <cacarter@microsoft.com>