GCC 15.1 Released (D 2.111.0)

Iain Buclaw ibuclaw at gdcproject.org
Fri Apr 25 14:08:58 UTC 2025


Hi,

I am proud to announce a new major GCC release, 15.1.

- The D frontend now supports version 
**[2.111.0](https://gcc.gnu.org/cgit/gcc/commit/?id=0eae20c899e327aec0e48b9ff2d856aba44b2639)** of the D programming language and run-time library.

- On supported targets, the version `GNU_CET` is now predefined 
when the option `-fcf-protection` is used. The protection level 
is also set in the traits key `__traits(getTargetInfo, "CET")`.

- A new option `-finclude-imports` was added, which tells the 
compiler to include imported modules in the compilation, as if 
they were given on the command-line (analogous to `dmd -i`).

As and when DMD releases v2.111.1, it will be merged into GCC 
15.2. Likewise regression fixes beyond v2.1xx.y will be 
backported into future minor releases for the next three years.

An online version of the GDC documentation and man pages are 
available [here](https://gcc.gnu.org/onlinedocs/gcc-15.1.0/gdc/) 
(also [in PDF](https://gcc.gnu.org/onlinedocs/gcc-15.1.0/gdc.pdf) 
or 
[PostScript](https://gcc.gnu.org/onlinedocs/gcc-15.1.0/gdc.ps.gz) 
or an [HTML 
tarball](https://gcc.gnu.org/onlinedocs/gcc-15.1.0/gdc-html.tar.gz))

For the full list of notable changes in other languages and 
targets, see the [GCC 15.1 
changes](https://gcc.gnu.org/gcc-15/changes.html) page.

This source release is available 
[here](https://sourceware.org/pub/gcc/releases/gcc-15.1.0/), or 
from any of the WWW and FTP servers listed on the 
[mirrors](https://gcc.gnu.org/mirrors.html) page (the release is 
in the gcc-15.1.0/ subdirectory).

If you encounter difficulties, while you may contact me directly, 
it is better to visit https://gcc.gnu.org/bugzilla and file a 
problem report.

---
#### GCC 16 development

Now the development cycle has started again, usually it would be 
time for the next round of have ambitions for changes to land 
during the next release cycle. However due to current 
circumstances ([documented 
here](https://forum.dlang.org/post/dypquzqcqxfxgtbcikqi@forum.dlang.org)), there likely won't be too many big changes being made over the next 6 months. With that said...

1. The "in-memory" preprocessing of C sources for ImportC is 
expected to land soon after being brewed in the cauldron for a 
couple years, though it will initially be without all predefined 
target macros being available. So some system headers will not be 
cleanly importable as-is.

2. For target specific built-in defines, GCC internally has 
[three ugly 
macros](https://gcc.gnu.org/onlinedocs/gccint/Run-time-Target.html#index-TARGET_005fCPU_005fCPP_005fBUILTINS) which are not usable with any front-end language apart from C/C++.  So the aim is to rewrite this part of the GCC back-end to expose them as common target hooks, then everyone benefits, not just D.

3. GDC will continue to be in sync with current DMD development 
throughout the release cycle so that the next version of GCC will 
also sport the latest release of the D language, whatever that 
release version will be.

There are - as always - more things to do than I have available 
hours to do them in, but if you feel you could help in any way, 
please don't hesitate to jump on the 
[#gdc](https://dlang.slack.com/archives/C6LTP6MV1) channel on the 
Dlang Slack or [#d.gdc](irc://irc.libera.chat/d.gdc) on 
Libera.Chat IRC.

If you are interested in helping support the on-going development 
of GDC, you can do so by making a donation to the [D Language 
Foundation](https://dlang.org/foundation/donate.html).

Finally, a big shout out and thank you to the [kind 
sponsors](https://github.com/sponsors/ibuclaw) over the years. 
You are all awesome.

Until the next major/minor release...

Regards,
Iain.


More information about the Digitalmars-d-announce mailing list