! RUN: %python %S/test_errors.py %s %flang_fc1 module m type t1 end type type t2 class(t2), allocatable :: pc end type class(t1), pointer :: mp1 type(t2) :: mv1 contains pure subroutine subr(pp1, pp2, mp2) class(t1), intent(in out), pointer :: pp1 class(t2), intent(in out) :: pp2 type(t2), pointer :: mp2 !ERROR: Name in DEALLOCATE statement is not definable !BECAUSE: 'mp1' may not be defined in pure subprogram 'subr' because it is host-associated deallocate(mp1) !ERROR: Name in DEALLOCATE statement is not definable !BECAUSE: 'mv1' may not be defined in pure subprogram 'subr' because it is host-associated deallocate(mv1%pc) !ERROR: Object in DEALLOCATE statement is not deallocatable !BECAUSE: 'pp1' is polymorphic in a pure subprogram deallocate(pp1) !ERROR: Object in DEALLOCATE statement is not deallocatable !BECAUSE: 'pc' is polymorphic in a pure subprogram deallocate(pp2%pc) !ERROR: Object in DEALLOCATE statement is not deallocatable !BECAUSE: 'mp2' has polymorphic component '%pc' in a pure subprogram deallocate(mp2) end subroutine end module