! { dg-do run }
! PR 92755 - this used to cause an ICE (see dependency_57.f90)
! PR83118 - fixed so that it would run :-)
! Original test case by Gerhard Steinmetz
program p
type t
integer :: i
end type
type t2
class(t), allocatable :: a(:)
end type
type(t2) :: z
z%a = [t(1),t(2),t(3)]
z%a = [z%a]
select type (y => z%a)
type is (t)
if (any (y%i .ne. [1, 2, 3])) stop 1
end select
end