about summary refs log tree commit diff
path: root/math/s_csin_template.c
diff options
context:
space:
mode:
Diffstat (limited to 'math/s_csin_template.c')
-rw-r--r--math/s_csin_template.c11
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