https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106902
--- Comment #17 from Alexander Monakov <amonakov at gcc dot gnu.org> --- (In reply to Richard Biener from comment #16) > I do think that since the only way to > preserve expression boundaries is by PAREN_EXPR Yes, but... > that the middle-end > shouldn't care about FAST vs. ON (well, it cannot), but the language > frontends need to ensure to emit PAREN_EXPRs for =ON and omit them for > =FAST. this will also prevent reassociation across statements too. Doing FMA contraction in the frontends via a match.pd rule doesn't have this drawback.