Files
RedBear-OS/local/recipes/dev/libclc/source/libcxx/docs/Status/Cxx2cPapers.csv
T
vasilito cb424d7448 build: static patch-sanity linter (shift-left the malformed-patch class)
verify-patch-sanity.py validates every active recipe .patch has internally-
consistent hunk line counts — catching the 'malformed patch at line N' failure
at commit/CI/preflight time instead of hours into a cook. This cycle hit that
class three times (qtwaylandscanner, sddm, xwayland), each only discovered when
cookbook tried to apply the patch.

Running it across the repo found 29 latent malformed patches (validated against
GNU patch: e.g. relibc/P3-sysv-ipc reproduces 'malformed patch at line 22').
They were harmless only because they sit in vendored recipes (baked, not re-
applied) — but would fail on any version-bump re-derivation. --fix recounts the
hunk headers (body untouched) and repaired all 29.

Wired into build-preflight.sh (Phase 1.0D) and redbear-ci.yml, with a unit test
(test-patch-sanity.sh). Skips archived/legacy trees and unvalidatable formats
(empty placeholders, bare-@@ git hunks).
2026-08-01 05:13:02 +03:00

18 KiB

1Paper #Paper NameMeetingStatusFirst released versionNotes
2`P2497R0 <https://wg21.link/P2497R0>`__Testing for success or failure of ``<charconv>`` functions2023-06 (Varna)|Complete|18
3`P2592R3 <https://wg21.link/P2592R3>`__Hashing support for ``std::chrono`` value classes2023-06 (Varna)
4`P2587R3 <https://wg21.link/P2587R3>`__``to_string`` or not ``to_string``2023-06 (Varna)
5`P2562R1 <https://wg21.link/P2562R1>`__``constexpr`` Stable Sorting2023-06 (Varna)|Complete|21
6`P2545R4 <https://wg21.link/P2545R4>`__Read-Copy Update (RCU)2023-06 (Varna)
7`P2530R3 <https://wg21.link/P2530R3>`__Hazard Pointers for C++262023-06 (Varna)
8`P2538R1 <https://wg21.link/P2538R1>`__ADL-proof ``std::projected``2023-06 (Varna)|Complete|18
9`P2495R3 <https://wg21.link/P2495R3>`__Interfacing ``stringstream``\s with ``string_view``2023-06 (Varna)|Complete|19
10`P2510R3 <https://wg21.link/P2510R3>`__Formatting pointers2023-06 (Varna)|Complete|17Implemented as a DR against C++20. (MSVC STL and libstdc++ will do the same.)
11`P2198R7 <https://wg21.link/P2198R7>`__Freestanding Feature-Test Macros and Implementation-Defined Extensions2023-06 (Varna)
12`P2338R4 <https://wg21.link/P2338R4>`__Freestanding Library: Character primitives and the C library2023-06 (Varna)
13`P2013R5 <https://wg21.link/P2013R5>`__Freestanding Language: Optional ``::operator new``2023-06 (Varna)
14`P2363R5 <https://wg21.link/P2363R5>`__Extending associative containers with the remaining heterogeneous overloads2023-06 (Varna)
15`P1901R2 <https://wg21.link/P1901R2>`__Enabling the Use of ``weak_ptr`` as Keys in Unordered Associative Containers2023-06 (Varna)
16`P1885R12 <https://wg21.link/P1885R12>`__Naming Text Encodings to Demystify Them2023-06 (Varna)
17`P0792R14 <https://wg21.link/P0792R14>`__``function_ref``: a type-erased callable reference2023-06 (Varna)
18`P2874R2 <https://wg21.link/P2874R2>`__P2874R2: Mandating Annex D Require No More2023-06 (Varna)|Complete|12
19`P2757R3 <https://wg21.link/P2757R3>`__Type-checking format args2023-06 (Varna)
20`P2637R3 <https://wg21.link/P2637R3>`__Member ``visit``2023-06 (Varna)|Complete|19Change of ``__cpp_lib_variant`` is completed in LLVM 20. Change of ``__cpp_lib_format`` is blocked by `P2419R2 <https://wg21.link/P2419R2>`__.
21`P2641R4 <https://wg21.link/P2641R4>`__Checking if a ``union`` alternative is active2023-06 (Varna)
22`P1759R6 <https://wg21.link/P1759R6>`__Native handles and file streams2023-06 (Varna)|Complete|18
23`P2697R1 <https://wg21.link/P2697R1>`__Interfacing ``bitset`` with ``string_view``2023-06 (Varna)|Complete|18
24`P1383R2 <https://wg21.link/P1383R2>`__More ``constexpr`` for ``<cmath>`` and ``<complex>``2023-06 (Varna)
25`P2734R0 <https://wg21.link/P2734R0>`__Adding the new SI prefixes2023-06 (Varna)|Complete|17
26`P2548R6 <https://wg21.link/P2548R6>`__``copyable_function``2023-06 (Varna)
27`P2714R1 <https://wg21.link/P2714R1>`__Bind front and back to NTTP callables2023-06 (Varna)|Partial|20
28`P2630R4 <https://wg21.link/P2630R4>`__``submdspan``2023-06 (Varna)
29
30`P0543R3 <https://wg21.link/P0543R3>`__Saturation arithmetic2023-11 (Kona)|Complete|18
31`P2407R5 <https://wg21.link/P2407R5>`__Freestanding Library: Partial Classes2023-11 (Kona)
32`P2546R5 <https://wg21.link/P2546R5>`__Debugging Support2023-11 (Kona)
33`P2905R2 <https://wg21.link/P2905R2>`__Runtime format strings2023-11 (Kona)|Complete|18
34`P2918R2 <https://wg21.link/P2918R2>`__Runtime format strings II2023-11 (Kona)|Complete|18
35`P2909R4 <https://wg21.link/P2909R4>`__Fix formatting of code units as integers (Dude, where’s my ``char``?)2023-11 (Kona)|Complete|18
36`P0952R2 <https://wg21.link/P0952R2>`__A new specification for ``std::generate_canonical``2023-11 (Kona)
37`P2447R6 <https://wg21.link/P2447R6>`__``std::span`` over an initializer list2023-11 (Kona)|Complete|18
38`P2821R5 <https://wg21.link/P2821R5>`__``span.at()``2023-11 (Kona)|Complete|18
39`P2868R3 <https://wg21.link/P2868R3>`__Remove Deprecated ``std::allocator`` Typedef From C++262023-11 (Kona)|Complete|18
40`P2870R3 <https://wg21.link/P2870R3>`__Remove ``basic_string::reserve()`` From C++262023-11 (Kona)|Complete|18
41`P2871R3 <https://wg21.link/P2871R3>`__Remove Deprecated Unicode Conversion Facets from C++262023-11 (Kona)|Complete|18
42`P2819R2 <https://wg21.link/P2819R2>`__Add tuple protocol to complex2023-11 (Kona)|Complete|19
43`P2937R0 <https://wg21.link/P2937R0>`__Freestanding: Remove ``strtok``2023-11 (Kona)
44`P2833R2 <https://wg21.link/P2833R2>`__Freestanding Library: inout expected span2023-11 (Kona)
45`P2836R1 <https://wg21.link/P2836R1>`__``std::basic_const_iterator`` should follow its underlying type's convertibility2023-11 (Kona)
46`P2264R7 <https://wg21.link/P2264R7>`__Make ``assert()`` macro user friendly for C and C++2023-11 (Kona)
47`P1673R13 <https://wg21.link/P1673R13>`__A free function linear algebra interface based on the BLAS2023-11 (Kona)
48
49`P2875R4 <https://wg21.link/P2875R4>`__Undeprecate ``polymorphic_allocator::destroy`` for C++262024-03 (Tokyo)|Complete|15
50`P2867R2 <https://wg21.link/P2867R2>`__Remove Deprecated ``strstreams`` From C++262024-03 (Tokyo)|Complete|19
51`P2869R4 <https://wg21.link/P2869R4>`__Remove Deprecated ``shared_ptr`` Atomic Access APIs from C++262024-03 (Tokyo)
52`P2872R3 <https://wg21.link/P2872R3>`__Remove ``wstring_convert`` From C++262024-03 (Tokyo)|Complete|19
53`P3107R5 <https://wg21.link/P3107R5>`__Permit an efficient implementation of ``std::print``2024-03 (Tokyo)
54`P3142R0 <https://wg21.link/P3142R0>`__Printing Blank Lines with ``println``2024-03 (Tokyo)|Complete|19Implemented as a DR against C++23. (MSVC STL and libstdc++ will do the same.)
55`P2845R8 <https://wg21.link/P2845R8>`__Formatting of ``std::filesystem::path``2024-03 (Tokyo)
56`P0493R5 <https://wg21.link/P0493R5>`__Atomic minimum/maximum2024-03 (Tokyo)
57`P2542R8 <https://wg21.link/P2542R8>`__``views::concat``2024-03 (Tokyo)
58`P2591R5 <https://wg21.link/P2591R5>`__Concatenation of strings and string views2024-03 (Tokyo)|Complete|19
59`P2248R8 <https://wg21.link/P2248R8>`__Enabling list-initialization for algorithms2024-03 (Tokyo)
60`P2810R4 <https://wg21.link/P2810R4>`__``is_debugger_present`` ``is_replaceable``2024-03 (Tokyo)
61`P1068R11 <https://wg21.link/P1068R11>`__Vector API for random number generation2024-03 (Tokyo)
62`P2944R3 <https://wg21.link/P2944R3>`__Comparisons for ``reference_wrapper``2024-03 (Tokyo)|Partial|The changes to ``tuple``'s equality overload from P2165R4 are not yet implemented.
63`P2642R6 <https://wg21.link/P2642R6>`__Padded ``mdspan`` layouts2024-03 (Tokyo)
64`P3029R1 <https://wg21.link/P3029R1>`__Better ``mdspan``'s CTAD2024-03 (Tokyo)|Complete|19
65
66`P2747R2 <https://wg21.link/P2747R2>`__``constexpr`` placement new2024-06 (St. Louis)|Complete|20
67`P2997R1 <https://wg21.link/P2997R1>`__Removing the common reference requirement from the indirectly invocable concepts2024-06 (St. Louis)|Complete|19Implemented as a DR against C++20. (MSVC STL and libstdc++ will do the same.)
68`P2389R2 <https://wg21.link/P2389R2>`__``dextents`` Index Type Parameter2024-06 (St. Louis)|Complete|19
69`P3168R2 <https://wg21.link/P3168R2>`__Give ``std::optional`` Range Support2024-06 (St. Louis)
70`P3217R0 <https://wg21.link/P3217R0>`__Adjoints to 'Enabling list-initialization for algorithms': find_last2024-06 (St. Louis)
71`P2985R0 <https://wg21.link/P2985R0>`__A type trait for detecting virtual base classes2024-06 (St. Louis)|Complete|20
72`P0843R14 <https://wg21.link/P0843R14>`__``inplace_vector``2024-06 (St. Louis)
73`P3235R3 <https://wg21.link/P3235R3>`__``std::print`` more types faster with less memory2024-06 (St. Louis)
74`P2968R2 <https://wg21.link/P2968R2>`__Make ``std::ignore`` a first-class object2024-06 (St. Louis)|Complete|19
75`P2075R6 <https://wg21.link/P2075R6>`__Philox as an extension of the C++ RNG engines2024-06 (St. Louis)
76`P2422R1 <https://wg21.link/P2422R1>`__Remove ``nodiscard`` annotations from the standard library specification2024-06 (St. Louis)|Complete|19``nodiscard`` attributes were kept as a conforming extension
77`P2300R10 <https://wg21.link/P2300R10>`__``std::execution``2024-06 (St. Louis)
78
79`P3136R1 <https://wg21.link/P3136R1>`__Retiring niebloids2024-11 (Wrocław)|Complete|14
80`P3138R5 <https://wg21.link/P3138R5>`__``views::cache_latest``2024-11 (Wrocław)
81`P3379R0 <https://wg21.link/P3379R0>`__Constrain ``std::expected`` equality operators2024-11 (Wrocław)|Complete|21
82`P2862R1 <https://wg21.link/P2862R1>`__``text_encoding::name()`` should never return null values2024-11 (Wrocław)
83`P2897R7 <https://wg21.link/P2897R7>`__``aligned_accessor``: An ``mdspan`` accessor expressing pointer over-alignment2024-11 (Wrocław)|Complete|21
84`P3355R1 <https://wg21.link/P3355R1>`__Fix ``submdspan`` for C++262024-11 (Wrocław)
85`P3222R0 <https://wg21.link/P3222R0>`__Fix C++26 by adding transposed special cases for P2642 layouts2024-11 (Wrocław)
86`P3050R2 <https://wg21.link/P3050R2>`__Fix C++26 by optimizing ``linalg::conjugated`` for noncomplex value types2024-11 (Wrocław)
87`P3396R1 <https://wg21.link/P3396R1>`__``std::execution`` wording fixes2024-11 (Wrocław)
88`P2835R7 <https://wg21.link/P2835R7>`__Expose ``std::atomic_ref``'s object address2024-11 (Wrocław)
89`P3323R1 <https://wg21.link/P3323R1>`__cv-qualified types in ``atomic`` and ``atomic_ref``2024-11 (Wrocław)
90`P3508R0 <https://wg21.link/P3508R0>`__Wording for "constexpr for specialized memory algorithms"2024-11 (Wrocław)
91`P3369R0 <https://wg21.link/P3369R0>`__constexpr for ``uninitialized_default_construct``2024-11 (Wrocław)
92`P3370R1 <https://wg21.link/P3370R1>`__Add new library headers from C232024-11 (Wrocław)
93`P3309R3 <https://wg21.link/P3309R3>`__constexpr ``atomic`` and ``atomic_ref``2024-11 (Wrocław)
94`P1928R15 <https://wg21.link/P1928R15>`__``std::simd`` — merge data-parallel types from the Parallelism TS 22024-11 (Wrocław)
95`P3325R5 <https://wg21.link/P3325R5>`__A Utility for Creating Execution Environments2024-11 (Wrocław)
96`P3068R6 <https://wg21.link/P3068R6>`__Allowing exception throwing in constant-evaluation2024-11 (Wrocław)
97`P3247R2 <https://wg21.link/P3247R2>`__Deprecate the notion of trivial types2024-11 (Wrocław)|Complete|21
98
99`P3074R7 <https://wg21.link/P3074R7>`__trivial unions (was ``std::uninitialized``)2025-02 (Hagenberg)
100`P1494R5 <https://wg21.link/P1494R5>`__Partial program correctness2025-02 (Hagenberg)
101`P2900R14 <https://wg21.link/P2900R14>`__Contracts for C++2025-02 (Hagenberg)
102`P3475R2 <https://wg21.link/P3475R2>`__Defang and deprecate ``memory_order::consume``2025-02 (Hagenberg)
103`P2786R13 <https://wg21.link/P2786R13>`__Trivial Relocatability For C++262025-02 (Hagenberg)
104`P3137R3 <https://wg21.link/P3137R3>`__``views::to_input``2025-02 (Hagenberg)
105`P0472R3 <https://wg21.link/P0472R3>`__Put ``std::monostate`` in ``<utility>``2025-02 (Hagenberg)|Complete|21
106`P3349R1 <https://wg21.link/P3349R1>`__Converting contiguous iterators to pointers2025-02 (Hagenberg)
107`P3372R3 <https://wg21.link/P3372R3>`__constexpr containers and adaptors2025-02 (Hagenberg)|In Progress|
108`P3378R2 <https://wg21.link/P3378R2>`__constexpr exception types2025-02 (Hagenberg)
109`P3441R2 <https://wg21.link/P3441R2>`__Rename ``simd_split`` to ``simd_chunk``2025-02 (Hagenberg)
110`P3287R3 <https://wg21.link/P3287R3>`__Exploration of namespaces for ``std::simd``2025-02 (Hagenberg)
111`P2976R1 <https://wg21.link/P2976R1>`__Freestanding Library: ``algorithm``, ``numeric``, and ``random``2025-02 (Hagenberg)
112`P3430R3 <https://wg21.link/P3430R3>`__simd issues: explicit, unsequenced, identity-element position, and members of disabled simd2025-02 (Hagenberg)
113`P2663R7 <https://wg21.link/P2663R7>`__Interleaved complex values support in ``std::simd``2025-02 (Hagenberg)
114`P2933R4 <https://wg21.link/P2933R4>`__Extend ``<bit>`` header function with overloads for ``std::simd``2025-02 (Hagenberg)
115`P2846R6 <https://wg21.link/P2846R6>`__``reserve_hint``: Eagerly reserving memory for not-quite-sized lazy ranges2025-02 (Hagenberg)
116`P3471R4 <https://wg21.link/P3471R4>`__Standard Library Hardening2025-02 (Hagenberg)
117`P0447R28 <https://wg21.link/P0447R28>`__Introduction of ``std::hive`` to the standard library2025-02 (Hagenberg)
118`P3019R14 <https://wg21.link/P3019R14>`__``indirect`` and ``polymorphic``: Vocabulary Types for Composite Class Design2025-02 (Hagenberg)
119
120`P2996R13 <https://wg21.link/P2996R13>`__Reflection for C++262025-06 (Sofia)
121`P3394R4 <https://wg21.link/P3394R4>`__Annotations for Reflection2025-06 (Sofia)
122`P3293R3 <https://wg21.link/P3293R3>`__Splicing a base class subobject2025-06 (Sofia)
123`P3096R12 <https://wg21.link/P3096R12>`__Function Parameter Reflection in Reflection for C++262025-06 (Sofia)
124`P2988R12 <https://wg21.link/P2988R12>`__``std::optional<‍T&‍>``2025-06 (Sofia)
125`P3348R4 <https://wg21.link/P3348R4>`__C++26 should refer to C23 not C172025-06 (Sofia)
126`P3037R6 <https://wg21.link/P3037R6>`__``constexpr`` ``std::shared_ptr`` and friends2025-06 (Sofia)
127`P3284R4 <https://wg21.link/P3284R4>`__``write_env`` and ``unstoppable`` Sender Adaptors2025-06 (Sofia)
128`P3179R9 <https://wg21.link/P3179R9>`__Parallel Range Algorithms2025-06 (Sofia)
129`P3709R2 <https://wg21.link/P3709R2>`__Reconsider parallel ``ranges::rotate_copy`` and ``ranges::reverse_copy``2025-06 (Sofia)
130`P3641R0 <https://wg21.link/P3641R0>`__Rename ``std::observable`` to ``std::observable_checkpoint``, and add a feature-test macro2025-06 (Sofia)
131`P3044R2 <https://wg21.link/P3044R2>`__sub-``string_view`` from ``string``2025-06 (Sofia)
132`P2876R3 <https://wg21.link/P2876R3>`__Proposal to extend ``std::simd`` with more constructors and accessors2025-06 (Sofia)
133`P3480R6 <https://wg21.link/P3480R6>`__``std::simd`` is a range2025-06 (Sofia)
134`P2664R11 <https://wg21.link/P2664R11>`__Extend ``std::simd`` with permutation API2025-06 (Sofia)
135`P3691R1 <https://wg21.link/P3691R1>`__Reconsider naming of the namespace for ``std::simd``2025-06 (Sofia)
136`P3383R3 <https://wg21.link/P3383R3>`__``mdspan.at()``2025-06 (Sofia)
137`P2927R3 <https://wg21.link/P2927R3>`__Inspecting ``exception_ptr``2025-06 (Sofia)
138`P3748R0 <https://wg21.link/P3748R0>`__Inspecting ``exception_ptr`` should be constexpr2025-06 (Sofia)
139`P2830R10 <https://wg21.link/P2830R10>`__Standardized Constexpr Type Ordering2025-06 (Sofia)
140`P3570R2 <https://wg21.link/P3570R2>`__optional variants in sender/receiver2025-06 (Sofia)
141`P3481R5 <https://wg21.link/P3481R5>`__``std::execution::bulk()`` issues2025-06 (Sofia)
142`P3433R1 <https://wg21.link/P3433R1>`__Allocator Support for Operation States2025-06 (Sofia)
143`P3149R11 <https://wg21.link/P3149R11>`__``async_scope`` - Creating scopes for non-sequential concurrency2025-06 (Sofia)
144`P3682R0 <https://wg21.link/P3682R0>`__ Remove ``std::execution::split``2025-06 (Sofia)
145`P2079R10 <https://wg21.link/P2079R10>`__Parallel scheduler2025-06 (Sofia)
146`P3557R3 <https://wg21.link/P3557R3>`__High-Quality Sender Diagnostics with Constexpr Exceptions2025-06 (Sofia)
147`P3560R2 <https://wg21.link/P3560R2>`__Error Handling in Reflection2025-06 (Sofia)
148`P3503R3 <https://wg21.link/P3503R3>`__Make type-erased allocator use in ``promise`` and ``packaged_task`` consistent2025-06 (Sofia)
149`P3008R6 <https://wg21.link/P3008R6>`__Atomic floating-point min/max2025-06 (Sofia)
150`P3111R8 <https://wg21.link/P3111R8>`__Atomic Reduction Operations2025-06 (Sofia)
151`P3060R3 <https://wg21.link/P3060R3>`__Add ``std::views::indices(n)``2025-06 (Sofia)
152`P2319R5 <https://wg21.link/P2319R5>`__Prevent ``path`` presentation problems2025-06 (Sofia)
153`P3223R2 <https://wg21.link/P3223R2>`__Making ``std::istream::ignore`` less surprising2025-06 (Sofia)
154`P2781R9 <https://wg21.link/P2781R9>`__``std::constant_wrapper``2025-06 (Sofia)
155`P3697R1 <https://wg21.link/P3697R1>`__Minor additions to C++26 standard library hardening2025-06 (Sofia)
156`P3552R3 <https://wg21.link/P3552R3>`__Add a Coroutine Task Type2025-06 (Sofia)
157`P1317R2 <https://wg21.link/P1317R2>`__Remove return type deduction in ``std::apply``2025-06 (Sofia)
158