https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69659

--- Comment #3 from Gerhard Steinmetz <gerhard.steinmetz.fort...@t-online.de> 
---
Responsible is the class declaration of "x" :

$ cat z1.f90
program p
  type t
    integer :: a
  end type
contains
  subroutine s (x)
    class(t), intent(inout) :: x(:)
    print *, x(1)%a
  end
end


$ gfortran-6 -frepack-arrays -c z1.f90
z1.f90:6:0:

   subroutine s (x)

internal compiler error: in gfc_conv_descriptor_data_get, at
fortran/trans-array.c:144

---


Replacing "class" with "type" :

$ cat z2.f90
program p
  type t
    integer :: a
  end type
contains
  subroutine s (x)
    type(t), intent(inout) :: x(:)
    print *, x(1)%a
  end
end


$ gfortran-6 -frepack-arrays -c z2.f90
# ok

Reply via email to