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