2.9 C
New York
Tuesday, March 18, 2025

GCC 15 compilers move toward completion



GCC (GNU Compiler Collection) 15 is moving forward as a planned update to the series, with a new front end for Cobol. The upgrade also is set to bring improvements to C and C++ development.

GCC 15 is expected as a production release in late-April or early-May, said Richard Biener, a release manager for GCC. The actual release date will depend on all priority one regressions toward GCC 14 to be fixed, he said. GCC 15 currently is in the regression fixing stage, which is Stage 4.

With GCC 15, the C compiler will default to C23 instead of C17, and the C++ compiler and standard library will start to get C++ 23 and C++ 26 features. C++ 20 modules start to get usable with improvements in both the compiler and tooling, Biener noted. “GCC 15 looks to be a really good release, especially for C++ development,” he said.

RISC-V architecture support continues to advance quickly, especially around vectorization and architecture support, said Biener.

GCC 15 also introduces a language front end for Cobol. “Cobol is an interesting language with unique challenges for the compiler middle-end as I have learned,“ Biener said. “There is also a vast amount of legacy software still in production that relies on Cobol, so having another option for a compiler that is free software is a good thing.”

However, a proposed front end for Algol 68 did not make it past the steering committee. “Compared to Cobol, I see not much practical or commercial relevance of Algol 68, though I would like to see the front end included in future, if only because Algol 68 is of historical importance,” Beiner said. He expects Algol 68 eventually will be available with GCC 16.

Also in GCC 15:

  • The default vectorizer cost model at -O2 has been enhanced to handle unknown tripcount. But it still disables vectorization of loops when any runtime check for data dependence or alignment is required. It also disables vectorization of epilogue loops but otherwise is equal to the cheap cost model.
  • Support for unified shared memory has been added for some AMD and Nvidia GPUs.
  • For the C family, a musttail statement attribute was added to enforce tail calls.
  • For the runtime library, debug assertions now are enabled by default for unoptimized builds.

Instructions on porting to GCC 15 can be found at gcc.gnu.org.

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles