c/numeric/complex/cacos

@1-3@ Computes the complex arc cosine of with branch cuts outside the interval $[−1,+1]$ along the real axis. @4@ Type-generic macro: If has type,  is called. if has type,  is called, if  has type ,  is called. If is real or integer, then the macro invokes the corresponding real function. If is imaginary, then the macro invokes the corresponding complex number version.

Return value
If no errors occur, complex arc cosine of is returned, in the range a strip unbounded along the imaginary axis and in the interval [0; π] along the real axis.

Error handling and special values
Errors are reported consistent with.

If the implementation supports IEEE floating-point arithmetic,
 * If is, the result is
 * If is, the result is
 * If is  (for any finite x), the result is
 * If is  (for any nonzero finite x), the result is  and fe_invalid may be raised.
 * If is  (for any positive finite y), the result is
 * If is  (for any positive finite y), the result is
 * If is, the result is
 * If is, the result is
 * If is, the result is  (the sign of the imaginary part is unspecified)
 * If is  (for any finite y), the result is  and fe_invalid may be raised
 * If is, the result is
 * If is, the result is
 * If is, the result is