GNU 编译器工程师、红帽公司的 Marek Polacek 近日提议,将 C++20 语言规范(准确地说是 GNU++20 方言)作为 GCC 默认的 C++ 版本。在未特别指定的情况下,GCC 现行默认方言为五年前设定的 C++17(GNU++17)。

Polacek 在其邮件列表提案中表示:“我原本希望能够在 GCC 15 版本中切换默认到 C++20(参见 bug 113920),但当时 libstdc++ 对 C++20 的支持尚不完整,编译器也存在一些待解决的问题(如概念的重整、模块支持等)。如今准备好了吗?大家是否知道还有哪些妨碍我们切换的因素?模块功能预计仍不会默认开放。如果大家决定切换默认 C++ 方言,我愿意承担相关工作(包括更新 cxx-status.html 和在 changes.html 增加新的注意事项)。”
目前,社区尚未对 C++20 默认提案有明确推进行动。由于 GCC 16 将在下周进入第三阶段开发,这项更改很可能无法赶上 GCC 16 的发布时间(预计为 2026 年初),但后续进展尚需继续关注。
了解更多: