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

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

     [ https://issues.apache.org/jira/browse/ARROW-12768?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Antoine Pitrou reassigned ARROW-12768:
--------------------------------------

    Assignee: Antoine Pitrou

> [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
>            Assignee: Antoine Pitrou
>            Priority: Minor
>             Fix For: 7.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.20.1#820001)