! { dg-do compile } ! ! PR 40039: Procedures as actual arguments: Check intent of arguments ! ! Contributed by Janus Weil module m contains subroutine a(x,f) real :: x interface real function f(y) real,intent(in) :: y end function end interface print *,f(x) end subroutine real function func(z) real,intent(inout) :: z func = z**2 end function subroutine caller interface real function p(y) real,intent(in) :: y end function end interface pointer :: p call a(4.3,func) ! { dg-error "INTENT mismatch in argument" } p => func ! { dg-error "INTENT mismatch in argument" } end subroutine end module