http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57549
Tobias Burnus <burnus at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |accepts-invalid, diagnostic --- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> --- There current code is odd: The following is clearly invalid, but it is not diagnosed - but it compiles: print *, [ type(t) :: ] end Reason: "t" is never defined - and the reason for the next item. Also the following is invalid - and compiles: print *, [ type(integer) :: ] end Reason: TYPE(...), i.e. a declaration-type-spec, is not permitted; the standard only permits an intrinsic-type-spec/derived-type-spec, i.e. "integer" or a derived-type name like "t" without TYPE(). The Fortran 2008 standard has: R469 ac-spec is type-spec :: or [type-spec ::] ac-value-list R402 type-spec is intrinsic-type-spec or derived-type-spec R453 derived-type-spec is type-name [ ( type-param-spec-list ) ]