LAISNAN - 5.2 English - 68552

AOCL API Guide (68552)

Document ID
68552
Release Date
2025-12-29
Version
5.2 English
template<typename T>
logical laisnan(real *sin1, real *sin2)#

LAISNAN tests input for NaN by comparing two arguments for inequality.

Purpose:

 This routine is not for general use.  It exists solely to avoid
 over-optimization in ISNAN.

 LAISNAN checks for NaNs by comparing its two arguments for
 inequality.  NaN is the only floating-point value where NaN != NaN
   returns .TRUE.  To check for NaNs, pass the same variable as both
 arguments.

 A compiler must assume that the two arguments are
 not the same variable, and the test will not be optimized away.
 Interprocedural or whole-program optimization may delete this
 test.  The ISNAN functions will be replaced by the correct
 Fortran 03 intrinsic once the intrinsic is widely available.
Parameters:
  • SIN1[in] SIN1 is REAL

  • SIN2[in]

    SIN2 is REAL

    Two numbers to compare for inequality.

Returns:

LOGICAL Boolean. Return TRUE if argument is NAN.