sinh¶
Synopsis¶
#include <math.h>
double sinh(double x);
float sinhf(float x);
long double sinhl(long double x);
Status¶
Partially implemented
Conformance¶
IEEE Std 1003.1-2017
Description¶
These functions shall compute the hyperbolic sine of their argument x.
An application wishing to check for error situations should set errno to zero and call
feclearexcept(FE_ALL_EXCEPT) before calling these functions. On return, if errno is non-zero or
fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) is non-zero, an error has occurred.
Return value¶
Upon successful completion, these functions shall return the hyperbolic sine of x.
If the result caused an overflow, a range error shall occur and ±HUGE_VAL, ±HUGE_VALF, and ±HUGE_VALL
(with the same sign as x) shall be returned as appropriate for the type of the function.
If
x is NaN, a NaN shall be returned.
If x is ±0 or ±Inf, x shall be returned.
If x is subnormal, a range error may occur
and x should be returned.
If
x is not returned, sinh(), sinhf(), and sinhl() shall return an implementation-defined value no greater
in magnitude than DBL_MIN, FLT_MIN, and LDBL_MIN, respectively.
Errors¶
These functions shall fail if:
Range Error- The result would cause an overflow.
If the integer expression (math_errhandling & MATH_ERRNO) is non-zero, then errno shall be set to ERANG. If
the integer expression (math_errhandling & MATH_ERREXCEPT) is non-zero, then the overflow floating-point exception
shall be raised.
Tests¶
Untested
Known bugs¶
None