Return true if number is a signaling NaN.
Synopsis
Declared in <bdlb_float.h>
static
bool
isSignalingNan(float number);
Description
An invalid floating‐point value ("signaling NaN" or "SNaN") is never the result of a valid operation ‐‐ it must be produced deliberately (i.e., by calling bsl::numeric_limits<float>::signaling_NaN()). If an SNaN is used in a subsequent operation, the result is undefined and may result in a hardware trap leading to a signal. Some platforms do not support signaling NaNs, especially for single‐precision floats, and will convert an SNaN to a QNaN on assignment or copy‐initialization (including argument passing). isSignalingNan will always return false on such platforms. Note that, because an SNaN is a NaN, if this method returns true, then isNan(x) will also return true.
Return Value
true if number is a signaling NaN, and false otherwise
Parameters
Name |
Description |
number |
floating‐point value to test |
Created with MrDocs