Files
clang-p2996/libcxx/docs/Status/Cxx2cPapers.csv
A. Jiang cae351f345 [libc++] Bump __cpp_lib_optional and __cpp_lib_variant (#113650)
In C++20 mode, `__cpp_lib_optional` and `__cpp_lib_variant` should be
`202106L` due to DR P2231R1.

In C++26 mode, `__cpp_lib_variant` should be bumped to `202306L` due to
P2637R3.
- Clang 16/17 shouldn't get this bumping (as member `visit` requires
explicit object parameters), but it's very tricky to make the bumping
conditionally enabled. I _hope_ unconditionally bumping in C++26 will be
OK for LLVM 20 when the support for Clang 17 is dropped.

Related PRs:
- https://reviews.llvm.org/D102119
- #83335
- #76447
2024-10-26 07:38:52 +08:00

9.1 KiB

1Paper #Paper NameMeetingStatusFirst released versionNotes
2`P2497R0 <https://wg21.link/P2497R0>`__Testing for success or failure of ``<charconv>`` functions2023-06 (Varna)|Complete|18.0
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)
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.0
9`P2495R3 <https://wg21.link/P2495R3>`__Interfacing ``stringstream``\s with ``string_view``2023-06 (Varna)|Complete|19.0
10`P2510R3 <https://wg21.link/P2510R3>`__Formatting pointers2023-06 (Varna)|Complete|17.0Implemented 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>`__Mandating Annex D Require No More2023-06 (Varna)
19`P2757R3 <https://wg21.link/P2757R3>`__Type-checking format args2023-06 (Varna)
20`P2637R3 <https://wg21.link/P2637R3>`__Member ``visit``2023-06 (Varna)|Complete|19.0Change 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.0
23`P2697R1 <https://wg21.link/P2697R1>`__Interfacing ``bitset`` with ``string_view``2023-06 (Varna)|Complete|18.0
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.0
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)
28`P2630R4 <https://wg21.link/P2630R4>`__``submdspan``2023-06 (Varna)
29
30`P0543R3 <https://wg21.link/P0543R3>`__Saturation arithmetic2023-11 (Kona)|Complete|18.0
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.0
34`P2918R2 <https://wg21.link/P2918R2>`__Runtime format strings II2023-11 (Kona)|Complete|18.0
35`P2909R4 <https://wg21.link/P2909R4>`__Fix formatting of code units as integers (Dude, where’s my ``char``?)2023-11 (Kona)|Complete|18.0
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.0
38`P2821R5 <https://wg21.link/P2821R5>`__``span.at()``2023-11 (Kona)|Complete|18.0
39`P2868R3 <https://wg21.link/P2868R3>`__Remove Deprecated ``std::allocator`` Typedef From C++262023-11 (Kona)|Complete|18.0
40`P2870R3 <https://wg21.link/P2870R3>`__Remove ``basic_string::reserve()`` From C++262023-11 (Kona)|Complete|18.0
41`P2871R3 <https://wg21.link/P2871R3>`__Remove Deprecated Unicode Conversion Facets from C++262023-11 (Kona)|Complete|18.0
42`P2819R2 <https://wg21.link/P2819R2>`__Add tuple protocol to complex2023-11 (Kona)|Complete|19.0
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.0
50`P2867R2 <https://wg21.link/P2867R2>`__Remove Deprecated ``strstreams`` From C++262024-03 (Tokyo)|Complete|19.0
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.0
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|19.0Implemented 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.0
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|19.0Implemented comparisons for ``reference_wrapper`` only
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.0
65
66`P2747R2 <https://wg21.link/P2747R2>`__``constexpr`` placement new2024-06 (St. Louis)|Complete|20.0
67`P2997R1 <https://wg21.link/P2997R1>`__Removing the common reference requirement from the indirectly invocable concepts2024-06 (St. Louis)|Complete|19.0Implemented 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.0
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.0
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.0
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.0``nodiscard`` attributes were kept as a conforming extension
77`P2300R10 <https://wg21.link/P2300R10>`__``std::execution``2024-06 (St. Louis)
78