-
Notifications
You must be signed in to change notification settings - Fork 260
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
lgamma test failing (nan) with clang 19 on arm64 #1066
Comments
I noticed that 6c86b23 fixed undefined behavior in lgamma, and the fix hasn't been released yet. Could this be it? |
@JohanMabille you usually handle releases, can you do this, or do you want me to make that one? |
I can confirm that patch fixes the issue https://ci.debian.net/packages/x/xsimd/unstable/arm64/ Edit: wait, no another Debian developer set it back to clang-18. Will have to test separately. |
And confirming now the patch does fix it for clang-19 |
we made a new release that integrates the patch, let's close? |
The lgamma test at
xsimd/test/test_xsimd_api.cpp
Line 631 in a9d021a
is failing with clang 19 on arm64,
see debian test log https://ci.debian.net/data/autopkgtest/unstable/arm64/x/xsimd/54522214/log.gz
from https://ci.debian.net/packages/x/xsimd/unstable/arm64/
So, apparently
xsimd::lgamma(2)
is returning-nan
instead of 0 when compiled with clang 19 on arm64. Perhaps it's a bug in clang, not xsimd.For comparison, the same test is passing with gcc 14 (at 1733s in the same test log). clang 19 is passing on amd64.
Separately, I'm concerned that many tests, nearly all in fact, use equality (
CHECK_EQ
) to make floating point comparisons. They would want to be used withdoctest::Approx
, as a couple of the tests are doing. Using equality for floating point comparison inevitably fails. However in this case the bigger problem is thenan
value returned, not the floating point comparison.The text was updated successfully, but these errors were encountered: