NAME | SYNOPSIS | API RESTRICTIONS | DESCRIPTION | ATTRIBUTES | SEE ALSO
$(NUCLEUS_DIR)/lib/libm.a #include <math.h>double infnan(int iarg);
The function or functions documented here may not be used safely in all application contexts with all APIs provided in the ChorusOS 5.0 product.
See API(5FEA) for details.
Invalid, Overflow, and Divide-by-Zero events are signaled to the application by calls to infnan() in appropriate places in libm. As exception-handling depends upon the operating system, infnan() does not necessarily alter the current flow of control. Users of libm can design their own infnan().
Whenever an elementary function code in libm runs into an exceptional situation, or has to return an invalid result, it calls infnaniarg() with an appropriate value of iarg (ERANGE or EDOM). The infnan() function assigns the corresponding value to errno and triggers whatever exception mechanism is available. If given control back, it returns a non-finite value, which allows computation to resume, and prompts the user to consult the errno file.
ERANGE and EDOM are defined in errno.h.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Interface Stability | Evolving |
NAME | SYNOPSIS | API RESTRICTIONS | DESCRIPTION | ATTRIBUTES | SEE ALSO