! { dg-do compile } program p type t integer :: n end type type(t) :: x class(t) :: y ! { dg-error "must be dummy, allocatable or pointer" } print *, extends_type_of(x, y) print *, extends_type_of(y, x) end