module test_default_format interface test module procedure test_rl end interface test integer, parameter :: kl = selected_real_kind (precision (0.0_8) + 1) integer, parameter :: count = 200 contains function test_rl (start, towards) result (res) integer, parameter :: k = kl integer, intent(in) :: towards real(k), intent(in) :: start integer :: res, i real(k) :: x, y character(len=100) :: s res = 0 if (towards >= 0) then x = start do i = 0, count write (s,*) x read (s,*) y if (y /= x) res = res + 1 x = nearest(x,huge(x)) end do end if if (towards <= 0) then x = start do i = 0, count write (s,*) x read (s,*) y if (y /= x) res = res + 1 x = nearest(x,-huge(x)) end do end if end function test_rl end module test_default_format