! { dg-do run } ! ! PR 57562: [OOP] ICE due to extended derived type with PARAMETER attribute ! ! Contributed by type :: Parent integer :: member1 = 0 end type type, extends(Parent) :: Child integer :: member2 = 0 end type type, extends(Child) :: Grandchild integer :: member3 = 0 end type type(Grandchild), parameter :: object = Grandchild(23, 42, -99) if (object%member1 /= 23) STOP 1 if (object%member2 /= 42) STOP 1 if (object%member3 /= -99) STOP 1 end