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 $

Reply via email to