------- Comment #14 from burnus at gcc dot gnu dot org 2008-01-25 08:52 ------- The change seems to be introduced around 2007-01-08-r120570 / 2007-01-09-r120610.
Most probably: r120584 | sayle | 2007-01-08 18:56:37 +0100 (Mo, 08 Jan 2007) | 19 lines * trans-array.c (constant_array_constructor_p): New function to determine whether an array constructor consists only of constant elements, and if so return it's size. (gfc_build_constant_array_constructor): Construct a statically initialized gfortran array for a given EXPR_ARRAY. (gfc_trans_constant_array_constructor): Efficiently scalarize a constant array constructor. (gfc_trans_array_constructor): Tidy up use of CONST_STRING. Special case scalarization of constant array constructors, all of whose elements are specified, using constant_array_constructor_p and gfc_trans_constant_array_constructor. (gfc_conv_scalarized_array_ref): Check whetger info->offset is zero before adding it to index, to avoid creating a NON_LVALUE_EXPR. * gfortran.dg/array_constructor_14.f90: New test case. * gfortran.dg/vect/vect-5.f90: Update test for improved alignment. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34946