diff options
Diffstat (limited to 'math/s_csin_template.c')
-rw-r--r-- | math/s_csin_template.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/math/s_csin_template.c b/math/s_csin_template.c index 59d887693c..2fe0b157cb 100644 --- a/math/s_csin_template.c +++ b/math/s_csin_template.c @@ -96,11 +96,8 @@ M_DECL_FUNC (__csin) (CFLOAT x) if (icls == FP_ZERO) { /* Imaginary part is 0.0. */ - __real__ retval = M_NAN; + __real__ retval = __real__ x - __real__ x; __imag__ retval = __imag__ x; - - if (rcls == FP_INFINITE) - feraiseexcept (FE_INVALID); } else { @@ -145,12 +142,8 @@ M_DECL_FUNC (__csin) (CFLOAT x) } else { - /* The addition raises the invalid exception. */ - __real__ retval = M_NAN; + __real__ retval = __real__ x - __real__ x; __imag__ retval = M_HUGE_VAL; - - if (rcls == FP_INFINITE) - feraiseexcept (FE_INVALID); } } else |