Skip to content

Instantly share code, notes, and snippets.

@pletnes
Created June 29, 2015 08:27
Show Gist options
  • Save pletnes/73d52a4a71a4b0074dd9 to your computer and use it in GitHub Desktop.
Save pletnes/73d52a4a71a4b0074dd9 to your computer and use it in GitHub Desktop.
program test_nearest
integer, parameter :: R8P = 8
real(R8P) :: z
#ifdef __GFORTRAN__
real(R8P), parameter:: ZeroR8 = nearest(1._R8P, 1._R8P) - nearest(1._R8P,-1._R8P)
real(R8P), parameter:: ZeroR8_2 = nearest(1._R8P, 1._R8P) - 1._R8P
#endif
real(R8P), parameter:: ZeroR8_3 = epsilon(z)
#ifdef __GFORTRAN__
write (*,"((G50.15))") ZeroR8
write (*,"((G50.15))") ZeroR8_2
#endif
write (*,"((G50.15))") ZeroR8_3
end program test_nearest
@pletnes
Copy link
Author

pletnes commented Jun 29, 2015

~/tmp % gfortran ./foo.F90 && ./a.out
0.333066907387547E-15
0.222044604925031E-15
0.222044604925031E-15

~/tmp % pgfortran ./foo.F90 && ./a.out
0.222044604925031E-15

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment