Use 0.0f/0.0f instead of math.h NAN #461
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
IEEE754-2008 says it produces a quiet NaN, so as long as the system has IEEE754 math this is fine.
OTOH if the system doesn't have NAN then
math.h
won't define it so this would produce a compilation error.It compiles fine on Clang and GCC but MSVC produces a
warningerror:The only reason to do this is to avoid including
math.h
.So I think the MSVC warning is enough reason to not make this change (just to make the header as warning-clean as possible, especially since this is in a macro currently).EDIT: Oh, it's an error, not a warning, so really does not work. https://learn.microsoft.com/en-us/cpp/error-messages/compiler-errors-1/compiler-error-c2124?view=msvc-170
Issue: #427