[Bug fortran/41137] inefficient zeroing of an array

burnus at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Mar 29 22:39:00 GMT 2013


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41137

Tobias Burnus <burnus at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |burnus at gcc dot gnu.org

--- Comment #16 from Tobias Burnus <burnus at gcc dot gnu.org> 2013-03-29 22:38:58 UTC ---
Possible off-topic remark - or hitting right on the nail: Looking at
  a(:,:,:,:)=0.0
and
  a(5:) = 0.0
I wonder whether it couldn't be handled via RANGE_REF, e.g.
  RANGE_REF(a,5,...) = { };
should work if I am not mistaken. Currently, we only do "a = 0.0" -> "a = {};".

See ARRAY_RANGE_REF in trans-expr.c's class_array_data_assign
(gfc_index_zero_node is the offset) for the usage; see also GCC internal manual
and Ada.



More information about the Gcc-bugs mailing list