Files
clang-p2996/libcxx/docs/Status/Cxx2bPapers.csv
Mark de Wever 7c3a7c727b [libc++][doc] Updates format status.
The paper
- P2286R8 Formatting ranges
is fully implemented modulo its feature test macro. This macro has been
revised by
- LWG3750 Too many papers bump __cpp_lib_format
The new macro depends on
- P2585R0 Improving default container formatting
This paper revises parts of P2286R8 and adds new formatter
specializations. The specialization for debug strings has some wording
issues, which is addresses in this paper
- P2733R0 Fix handling of empty specifiers in std::format

Reviewed By: #libc, ldionne

Differential Revision: https://reviews.llvm.org/D142153
2023-01-24 17:20:56 +01:00

12 KiB

1Paper #GroupPaper NameMeetingStatusFirst released versionLabels
2`P0881R7 <https://wg21.link/P0881R7>`__LWGA Proposal to add stacktrace libraryAutumn 2020
3`P0943R6 <https://wg21.link/P0943R6>`__LWGSupport C atomics in C++Autumn 2020|Complete|15.0
4`P1048R1 <https://wg21.link/P1048R1>`__LWGA proposal for a type trait to detect scoped enumerationsAutumn 2020|Complete|12.0
5`P1679R3 <https://wg21.link/P1679R3>`__LWGstring contains functionAutumn 2020|Complete|12.0
6
7`P1682R3 <https://wg21.link/P1682R3>`__LWGstd::to_underlying for enumerationsFebruary 2021|Complete|13.0
8`P2017R1 <https://wg21.link/P2017R1>`__LWGConditionally borrowed rangesFebruary 2021|ranges|
9`P2160R1 <https://wg21.link/P2160R1>`__LWGLocks lock lockablesFebruary 2021
10`P2162R2 <https://wg21.link/P2162R2>`__LWGInheriting from std::variantFebruary 2021|Complete|13.0
11`P2212R2 <https://wg21.link/P2212R2>`__LWGRelax Requirements for time_point::clockFebruary 2021
12`P2259R1 <https://wg21.link/P2259R1>`__LWGRepairing input range adaptors and counted_iteratorFebruary 2021|ranges|
13
14`P0401R6 <https://wg21.link/P0401R6>`__LWGProviding size feedback in the Allocator interfaceJune 2021|Complete|15.0
15`P0448R4 <https://wg21.link/P0448R4>`__LWGA strstream replacement using span<charT> as bufferJune 2021
16`P1132R8 <https://wg21.link/P1132R8>`__LWGout_ptr - a scalable output pointer abstractionJune 2021
17`P1328R1 <https://wg21.link/P1328R1>`__LWGMaking std::type_info::operator== constexprJune 2021
18`P1425R4 <https://wg21.link/P1425R4>`__LWGIterators pair constructors for stack and queueJune 2021|Complete|14.0|ranges|
19`P1518R2 <https://wg21.link/P1518R2>`__LWGStop overconstraining allocators in container deduction guidesJune 2021|Complete|13.0
20`P1659R3 <https://wg21.link/P1659R3>`__LWGstarts_with and ends_withJune 2021|ranges|
21`P1951R1 <https://wg21.link/P1951R1>`__LWGDefault Arguments for pair Forwarding ConstructorJune 2021|Complete|14.0
22`P1989R2 <https://wg21.link/P1989R2>`__LWGRange constructor for std::string_viewJune 2021|Complete|14.0|ranges|
23`P2136R3 <https://wg21.link/P2136R3>`__LWGinvoke_rJune 2021
24`P2166R1 <https://wg21.link/P2166R1>`__LWGA Proposal to Prohibit std::basic_string and std::basic_string_view construction from nullptrJune 2021|Complete|13.0
25
26`P0288R9 <https://wg21.link/P0288R9>`__LWG``any_invocable``October 2021
27`P0798R8 <https://wg21.link/P0798R8>`__LWGMonadic operations for ``std::optional``October 2021|Complete|14.0
28`P0849R8 <https://wg21.link/P0849R8>`__LWG``auto(x)``: ``DECAY_COPY`` in the languageOctober 2021|Complete|14.0
29`P1072R10 <https://wg21.link/P1072R10>`__LWG``basic_string::resize_and_overwrite``October 2021|Complete|14.0
30`P1147R1 <https://wg21.link/P1147R1>`__LWGPrinting ``volatile`` PointersOctober 2021|Complete|14.0
31`P1272R4 <https://wg21.link/P1272R4>`__LWGByteswapping for fun&&nufOctober 2021|Complete|14.0
32`P1675R2 <https://wg21.link/P1675R2>`__LWG``rethrow_exception`` must be allowed to copyOctober 2021
33`P2077R3 <https://wg21.link/P2077R3>`__LWGHeterogeneous erasure overloads for associative containersOctober 2021
34`P2251R1 <https://wg21.link/P2251R1>`__LWGRequire ``span`` & ``basic_string_view`` to be Trivially CopyableOctober 2021|Complete|14.0
35`P2301R1 <https://wg21.link/P2301R1>`__LWGAdd a ``pmr`` alias for ``std::stacktrace``October 2021
36`P2321R2 <https://wg21.link/P2321R2>`__LWG``zip``October 2021|In Progress||ranges|
37`P2340R1 <https://wg21.link/P2340R1>`__LWGClarifying the status of the 'C headers'October 2021
38`P2393R1 <https://wg21.link/P2393R1>`__LWGCleaning up ``integer``-class typesOctober 2021
39`P2401R0 <https://wg21.link/P2401R0>`__LWGAdd a conditional ``noexcept`` specification to ``std::exchange``October 2021|Complete|14.0
40
41`P0323R12 <https://wg21.link/P0323R12>`__LWG``std::expected``February 2022|Complete|16.0
42`P0533R9 <https://wg21.link/P0533R9>`__LWG``constexpr`` for ``<cmath>`` and ``<cstdlib>``February 2022|In progress| [#note-P0533R9]_
43`P0627R6 <https://wg21.link/P0627R6>`__LWGFunction to mark unreachable codeFebruary 2022|Complete|15.0
44`P1206R7 <https://wg21.link/P1206R7>`__LWG``ranges::to``: A function to convert any range to a containerFebruary 2022|ranges|
45`P1413R3 <https://wg21.link/P1413R3>`__LWGDeprecate ``std::aligned_storage`` and ``std::aligned_union``February 2022|Complete| [#note-P1413R3]_
46`P2255R2 <https://wg21.link/P2255R2>`__LWGA type trait to detect reference binding to temporaryFebruary 2022
47`P2273R3 <https://wg21.link/P2273R3>`__LWGMaking ``std::unique_ptr`` constexprFebruary 2022|Complete|16.0
48`P2387R3 <https://wg21.link/P2387R3>`__LWGPipe support for user-defined range adaptorsFebruary 2022|ranges|
49`P2440R1 <https://wg21.link/P2440R1>`__LWG``ranges::iota``, ``ranges::shift_left`` and ``ranges::shift_right``February 2022|ranges|
50`P2441R2 <https://wg21.link/P2441R2>`__LWG``views::join_with``February 2022|ranges|
51`P2442R1 <https://wg21.link/P2442R1>`__LWGWindowing range adaptors: ``views::chunk`` and ``views::slide``February 2022|ranges|
52`P2443R1 <https://wg21.link/P2443R1>`__LWG``views::chunk_by``February 2022|ranges|
53
54`P0009R18 <https://wg21.link/P0009R18>`__LWGmdspan: A Non-Owning Multidimensional Array ReferenceJuly 2022
55`P0429R9 <https://wg21.link/P0429R9>`__LWGA Standard ``flat_map``July 2022
56`P1169R4 <https://wg21.link/P1169R4>`__LWG``static operator()``July 2022|Complete|16.0
57`P1222R4 <https://wg21.link/P1222R4>`__LWGA Standard ``flat_set``July 2022
58`P1223R5 <https://wg21.link/P1223R5>`__LWG``ranges::find_last()``, ``ranges::find_last_if()``, and ``ranges::find_last_if_not()``July 2022|ranges|
59`P1467R9 <https://wg21.link/P1467R9>`__LWGExtended ``floating-point`` types and standard namesJuly 2022
60`P1642R11 <https://wg21.link/P1642R11>`__LWGFreestanding ``[utilities]``, ``[ranges]``, and ``[iterators]``July 2022
61`P1899R3 <https://wg21.link/P1899R3>`__LWG``stride_view``July 2022|ranges|
62`P2093R14 <https://wg21.link/P2093R14>`__LWGFormatted outputJuly 2022
63`P2165R4 <https://wg21.link/P2165R4>`__LWGCompatibility between ``tuple``, ``pair`` and ``tuple-like`` objectsJuly 2022
64`P2278R4 <https://wg21.link/P2278R4>`__LWG``cbegin`` should always return a constant iteratorJuly 2022|ranges|
65`P2286R8 <https://wg21.link/P2286R8>`__LWGFormatting RangesJuly 2022|Complete|16.0|format| |ranges|
66`P2291R3 <https://wg21.link/P2291R3>`__LWGAdd Constexpr Modifiers to Functions ``to_chars`` and ``from_chars`` for Integral Types in ``<charconv>`` HeaderJuly 2022|Complete|16.0
67`P2302R4 <https://wg21.link/P2302R4>`__LWG``std::ranges::contains``July 2022|ranges|
68`P2322R6 <https://wg21.link/P2322R6>`__LWG``ranges::fold``July 2022|ranges|
69`P2374R4 <https://wg21.link/P2374R4>`__LWG``views::cartesian_product``July 2022|ranges|
70`P2404R3 <https://wg21.link/P2404R3>`__LWGMove-only types for ``equality_comparable_with``, ``totally_ordered_with``, and ``three_way_comparable_with``July 2022
71`P2408R5 <https://wg21.link/P2408R5>`__LWGRanges iterators as inputs to non-Ranges algorithmsJuly 2022|ranges|
72`P2417R2 <https://wg21.link/P2417R2>`__LWGA more ``constexpr`` ``bitset``July 2022|Complete|16.0
73`P2419R2 <https://wg21.link/P2419R2>`__LWGClarify handling of encodings in localized formatting of chrono typesJuly 2022
74`P2438R2 <https://wg21.link/P2438R2>`__LWG``std::string::substr() &&``July 2022|Complete|16.0
75`P2445R1 <https://wg21.link/P2445R1>`__LWG``forward_like``July 2022|Complete|16.0
76`P2446R2 <https://wg21.link/P2446R2>`__LWG``views::as_rvalue``July 2022|Complete|16.0|ranges|
77`P2460R2 <https://wg21.link/P2460R2>`__LWGRelax requirements on ``wchar_t`` to match existing practicesJuly 2022
78`P2465R3 <https://wg21.link/P2465R3>`__LWGStandard Library Modules ``std`` and ``std.compat``July 2022
79`P2467R1 <https://wg21.link/P2467R1>`__LWGSupport exclusive mode for ``fstreams``July 2022
80`P2474R2 <https://wg21.link/P2474R2>`__LWG``views::repeat``July 2022|ranges|
81`P2494R2 <https://wg21.link/P2494R2>`__LWGRelaxing range adaptors to allow for move only typesJuly 2022|ranges|
82`P2499R0 <https://wg21.link/P2499R0>`__LWG``string_view`` range constructor should be ``explicit``July 2022|Complete|16.0|ranges|
83`P2502R2 <https://wg21.link/P2502R2>`__LWG``std::generator``: Synchronous Coroutine Generator for RangesJuly 2022|ranges|
84`P2508R1 <https://wg21.link/P2508R1>`__LWGExposing ``std::basic-format-string``July 2022|Complete|15.0
85`P2513R4 <https://wg21.link/P2513R4>`__LWG``char8_t`` Compatibility and Portability FixesJuly 2022
86`P2517R1 <https://wg21.link/P2517R1>`__LWGAdd a conditional ``noexcept`` specification to ``std::apply``July 2022
87`P2520R0 <https://wg21.link/P2520R0>`__LWG``move_iterator`` should be a random access iteratorJuly 2022|ranges|
88`P2540R1 <https://wg21.link/P2540R1>`__LWGEmpty Product for certain ViewsJuly 2022|ranges|
89`P2549R1 <https://wg21.link/P2549R1>`__LWG``std::unexpected`` should have ``error()`` as member accessorJuly 2022|Complete|16.0
90`P2553R1 <https://wg21.link/P2553R1>`__LWGMake ``mdspan`` ``size_type`` controllableJuly 2022
91`P2554R0 <https://wg21.link/P2554R0>`__LWGC-Array Interoperability of MDSpanJuly 2022
92`P2585R0 <https://wg21.link/P2585R0>`__LWGImproving default container formattingJuly 2022|Partial|
93`P2590R2 <https://wg21.link/P2590R2>`__LWGExplicit lifetime managementJuly 2022
94`P2599R2 <https://wg21.link/P2599R2>`__LWG``mdspan::size_type`` should be ``index_type``July 2022
95`P2604R0 <https://wg21.link/P2604R0>`__LWGmdspan: rename pointer and contiguousJuly 2022
96`P2613R1 <https://wg21.link/P2613R1>`__LWGAdd the missing ``empty`` to ``mdspan``July 2022
97
98`P1202R5 <https://wg21.link/P1202R5>`__LWGAsymmetric FencesNovember 2022|concurrency TS|
99`P1264R2 <https://wg21.link/P1264R2>`__LWGRevising the wording of ``stream`` input operationsNovember 2022|Complete|9.0
100`P1478R8 <https://wg21.link/P1478R8>`__LWG``Byte-wise`` ``atomic`` ``memcpy``November 2022|concurrency TS|
101`P2167R3 <https://wg21.link/P2167R3>`__LWGImproved Proposed Wording for LWG 2114November 2022
102`P2396R1 <https://wg21.link/P2396R1>`__LWGConcurrency TS 2 fixes November 2022|concurrency TS|
103`P2505R5 <https://wg21.link/P2505R5>`__LWGMonadic Functions for ``std::expected``November 2022
104`P2539R4 <https://wg21.link/P2539R4>`__LWGShould the output of ``std::print`` to a terminal be synchronized with the underlying stream?November 2022|format|
105`P2602R2 <https://wg21.link/P2602R2>`__LWGPoison Pills are Too ToxicNovember 2022|ranges|
106`P2708R1 <https://wg21.link/P2708R1>`__LWGNo Further Fundamentals TSesNovember 2022|Nothing to do|