https://gcc.gnu.org/bugzilla/show_bug.cgi?id=30409
--- Comment #11 from anlauf at gcc dot gnu.org --- (In reply to kargl from comment #10) > (In reply to anlauf from comment #8) > I'm not sure what you are worried about here. If one has > > do i = 1, n > ... = expression1(..., 1/y) > end do > > then this is equivalent to > > do i = 1, n > tmp = 1 / y > ... = expression1(..., tmp) > end do OK so far. > which is equivalent to > > tmp = 1 / y > do i = 1, n > ... = expression1(..., tmp) > end do No. Strictly speaking, it is only equivalent to: if (n > 0) tmp = 1 / y do i = 1, n ... = expression1(..., tmp) end do