http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52451
--- Comment #3 from Rich Felker <bugdal at aerifal dot cx> 2012-04-23 09:37:45 UTC --- Compiling with the -mno-ieee-fp option fixes this bug. It seems like the behavior of this option is reversed from the documentation; -mno-ieee-fp gives IEEE conformant comparisons (raising exception on unordered) and -mieee-fp gives non-conformant comparisons (silent on unordered)...