[gcc r16-557] libstdc++: Update C++23 status table
Jonathan Wakely
redi@gcc.gnu.org
Mon May 12 11:29:19 GMT 2025
https://gcc.gnu.org/g:203eb116ec60afba61c9fbe6cc4b54310ecda9de
commit r16-557-g203eb116ec60afba61c9fbe6cc4b54310ecda9de
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Thu May 8 15:35:43 2025 +0100
libstdc++: Update C++23 status table
This should have been updated for the GCC 15.1 release.
libstdc++-v3/ChangeLog:
* doc/xml/manual/status_cxx2023.xml: Update status of proposals
implemented after GCC 14.2 release.
* doc/html/manual/status.html: Regenerate.
Diff:
---
libstdc++-v3/doc/html/manual/status.html | 40 ++++++++++++-----------
libstdc++-v3/doc/xml/manual/status_cxx2023.xml | 45 +++++++++++++-------------
2 files changed, 45 insertions(+), 40 deletions(-)
diff --git a/libstdc++-v3/doc/html/manual/status.html b/libstdc++-v3/doc/html/manual/status.html
index 5668c69664cd..5ca35217f66f 100644
--- a/libstdc++-v3/doc/html/manual/status.html
+++ b/libstdc++-v3/doc/html/manual/status.html
@@ -1847,13 +1847,15 @@ or any notes about the implementation.
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2278r4.html" target="_top">
P2278R4
</a>
- </td><td align="center"> 13.1 </td><td align="left"> <code class="code">__cpp_lib_ranges_as_const >= 202207L</code> </td></tr><tr bgcolor="#B0B0B0"><td align="left"> <code class="code">ranges::to</code> </td><td align="left">
+ </td><td align="center"> 13.1 </td><td align="left"> <code class="code">__cpp_lib_ranges_as_const >= 202207L</code> </td></tr><tr><td align="left"> <code class="code">ranges::to</code> </td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p1206r7.pdf" target="_top">
P1206R7
</a>
- </td><td align="center"> 14.1 (<code class="code">ranges::to</code> function) </td><td align="left">
- <code class="code">__cpp_lib_containers_ranges >= 202202L</code>,
- <code class="code">__cpp_lib_ranges_to_container >= 202202L</code>
+ </td><td align="center">
+ <div class="informaltable"><table class="informaltable" border="0"><colgroup><col /></colgroup><tbody><tr><td> 14.1 (<code class="code">ranges::to</code> function) </td></tr><tr><td> 15.1 (new members in containers) </td></tr></tbody></table></div>
+ </td><td align="left">
+ <code class="code">__cpp_lib_ranges_to_container >= 202202L</code>,
+ <code class="code">__cpp_lib_containers_ranges >= 202202L</code>
</td></tr><tr bgcolor="#C8B0B0"><td align="left"> Ranges iterators as inputs to non-Ranges algorithms </td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2408r5.html" target="_top">
P2408R5
@@ -1893,11 +1895,11 @@ or any notes about the implementation.
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2322r6.html" target="_top">
P2322R6
</a>
- </td><td align="center"> 13.1 </td><td align="left"> <code class="code">__cpp_lib_ranges_fold >= 202207L</code> </td></tr><tr bgcolor="#C8B0B0"><td align="left"> Relaxing Ranges Just A Smidge</td><td align="left">
+ </td><td align="center"> 13.1 </td><td align="left"> <code class="code">__cpp_lib_ranges_fold >= 202207L</code> </td></tr><tr><td align="left"> Relaxing Ranges Just A Smidge</td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p2609r3.html" target="_top">
P2609R3
</a>
- </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_ranges >= 202302L</code> </td></tr><tr><td colspan="4" align="left">
+ </td><td align="center"> 14.3 </td><td align="left"> <code class="code">__cpp_lib_ranges >= 202302L</code> </td></tr><tr><td colspan="4" align="left">
<span class="bold"><strong>Compile-time programming</strong></span>
</td></tr><tr><td align="left"> A proposal for a type trait to detect scoped enumerations </td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1048r1.pdf" target="_top">
@@ -1927,11 +1929,11 @@ or any notes about the implementation.
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p0533r9.pdf" target="_top">
P0533R9
</a>
- </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_constexpr_cmath >= 202202L</code> </td></tr><tr bgcolor="#C8B0B0"><td align="left"> Deprecate std::aligned_storage and std::aligned_union </td><td align="left">
+ </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_constexpr_cmath >= 202202L</code> </td></tr><tr><td align="left"> Deprecate std::aligned_storage and std::aligned_union </td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p1413r3.pdf" target="_top">
P1413R3
</a>
- </td><td align="center"> </td><td align="left"> </td></tr><tr><td align="left"> A type trait to detect reference binding to temporary </td><td align="left">
+ </td><td align="center"> 13.1 </td><td align="left"> </td></tr><tr><td align="left"> A type trait to detect reference binding to temporary </td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p2255r2.html" target="_top">
P2255R2
</a>
@@ -1973,15 +1975,15 @@ or any notes about the implementation.
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p2077r3.html" target="_top">
P2077R3
</a>
- </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_associative_heterogeneous_erasure >= 202110L</code> </td></tr><tr bgcolor="#C8B0B0"><td align="left"> <code class="code"><flat_map></code> </td><td align="left">
+ </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_associative_heterogeneous_erasure >= 202110L</code> </td></tr><tr><td align="left"> <code class="code"><flat_map></code> </td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p0429r9.pdf" target="_top">
P0429R9
</a>
- </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_flat_map >= 202207L</code> </td></tr><tr bgcolor="#C8B0B0"><td align="left"> <code class="code"><flat_set></code> </td><td align="left">
+ </td><td align="center"> 15.1 </td><td align="left"> <code class="code">__cpp_lib_flat_map >= 202207L</code> </td></tr><tr><td align="left"> <code class="code"><flat_set></code> </td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p1222r4.pdf" target="_top">
P1222R4
</a>
- </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_flat_set >= 202207L</code> </td></tr><tr bgcolor="#C8B0B0"><td align="left"> <code class="code">mdspan</code> </td><td align="left">
+ </td><td align="center"> 15.1 </td><td align="left"> <code class="code">__cpp_lib_flat_set >= 202207L</code> </td></tr><tr bgcolor="#C8B0B0"><td align="left"> <code class="code">mdspan</code> </td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p0009r18.html" target="_top">
P0009R18
</a>
@@ -2048,27 +2050,29 @@ or any notes about the implementation.
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2508r1.html" target="_top">
P2508R1
</a>
- </td><td align="center"> 13.1 (feature test macro not defined)</td><td align="left"> <code class="code">__cpp_lib_format >= 202207L</code> </td></tr><tr bgcolor="#C8B0B0"><td align="left">
+ </td><td align="center"> 13.1 (feature test macro not updated until 15.1) </td><td align="left"> <code class="code">__cpp_lib_format >= 202207L</code> </td></tr><tr><td align="left">
Clarify handling of encodings in localized formatting of chrono types
</td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2419r2.html" target="_top">
P2419R2
</a>
- </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_format >= 202207L</code> </td></tr><tr><td align="left">
+ </td><td align="center"> 15.1 </td><td align="left"> <code class="code">__cpp_lib_format >= 202207L</code> </td></tr><tr><td align="left">
Formatting pointers
</td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2510r3.pdf" target="_top">
P2510R3
</a>
- </td><td align="center"> 13.2 (feature test macro not defined)</td><td align="left"> <code class="code">__cpp_lib_format >= 202207L</code> </td></tr><tr bgcolor="#C8B0B0"><td align="left"> Formatting Ranges </td><td align="left">
+ </td><td align="center"> 13.2 (feature test macro not updated until 15.1) </td><td align="left"> <code class="code">__cpp_lib_format >= 202207L</code> </td></tr><tr><td align="left"> Formatting Ranges </td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2286r8.html" target="_top">
P2286R8
</a>
- </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_format_ranges >= 202207L</code> </td></tr><tr bgcolor="#C8B0B0"><td align="left"> Improve default container formatting </td><td align="left">
+ </td><td align="center">
+ <div class="informaltable"><table class="informaltable" border="0"><colgroup><col /></colgroup><tbody><tr><td> 15.1 (changes to adaptors missing) </td></tr><tr><td> 15.2 (complete) </td></tr></tbody></table></div>
+ </td><td align="left"> <code class="code">__cpp_lib_format_ranges >= 202207L</code> </td></tr><tr><td align="left"> Improve default container formatting </td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2585r1.html" target="_top">
P2585R1
</a>
- </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_format_ranges >= 202207L</code> </td></tr><tr><td align="left"> Formatted output </td><td align="left">
+ </td><td align="center"> 15.1 (feature test macro not defined until 15.2) </td><td align="left"> <code class="code">__cpp_lib_format_ranges >= 202207L</code> </td></tr><tr><td align="left"> Formatted output </td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2093r14.html" target="_top">
P2093R14
</a>
@@ -2212,13 +2216,13 @@ or any notes about the implementation.
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p2588r3.html" target="_top">
P2588R3
</a>
- </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_barrier >= 202302L</code> </td></tr><tr bgcolor="#C8B0B0"><td align="left">
+ </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_barrier >= 202302L</code> </td></tr><tr><td align="left">
Standard Library Modules <code class="code">std</code> and <code class="code">std.compat</code>
</td><td align="left">
<a class="link" href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2465r3.pdf" target="_top">
P2465R3
</a>
- </td><td align="center"> </td><td align="left"> <code class="code">__cpp_lib_modules >= 202207L</code> </td></tr></tbody></table></div></div><br class="table-break" /></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="status.iso.tr1"></a>C++ TR1</h3></div></div></div><p>
+ </td><td align="center"> 15.1 </td><td align="left"> <code class="code">__cpp_lib_modules >= 202207L</code> </td></tr></tbody></table></div></div><br class="table-break" /></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="status.iso.tr1"></a>C++ TR1</h3></div></div></div><p>
This table is based on the table of contents of ISO/IEC DTR 19768,
Doc No: N1836=05-0096, Date: 2005-06-24,
"Draft Technical Report on C++ Library Extensions".
diff --git a/libstdc++-v3/doc/xml/manual/status_cxx2023.xml b/libstdc++-v3/doc/xml/manual/status_cxx2023.xml
index 3c33a3596f66..af40eabbd8c9 100644
--- a/libstdc++-v3/doc/xml/manual/status_cxx2023.xml
+++ b/libstdc++-v3/doc/xml/manual/status_cxx2023.xml
@@ -312,17 +312,21 @@ or any notes about the implementation.
</row>
<row>
- <?dbhtml bgcolor="#B0B0B0" ?>
<entry> <code>ranges::to</code> </entry>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p1206r7.pdf">
P1206R7
</link>
</entry>
- <entry align="center"> 14.1 (<code>ranges::to</code> function) </entry>
+ <entry align="center">
+ <informaltable colsep="0" rowsep="0" rowheader="norowheader" frame="none"><tgroup cols="1"><tbody>
+ <row><entry> 14.1 (<code>ranges::to</code> function) </entry></row>
+ <row><entry> 15.1 (new members in containers) </entry></row>
+ </tbody></tgroup></informaltable>
+ </entry>
<entry>
- <code>__cpp_lib_containers_ranges >= 202202L</code>,
- <code>__cpp_lib_ranges_to_container >= 202202L</code>
+ <code>__cpp_lib_ranges_to_container >= 202202L</code>,
+ <code>__cpp_lib_containers_ranges >= 202202L</code>
</entry>
</row>
@@ -418,14 +422,13 @@ or any notes about the implementation.
</row>
<row>
- <?dbhtml bgcolor="#C8B0B0" ?>
<entry> Relaxing Ranges Just A Smidge</entry>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p2609r3.html">
P2609R3
</link>
</entry>
- <entry align="center"> </entry>
+ <entry align="center"> 14.3 </entry>
<entry> <code>__cpp_lib_ranges >= 202302L</code> </entry>
</row>
@@ -513,14 +516,13 @@ or any notes about the implementation.
</row>
<row>
- <?dbhtml bgcolor="#C8B0B0" ?>
<entry> Deprecate std::aligned_storage and std::aligned_union </entry>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p1413r3.pdf">
P1413R3
</link>
</entry>
- <entry align="center"> </entry>
+ <entry align="center"> 13.1 </entry>
<entry />
</row>
@@ -635,26 +637,24 @@ or any notes about the implementation.
</row>
<row>
- <?dbhtml bgcolor="#C8B0B0" ?>
<entry> <code><flat_map></code> </entry>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p0429r9.pdf">
P0429R9
</link>
</entry>
- <entry align="center"> </entry>
+ <entry align="center"> 15.1 </entry>
<entry> <code>__cpp_lib_flat_map >= 202207L</code> </entry>
</row>
<row>
- <?dbhtml bgcolor="#C8B0B0" ?>
<entry> <code><flat_set></code> </entry>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p1222r4.pdf">
P1222R4
</link>
</entry>
- <entry align="center"> </entry>
+ <entry align="center"> 15.1 </entry>
<entry> <code>__cpp_lib_flat_set >= 202207L</code> </entry>
</row>
@@ -823,12 +823,11 @@ or any notes about the implementation.
P2508R1
</link>
</entry>
- <entry align="center"> 13.1 (feature test macro not defined)</entry>
+ <entry align="center"> 13.1 (feature test macro not updated until 15.1) </entry>
<entry> <code>__cpp_lib_format >= 202207L</code> </entry>
</row>
<row>
- <?dbhtml bgcolor="#C8B0B0" ?>
<entry>
Clarify handling of encodings in localized formatting of chrono types
</entry>
@@ -837,7 +836,7 @@ or any notes about the implementation.
P2419R2
</link>
</entry>
- <entry align="center"> </entry>
+ <entry align="center"> 15.1 </entry>
<entry> <code>__cpp_lib_format >= 202207L</code> </entry>
</row>
@@ -850,31 +849,34 @@ or any notes about the implementation.
P2510R3
</link>
</entry>
- <entry align="center"> 13.2 (feature test macro not defined)</entry>
+ <entry align="center"> 13.2 (feature test macro not updated until 15.1) </entry>
<entry> <code>__cpp_lib_format >= 202207L</code> </entry>
</row>
<row>
- <?dbhtml bgcolor="#C8B0B0" ?>
<entry> Formatting Ranges </entry>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2286r8.html">
P2286R8
</link>
</entry>
- <entry align="center"> </entry>
+ <entry align="center">
+ <informaltable colsep="0" rowsep="0" rowheader="norowheader" frame="none"><tgroup cols="1"><tbody>
+ <row><entry> 15.1 (changes to adaptors missing) </entry></row>
+ <row><entry> 15.2 (complete) </entry></row>
+ </tbody></tgroup></informaltable>
+ </entry>
<entry> <code>__cpp_lib_format_ranges >= 202207L</code> </entry>
</row>
<row>
- <?dbhtml bgcolor="#C8B0B0" ?>
<entry> Improve default container formatting </entry>
<entry>
<link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2585r1.html">
P2585R1
</link>
</entry>
- <entry align="center"> </entry>
+ <entry align="center"> 15.1 (feature test macro not defined until 15.2) </entry>
<entry> <code>__cpp_lib_format_ranges >= 202207L</code> </entry>
</row>
@@ -1249,7 +1251,6 @@ or any notes about the implementation.
</row>
<row>
- <?dbhtml bgcolor="#C8B0B0" ?>
<entry>
Standard Library Modules <code>std</code> and <code>std.compat</code>
</entry>
@@ -1258,7 +1259,7 @@ or any notes about the implementation.
P2465R3
</link>
</entry>
- <entry align="center"> </entry>
+ <entry align="center"> 15.1 </entry>
<entry> <code>__cpp_lib_modules >= 202207L</code> </entry>
</row>
More information about the Libstdc++-cvs
mailing list