https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79117
--- Comment #4 from Uroš Bizjak <ubizjak at gmail dot com> --- (In reply to Julian Taylor from comment #3) > using isinf is not correct as isinf(nan) == 0 > why does isinf do the truncation on x87 and isfinite does not? Because isinf is expanded in a target-dependent part and isfinite in a generic part of the compiler.