You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Eduardo Ponce (Jira)" <ji...@apache.org> on 2021/05/12 22:57:00 UTC

[jira] [Created] (ARROW-12768) [C++] Add sign bit checks to floating-point arithmetic kernels tests

Eduardo Ponce created ARROW-12768:
-------------------------------------

             Summary: [C++] Add sign bit checks to floating-point arithmetic kernels tests
                 Key: ARROW-12768
                 URL: https://issues.apache.org/jira/browse/ARROW-12768
             Project: Apache Arrow
          Issue Type: Test
          Components: C++
            Reporter: Eduardo Ponce
             Fix For: 5.0.0


There are special cases in arithmetic kernels with floating-point arguments that can result in signed values which are equivalent to their unsigned counterpart when compared with the equality operator. To make the comparisons correct, one needs to also compare the sign bit. For example, *-0.0 == 0.0* is true while *std::signbit(-0.0) == std::signbit(0.0)* is false. This issue also applies to *Inf* and *NaN* values.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)