1! { dg-do compile } 2! 3! Clean up, made when working on PR fortran/52864 4! 5! Test some PURE and intent checks - related to pointers. 6module m 7 type t 8 end type t 9 integer, pointer :: x 10 class(t), pointer :: y 11end module m 12 13pure subroutine foo() 14 use m 15 call bar(x) ! { dg-error "can not appear in a variable definition context" } 16 call bar2(x) ! { dg-error "is local to a PURE procedure and has the POINTER attribute" } 17 call bb(y) ! { dg-error "is local to a PURE procedure and has the POINTER attribute" } 18contains 19 pure subroutine bar(x) 20 integer, pointer, intent(inout) :: x 21 end subroutine 22 pure subroutine bar2(x) 23 integer, pointer :: x 24 end subroutine 25 pure subroutine bb(x) 26 class(t), pointer, intent(in) :: x 27 end subroutine 28end subroutine 29