https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117805
--- Comment #5 from mjr19 at cam dot ac.uk --- Compiling with -fno-signed-zeros does work surprisingly well. I say "surprisingly", as I think that the change affects more than just signed zeros, in that 3.0*(2.0,Inf) might be (6.0,Inf) or (NaN,Inf). But I would argue that this does not matter -- either result is fine. I agree that it would be best to have a flag which limits its effect to the complex type. When and whether Fortran requires full IEEE signed zero support for real variables is a different debate, and until there is a clear answer of "never" to that question, gfortran's current default treatment of signed zeros for reals should probably not be disturbed.