module circle | |
implicit none | |
integer :: x | |
real :: radius | |
interface default | |
module procedure timestwo | |
end interface | |
contains | |
elemental integer function timestwo(x) result(y) | |
integer, intent(in) :: x | |
y = 2*x | |
end function | |
end module circle | |
program prog | |
use, non_intrinsic :: circle, only: timestwo, x | |
implicit none | |
x = 3 | |
if (timestwo(x) /= 6) error stop 'fortran module procedure problem' | |
print *,'OK: Fortran module procedure' | |
end program prog |