1! { dg-do compile } 2! PR fortran/37504 3! 4module m 5 implicit none 6 integer, pointer, protected :: protected_pointer 7 integer, target, protected :: protected_target 8end module m 9 10program p 11 use m 12 implicit none 13 integer, pointer :: unprotected_pointer 14 ! The next two lines should be rejected; see PR 37513 why 15 ! we get such a strange error message. 16 protected_pointer => unprotected_pointer ! { dg-error "pointer association context" } 17 protected_pointer = unprotected_pointer ! OK 18 unprotected_pointer => protected_target ! { dg-error "target has PROTECTED attribute" } 19 unprotected_pointer => protected_pointer ! OK 20end program p 21