https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106970
--- Comment #7 from David Binderman <dcb314 at hotmail dot com> --- I am not too sure that what I found is the same as the original bug report. Reduced C code is: int script_obj_as_number_obj, script_obj_as_number_obj_0_0; double script_obj_as_number() { if (script_obj_as_number_obj) return script_obj_as_number_obj_0_0; return __builtin_nanf(""); } void script_obj_cmp() { double num_b = script_obj_as_number(); if (0 < num_b) return; } This code crashes with gcc from an hour or so ago, with git hash d99821624c340429. I would be grateful if Aldy could confirm that the above code works fine in his version with -Ofast. My apologies for not making clear which version of gcc trunk I meant.