[llvm-bugs] [Bug 28936] New: std/numerics/complex.number/complex.transcendentals/asin.pass.cpp depends on the sign bit of NaN numbers

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Aug 11 03:36:59 PDT 2016


https://llvm.org/bugs/show_bug.cgi?id=28936

            Bug ID: 28936
           Summary: std/numerics/complex.number/complex.transcendentals/as
                    in.pass.cpp depends on the sign bit of NaN numbers
           Product: libc++
           Version: 3.9
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: release blocker
          Priority: P
         Component: All Bugs
          Assignee: unassignedclangbugs at nondot.org
          Reporter: Vasileios.Kalintiris at imgtec.com
                CC: llvm-bugs at lists.llvm.org, mclow.lists at gmail.com
            Blocks: 28600
    Classification: Unclassified

I marked this test as a release blocker because it is failing in the 3.9rc1
release. However, even though I'm not too familiar with the IEEE754 standard, I
believe that this test relies on behaviour specified by the newer, 2008
revision.

One test case that fails is std::complex<double>(NAN, -2) which on the MIPS
board produces r=(NAN, NAN), instead of the expected (NAN,-NAN) value:

else if (std::isnan(testcases[i].real()) && std::isfinite(testcases[i].imag()))
{
    assert(std::isnan(r.real()));
    assert(std::isnan(r.imag()));
    assert(std::signbit(testcases[i].imag()) == std::signbit(r.imag()));
}

All the cases from "cases.h" that fail on the asin.pass.cpp test, depend on the
sign-bit being set for NaNs too.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20160811/2e686f10/attachment.html>


More information about the llvm-bugs mailing list