On 11/26/25 7:45 PM, Jakub Jelinek wrote:
Hi!
On Wed, Nov 26, 2025 at 07:23:43PM +0530, Jason Merrill wrote:
On 11/26/25 7:20 PM, Jakub Jelinek wrote:
On Wed, Nov 26, 2025 at 08:45:49AM -0500, Marek Polacek wrote:
I think this should be @option{-fmodules}.
The name @samp{c++2a} is deprecated.
@item gnu++20
@itemx gnu++2a
GNU dialect of @option{-std=c++20}.
This is the default for C++ code.
+C++20 modules support is still experimental and needs to be
+enabled with @code{-fmodules} option.
Ditto.
Thanks, changed in my copy.
OK with that adjustment.
Thanks, now committed.
What about wwwdocs?
Something like this?
OK.
diff --git a/htdocs/projects/cxx-status.html b/htdocs/projects/cxx-status.html
index 838b318b..e97dbc15 100644
--- a/htdocs/projects/cxx-status.html
+++ b/htdocs/projects/cxx-status.html
@@ -719,20 +719,20 @@
<h2 id="cxx20">C++20 Support in GCC</h2>
- <p id="cxx2a">GCC has experimental support for the previous revision of the C++
- standard, which was published in 2020.
+ <p id="cxx2a">GCC has almost full support for the previous revision of the
+ C++ standard, which was published in 2020.
The status of C++20 library features is described in
<a
href="https://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#status.iso.2020">the library
documentation</a>.</p>
- <p>C++20 features are available since GCC 8. To enable C++20
- support, add the command-line parameter <code>-std=c++20</code>
- (use <code>-std=c++2a</code> in GCC 9 and earlier)
- to your <code>g++</code> command line. Or, to enable GNU
- extensions in addition to C++20 features,
- add <code>-std=gnu++20</code>.</p>
-
- <p><strong>Important</strong>: Because the ISO C++20 standard is
- recent, GCC's support is <strong>experimental</strong>.</p>
+ <p>C++20 mode is the default since GCC 16; it can be explicitly selected
+ with the <code>-std=c++20</code> command-line flag, or
+ <code>-std=gnu++20</code> to enable GNU extensions as well
+ (use <code>-std=c++2a</code> in GCC 9 and earlier).
+ Some C++20 features are available since GCC 8, but support was experimental
+ and the ABI of C++20 features was not stable until GCC 16.
+ C++20 modules support is still <strong>experimental</strong> and needs to be
+ enabled by <code>-fmodules</code> command-line flag.
+ </p>
<h2>C++20 Language Features</h2>
@@ -1309,8 +1309,8 @@
<a
href="https://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#status.iso.2017">the
library documentation</a>.
</p>
- <p>C++17 mode is the default since GCC 11; it can be explicitly selected
- with the <code>-std=c++17</code> command-line flag, or
+ <p>This mode is the default in GCC 11 up until GCC 15 (inclusive); it can be
+ explicitly selected with the <code>-std=c++17</code> command-line flag, or
<code>-std=gnu++17</code> to enable GNU extensions as well.
Some C++17 features are available since GCC 5, but support was experimental
and the ABI of C++17 features was not stable until GCC 9.
Jakub