1! { dg-do compile } 2! Checks the fix for the bug exposed in fixing PR25147 3! 4! Contributed by Tobias Schlueter <tobi@gcc.gnu.org> 5! 6module integrator 7 interface 8 function integrate(f,xmin,xmax) 9 implicit none 10 interface 11 function f(x) 12 real(8) :: f,x 13 intent(in) :: x 14 end function f 15 end interface 16 real(8) :: xmin, xmax, integrate 17 end function integrate 18 end interface 19end module integrator 20 21 use integrator 22 call foo1 () 23 call foo2 () 24contains 25 subroutine foo1 () 26 real(8) :: f ! This was not trapped: PR25147/25098 27 print *,integrate (f,0d0,3d0) ! { dg-error "Expected a procedure" } 28 end subroutine foo1 29 subroutine foo2 () 30 real(8), external :: g ! This would give an error, incorrectly. 31 print *,integrate (g,0d0,3d0) 32 end subroutine foo2 33end 34