http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25096
Dominique d'Humieres <dominiq at lps dot ens.fr> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |INVALID --- Comment #5 from Dominique d'Humieres <dominiq at lps dot ens.fr> --- (In reply to comment #4) > > just a question. why is this illegal ? > > it is R528 in the section on the data statement of the F2003 standard > that suggests this has to be a scalar-structure-component. Not so obvious > why, > if you ask me. R528 for F2003 is > R528 data-i-do-object is array-element > or scalar-structure-component > or data-implied-do It differs from F95 > R534 data-stmt-object is variable > or data-implied-do None of them rules out data-implied-do, so I think g95 is wrong (it still rejects the code if I replace '8*0' with '4*0'. I have no doubt that TYPE T1 INTEGER :: I(2) END TYPE T1 TYPE(T1) :: D(4) DATA (D(i)%I,i=1,4) /4*0/ END is valid and I did not find where n*v for n>'number of elements to initialize' is forbidden by the standards. Closing as INVALID.