You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When hashing floats. You seem to handle plus and minus zero as the same value (as you should).
In floats there are many different NAN values, that generally fall into thee classes, -infinity, +infinity and "the rest". Do you not agree that all floats in the "the rest" class should hash to the same value? In boost they switch over the result of std::fpclassify when hashing floats.
The text was updated successfully, but these errors were encountered:
infinity and -infinity compare not equal and have different bit patterns, and thus different hash codes. All is well there.
Nans are a different story. nan != nan, irregardless of the bit pattern representing the nan. This is sufficiently troublesome that nans today don't go into any associative or unordered container using the default comparators. To date, this proposal has done nothing to change that: nans are still not supported by default.
When hashing floats. You seem to handle plus and minus zero as the same value (as you should).
In floats there are many different NAN values, that generally fall into thee classes, -infinity, +infinity and "the rest". Do you not agree that all floats in the "the rest" class should hash to the same value? In boost they switch over the result of std::fpclassify when hashing floats.
The text was updated successfully, but these errors were encountered: