fix potentially wrong-sign zero in cproj functions at infinity
[musl.git] / src / complex / cprojl.c
blob531ffa1c5e85d2fb93c6845a6a240e5091c98650
1 #include "complex_impl.h"
3 #if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
4 long double complex cprojl(long double complex z)
6 return cproj(z);
8 #else
9 long double complex cprojl(long double complex z)
11 if (isinf(creall(z)) || isinf(cimagl(z)))
12 return CMPLXL(INFINITY, copysignl(0.0, cimagl(z)));
13 return z;
15 #endif