https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69659
--- Comment #4 from Gerhard Steinmetz <gerhard.steinmetz.fort...@t-online.de> --- Another test scheme : $ cat z4.f90 module m type t class(*), allocatable :: z(:) end type contains subroutine s (x) class(*), intent(in) :: x(:) print *, size(x) end subroutine end module $ gfortran-6 -frepack-arrays -c z4.f90 z4.f90:6:0: subroutine s (x) internal compiler error: in gfc_conv_descriptor_data_get, at fortran/trans-array.c:144 $ gfortran-5.3.1 -frepack-arrays -c z4.f90 # ok --- Replacing "class" with "type" : $ cat z5.f90 module m type t class(*), allocatable :: z(:) end type contains subroutine s (x) type(t), intent(in) :: x(:) print *, size(x) end subroutine end module $ gfortran-6 -frepack-arrays -c z5.f90 # ok $ gfortran-5.3.1 -frepack-arrays -c z5.f90 # ok