diff options
Diffstat (limited to 'test/std/numerics/complex.number/complex.transcendentals/asinh.pass.cpp')
-rw-r--r-- | test/std/numerics/complex.number/complex.transcendentals/asinh.pass.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/test/std/numerics/complex.number/complex.transcendentals/asinh.pass.cpp b/test/std/numerics/complex.number/complex.transcendentals/asinh.pass.cpp index 3da56c32f1987..cb9188d935a25 100644 --- a/test/std/numerics/complex.number/complex.transcendentals/asinh.pass.cpp +++ b/test/std/numerics/complex.number/complex.transcendentals/asinh.pass.cpp @@ -44,6 +44,15 @@ void test_edges() assert(std::signbit(r.real()) == std::signbit(testcases[i].real())); assert(std::signbit(r.imag()) == std::signbit(testcases[i].imag())); } + else if (testcases[i].real() == 0 && std::abs(testcases[i].imag()) == 1) + { + assert(r.real() == 0); + assert(std::signbit(testcases[i].imag()) == std::signbit(r.imag())); + if (std::signbit(testcases[i].imag())) + is_about(r.imag(), -pi/2); + else + is_about(r.imag(), pi/2); + } else if (std::isfinite(testcases[i].real()) && std::isinf(testcases[i].imag())) { assert(std::isinf(r.real())); |