#if defined(NAN2003) logical function hycom_isnaninf(a) use ieee_arithmetic, only : ieee_is_finite implicit none c real a c c********** c* c 1) return .true. if a is NaN or +Inf or -Inf. c c 2) version with ieee_arithmetic intrinsic module c* c********** c hycom_isnaninf = .not. ieee_is_finite(a) end function hycom_isnaninf #else logical function hycom_isnaninf(a) implicit none c real a c c********** c* c 1) return .true. if a is NaN or +Inf or -Inf. c* c********** c hycom_isnaninf = .not. (a.ge.-huge(a) .and. a.le.huge(a)) end #endif c c> Revision history: c> c> Jan. 2014 - ieee_arithmetic intrinsic module version via /* NAN2003 */ macro