root/src/system/libroot/posix/musl/complex/cacosh.c
#include "complex_impl.h"

/* acosh(z) = ±i acos(z) */

double complex cacosh(double complex z)
{
        int zineg = signbit(cimag(z));

        z = cacos(z);
        if (zineg) return CMPLX(cimag(z), -creal(z));
        else       return CMPLX(-cimag(z), creal(z));
}