The GCC developers are proud to announce another major GCC release, 12.1.
This year we celebrated the 35th anniversary of the first GCC beta release and this month we will celebrate 35 years since the GCC 1.0 release! This release deprecates support for the STABS debugging format and introduces support for the CTF debugging format [1]. The C and C++ frontends continue to advance with extending support for features in the upcoming C2X and C++23 standards and the C++ standard library improves support for the experimental C++20 and C++23 parts. The Fortran frontend now fully supports TS 29113 for interoperability with C. GCC now understands clangs __builtin_shufflevector extension making it easier to share generic vector code. Starting with GCC 12 vectorization is enabled at the -O2 optimization level using the very-cheap cost model which puts extra constraints on code size expansion. On the security side GCC can now initialize stack variables implicitly using -ftrivial-auto-var-init to help tracking down and mitigating uninitialized stack variable flaws. The C and C++ frontends now support __builtin_dynamic_object_size compatible with the clang extension. The x86 backend gained mitigations against straight line speculation with -mharden-sls. The experimental Static Analyzer gained uninitialized variable use detection and many other improvements. The x86 backend gained support for AVX512-FP16 via _Float16. The BPF backend now supports CO-RE, the RISC-V backend gained support for many new ISA extensions. Some code that compiled successfully with older GCC versions might require source changes, see http://gcc.gnu.org/gcc-12/porting_to.html for details. See https://gcc.gnu.org/gcc-12/changes.html for more information about changes in GCC 12.1. This release is available from the WWW and FTP servers listed here: https://sourceware.org/pub/gcc/releases/gcc-12.1.0/ https://gcc.gnu.org/mirrors.html The release is in the gcc-12.1.0/ subdirectory. If you encounter difficulties using GCC 12.1, please do not contact me directly. Instead, please visit http://gcc.gnu.org for information about getting help. Driving a leading free software project such as GCC would not be possible without support from its many contributors. Not only its developers, but especially its regular testers and users which contribute to its high quality. The list of individuals is too large to thank individually! ---- [1] See https://ctfstd.org/