complex: add C11 CMPLX macros and replace cpack with them
[musl] / src / complex / csqrt.c
index 21fb879..8a2ba60 100644 (file)
@@ -51,12 +51,12 @@ double complex csqrt(double complex z)
 
        /* Handle special cases. */
        if (z == 0)
-               return cpack(0, b);
+               return CMPLX(0, b);
        if (isinf(b))
-               return cpack(INFINITY, b);
+               return CMPLX(INFINITY, b);
        if (isnan(a)) {
                t = (b - b) / (b - b);  /* raise invalid if b is not a NaN */
-               return cpack(a, t);   /* return NaN + NaN i */
+               return CMPLX(a, t);   /* return NaN + NaN i */
        }
        if (isinf(a)) {
                /*
@@ -66,9 +66,9 @@ double complex csqrt(double complex z)
                 * csqrt(-inf + y i)   = 0   +  inf i
                 */
                if (signbit(a))
-                       return cpack(fabs(b - b), copysign(a, b));
+                       return CMPLX(fabs(b - b), copysign(a, b));
                else
-                       return cpack(a, copysign(b - b, b));
+                       return CMPLX(a, copysign(b - b, b));
        }
        /*
         * The remaining special case (b is NaN) is handled just fine by
@@ -87,10 +87,10 @@ double complex csqrt(double complex z)
        /* Algorithm 312, CACM vol 10, Oct 1967. */
        if (a >= 0) {
                t = sqrt((a + hypot(a, b)) * 0.5);
-               result = cpack(t, b / (2 * t));
+               result = CMPLX(t, b / (2 * t));
        } else {
                t = sqrt((-a + hypot(a, b)) * 0.5);
-               result = cpack(fabs(b) / (2 * t), copysign(t, b));
+               result = CMPLX(fabs(b) / (2 * t), copysign(t, b));
        }
 
        /* Rescale. */