https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69308
--- Comment #9 from joseph at codesourcery dot com <joseph at codesourcery dot com> --- Code should not be moved to evaluate a floating-point expression when it would not be evaluated in the abstract machine, if that expression could raise an exception. Whether this should be part of -ftrapping-math (on by default), or a hypothetical stricter option that actually conforms to C99/C11 Annex F, I don't know.