[Bug fortran/48655] "False positive" with -Warray-temporaries or missing warning with -fcheck=array-temps

dominiq at lps dot ens.fr gcc-bugzilla@gcc.gnu.org
Mon Jan 28 10:52:00 GMT 2019


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=48655

Dominique d'Humieres <dominiq at lps dot ens.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|False positive with         |"False positive" with
                   |-Warray-temporaries and     |-Warray-temporaries or
                   |a=transpose(a)              |missing warning with
                   |                            |-fcheck=array-temps

--- Comment #5 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
> Well, the front end generates the temporary, but the middle end removes it again.

While looking at pr86312, I realized that this not the case: when the warning
is emitted at run time, the file generated by -fdump-tree-original contains
lines such as:

      _gfortran_runtime_warning_at (&"At line 12 of file pr86312.f90"[1]{lb: 1
sz: 1}, &"An array temporary was created"[1]{lb: 1 sz: 1});

So the question is why such lines are sometime emitted and sometime not.


More information about the Gcc-bugs mailing list