https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91640
Tobias Burnus <burnus at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |burnus at gcc dot gnu.org --- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> --- (In reply to Richard Biener from comment #1) > Note gimplification fails because we are evaluating in an lvalue context but > got -_7 in the end. In the past we've hacked around Fortran oddities by > doing tem = -_7 Doing "tem = -_7" automatically would paper about a FE bug which is surely the wrong approach! For this ICE, gfortran is doing a copy-in/copy-out if the argument is not known to be contiguous (i.e. not simply contiguous). — The copy-in ("tmp = -z") is fine. But if it is not a variable, copying-back does not make sense ("-z = tmp"). * * * Patch: https://gcc.gnu.org/ml/gcc-patches/2020-01/msg00070.html