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
I'm opening this as a place for discussion really.
We currently have boost::math::fpclassify/isnan/isinf/isnormal etc which began life as workarounds for C++03 compilers, but they have another role: for IEEE conforming types they work even in the presence of -ffast-math.
Now, I have some dim recollection, that gcc/clang used to replace say std::isnan(x) with a literal false even with just -O3. And that we had some very inscrutable bug reports caused by this. However, that appears not to be the case with current releases, so perhaps this has been fixed/changed?
So... I'm undecided whether the boost functions should become synonyms for the std ones, but just wanted to flag the issue.
The text was updated successfully, but these errors were encountered:
I'm opening this as a place for discussion really.
We currently have boost::math::fpclassify/isnan/isinf/isnormal etc which began life as workarounds for C++03 compilers, but they have another role: for IEEE conforming types they work even in the presence of -ffast-math.
Now, I have some dim recollection, that gcc/clang used to replace say
std::isnan(x)
with a literalfalse
even with just -O3. And that we had some very inscrutable bug reports caused by this. However, that appears not to be the case with current releases, so perhaps this has been fixed/changed?So... I'm undecided whether the boost functions should become synonyms for the std ones, but just wanted to flag the issue.
The text was updated successfully, but these errors were encountered: