GCC Preparing to Set C23 "GNU23" as Default C Language Version
GCC plans to make C23 (GNU23) the default C language version with GCC 15, requiring test case updates. Some features remain unimplemented, but a stable release is expected early next year.
Read original articleThe GNU Compiler Collection (GCC) is preparing to set the C23 programming language standard, referred to as GNU23, as the default version for C language compilation. This decision comes as support for C23 is now considered "essentially feature-complete" with the release of GCC 15. Joseph Myers from Red Hat has initiated a patch to implement this change, which will default to the -std=gnu23 option unless another C standard is specified. The transition requires updating numerous test cases to ensure compatibility with the new language version. Jakub Jelinek from Red Hat's compiler team has also started discussions to update the compiler support documentation to reflect the latest C23 features. Although some C23 features remain unimplemented in GCC 15, efforts are ongoing to address these. The finalization of GCC 15's feature development is expected by mid-November, with a stable release anticipated early next year.
- GCC is set to make C23 (GNU23) the default C language version.
- The transition is part of the preparations for GCC 15, which is nearing completion.
- Significant updates to test cases are required to accommodate the new default.
- Some C23 features are still unimplemented, but work is in progress to resolve this.
- The stable release of GCC 15 is expected early next year.
Related
New Features in C++26
The ISO released new C++ standards on a three-year cycle, with C++26 proposals open until January 2025. Updates include hazard pointers, user-space RCU support, debugging headers, and template enhancements for improved functionality.
GNU C Library version 2.40 fixes 5 CVEs
The GNU C Library version 2.40 emphasizes portability, performance, and standards compliance. Updates include GCC 14.1 support, new function families, security enhancements, and improvements for 32-bit architectures. Users can find release notes and contributors on the GNU C Library webpage.
Improving _Generic in C2y
The C programming community is enhancing the _Generic feature for the C2y standard to resolve issues from C23, focusing on simplifying type matching and addressing limitations in usability and behavior.
An Update on Gccrs Development
The gccrs project, a Rust frontend for GCC, has made significant progress, reducing upstream commits to 40, focusing on key features, and aims to compile the Rust core library despite challenges.
The C23 edition of Modern C is now available for free
The C23 edition of Modern C is now available for free download, featuring updates like bit-precise types, enhanced enumeration types, and resources for transitioning to C23 on existing platforms.
Related
New Features in C++26
The ISO released new C++ standards on a three-year cycle, with C++26 proposals open until January 2025. Updates include hazard pointers, user-space RCU support, debugging headers, and template enhancements for improved functionality.
GNU C Library version 2.40 fixes 5 CVEs
The GNU C Library version 2.40 emphasizes portability, performance, and standards compliance. Updates include GCC 14.1 support, new function families, security enhancements, and improvements for 32-bit architectures. Users can find release notes and contributors on the GNU C Library webpage.
Improving _Generic in C2y
The C programming community is enhancing the _Generic feature for the C2y standard to resolve issues from C23, focusing on simplifying type matching and addressing limitations in usability and behavior.
An Update on Gccrs Development
The gccrs project, a Rust frontend for GCC, has made significant progress, reducing upstream commits to 40, focusing on key features, and aims to compile the Rust core library despite challenges.
The C23 edition of Modern C is now available for free
The C23 edition of Modern C is now available for free download, featuring updates like bit-precise types, enhanced enumeration types, and resources for transitioning to C23 on existing platforms.