summaryrefslogtreecommitdiff
path: root/include/complex
diff options
context:
space:
mode:
Diffstat (limited to 'include/complex')
-rw-r--r--include/complex2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/complex b/include/complex
index 6f8815298ca6..07d3754658fb 100644
--- a/include/complex
+++ b/include/complex
@@ -1249,10 +1249,12 @@ acosh(const complex<_Tp>& __x)
if (isnan(__x.imag()))
return complex<_Tp>(abs(__x.real()), __x.imag());
if (isinf(__x.imag()))
+ {
if (__x.real() > 0)
return complex<_Tp>(__x.real(), copysign(__pi * _Tp(0.25), __x.imag()));
else
return complex<_Tp>(-__x.real(), copysign(__pi * _Tp(0.75), __x.imag()));
+ }
if (__x.real() < 0)
return complex<_Tp>(-__x.real(), copysign(__pi, __x.imag()));
return complex<_Tp>(__x.real(), copysign(_Tp(0), __x.imag()));