https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125314
Bug ID: 125314
Summary: ice in copy_reference_ops_from_ref, at
tree-ssa-sccvn.cc:1147 with -O1.
Product: gcc
Version: 16.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: dcb314 at hotmail dot com
Target Milestone: ---
This Fortran 90 source code, from the Fujitsu test suite
on github:
module mod
type ty10(ii)
integer,kind::ii=20
character(len=3) :: chk( ii )
end type
type ::ty1(i,j)
integer,kind::i=1
integer,kind::j=1
character(len=j) :: chk( j )
type(ty10(30)) :: str
end type
contains
function afun()
TYPE(ty1(1,3)) :: afun,afun1
entry afun1()
afun%str%chk(1:3)='abc'
end function
end
use mod
TYPE(ty1(1,3)) ::b
b=afun()
if (b%str%chk(1).ne.'abc') print *,'err1'
if (b%str%chk(2).ne.'abc') print *,'err2'
if (b%str%chk(3).ne.'abc') print *,'err3'
print *,'pass'
end
when compiled by recent gfortran does this:
fujitsu $ ~/gcc/results.20260512.asan.ubsan/bin/gfortran -c -w -O1
trunk/Fortran/0414/0414_0022.f90
during GIMPLE pass: fre
trunk/Fortran/0414/0414_0022.f90:20:4:
20 | use mod
| ^
internal compiler error: in copy_reference_ops_from_ref, at
tree-ssa-sccvn.cc:1147
0x1ffe3d7 internal_error
/home/dcb42/gcc/working/gcc/../../trunk/gcc/diagnostic-global-context.cc:787
0x200862b fancy_abort
/home/dcb42/gcc/working/gcc/../../trunk/gcc/diagnostics/context.cc:1813
0xf0f1af copy_reference_ops_from_ref
/home/dcb42/gcc/working/gcc/../../trunk/gcc/tree-ssa-sccvn.cc:1147
The problem first seems to appear sometime between g:6f3864e2d29ff46e
and g:c0e9c7415cf368b4.
This problem happens on x86_64 and ARM-32.
$ ~/gcc/results.20260512.asan.ubsan/bin/gfortran -v
Using built-in specs.
COLLECT_GCC=/home/dcb42/gcc/results.20260512.asan.ubsan/bin/gfortran
COLLECT_LTO_WRAPPER=/home/dcb42/gcc/results.20260512.asan.ubsan/libexec/gcc/x86_64-pc-linux-gnu/17.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../trunk/configure
--prefix=/home/dcb42/gcc/results.20260512.asan.ubsan --disable-bootstrap
--disable-doc --disable-multilib --with-build-config='bootstrap-asan
bootstrap-ubsan' --with-pkgversion=c0e9c7415cf368b4 --enable-checking=yes
--enable-languages=c,c++,fortran
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 17.0.0 20260512 (experimental) (c0e9c7415cf368b4)
fujitsu $