You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by GitBox <gi...@apache.org> on 2021/08/19 14:28:54 UTC

[GitHub] [arrow] kkraus14 commented on pull request #10945: ARROW-13602: [C++] Fix strict aliasing warning in bit util test

kkraus14 commented on pull request #10945:
URL: https://github.com/apache/arrow/pull/10945#issuecomment-901963373


   > > Certain platforms don't use 32 bit for float and 64 bit for double
   > 
   > Really? Which platforms are they? I don't think Arrow will work at all on them (we currently rely on the fact that the C `double` (respectively `float`) type is a IEEE 64-bit (resp. 32-bit) binary floating-point number.
   
   I don't think any of the platforms that Arrow supports deviate from the norm. Older HPC platforms like Cray-1 and Cray X-MP used 64 bit for `float` for example. Unfortunately compilers try to support everything, so `float` and `double` are considered platform defined similar to `int` and it's not universally safe to assume they're sized as 32 bit and 64 bit respectively, so the compiler warns.
   
   In practice this was an innocuous warning and the compiler will optimize out the copy we added to the code here. Just going through and fixing all of the compiler warnings right now as a way to get myself introduced to the Arrow C++ codebase.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org