[Bug ada/123060] [13/14/15/16 regression] ICE in fld_incomplete_type_of when building GtkAda with LTO
cvs-commit at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Dec 15 08:19:22 GMT 2025
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123060
--- Comment #6 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-15 branch has been updated by Eric Botcazou
<ebotcazou@gcc.gnu.org>:
https://gcc.gnu.org/g:2171c346abfc1990fdf4801e760371e64f2c75d8
commit r15-10603-g2171c346abfc1990fdf4801e760371e64f2c75d8
Author: Eric Botcazou <ebotcazou@adacore.com>
Date: Mon Dec 15 09:09:13 2025 +0100
Ada: Fix ICE in fld_incomplete_type_of when building GtkAda with LTO
This is a regression from GCC 9 present on mainline and all active
branches:
the compilation of GtkAda in LTO mode trips on the assertion present in the
fld_incomplete_type_of function about the TYPE_CANONICAL of types pointed
to
by pointer (or reference) types. The problem comes from an oversight in
the
update_pointer_to function on gcc-interface, which correctly propagates the
TYPE_CANONICAL of the new pointer type to the old one when there is a new
pointer type, but fails to synthesize it when there is no new pointer type.
gcc/ada/
PR ada/123060
* gcc-interface/utils.cc (update_pointer_to): Synthesize a new
TYPE_CANONICAL for the old pointer type in the case where there
is no new pointer type. Likewise for references.
gcc/testsuite/
* gnat.dg/lto30.ads, gnat.dg/lto30.adb: New test.
More information about the Gcc-bugs
mailing list