https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107294
mjr19 at cam dot ac.uk changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mjr19 at cam dot ac.uk --- Comment #5 from mjr19 at cam dot ac.uk --- But 10.1.5.2.4 says "once the interpretation of a numeric intrinsic operation is established, the processor may evaluate any mathematically equivalent expression, provided that the integrity of parentheses is not violated." As cmplx(r)*z and cmplx(r*real(z),r*aimag(z)) are mathematically equivalent, is a Fortran compiler not permitted to make this optimisation (unless conforming to F90 or F95, for 10.1.5.2.4 was first introduced in F2003)? Furthermore, Fortran does not define how complex multiplication is to be performed, so relying on the precise details result when multiplying signed zeros or NaNs may be unwise.