Skip to content

Conversation

@fxing-qnx
Copy link
Contributor

@fxing-qnx fxing-qnx commented Jan 21, 2025

Fixes # N/A

Proposed changes: Replace isinff(...) with a combination of isinf(...) and signbit(...)

Benchmark results: No changes in performance.

Test suite changes: N/A

Almost the same to #188, but more aggressive. isinff(...) is completely remove from the source tree.
Reason: Mentioned in PR188, isinff(...) is both obsolete and non-standard. To maximize portability and suggested by GNU, we should have it replaced.

PS, Sorry due to our process we need to always fork under tags even if a tag only contains version changes. I have a rebased branch ready for merge now.

Edit:
Fix #278

@ebassi
Copy link
Owner

ebassi commented Jan 21, 2025

4/23 graphene / box ERROR 0.02s exit status 1

▶ 4/23 - box(empty).center() to be in (0, 0, 0) FAIL

@fxing-qnx
Copy link
Contributor Author

4/23 graphene / box ERROR 0.02s exit status 1

▶ 4/23 - box(empty).center() to be in (0, 0, 0) FAIL

Yeah I saw that, very weird.........

@fxing-qnx
Copy link
Contributor Author

fxing-qnx commented Jan 21, 2025

@ebassi -ffast-math is set by build configurations. According to https://gcc.gnu.org/wiki/FloatingPointMath, this flag will also set -ffnite-math-only which will violate IEEE's floating-point specification and can potentially cause standard functions like isinf(...) to fail.

The problem on the surface is isinf(...) will only work for double type instead of float. For some reasons isinff(...) will return the right answer even with those flags.

@ebassi
Copy link
Owner

ebassi commented Jan 23, 2025

The MSYS2 build failure in CI is caused by a package rename, and has been fixed in master.

@fxing-qnx
Copy link
Contributor Author

It should now be fine........

@fxing-qnx
Copy link
Contributor Author

@ebassi Are the changes ok now?

@ebassi ebassi merged commit 1c26440 into ebassi:master Dec 19, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Box tests fail on QNX 8.0 and 7.0

2 participants