http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56174
Mikael Morin <mikael at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mikael at gcc dot gnu.org --- Comment #1 from Mikael Morin <mikael at gcc dot gnu.org> 2013-02-01 22:58:49 UTC --- (In reply to comment #0) > Using > INTEGER, PARAMETER :: a(2) = (/ 1, 2 /), b = HUGE(b) > is invalid per the arguments given below. [...] > > "If a constant expression includes a specification inquiry that depends > on a type parameter or an array bound of an entity specified in the > same specication-part, the type parameter or array bound shall be > specified in a prior specification of the specification-part. > One could argue that the kind parameter is specified at the end of INTEGER, thus outside the entity-decl. ;-) We should allow this; there is no ambiguity. I think there were other bugs dealing with self-recursive specification. I could only find pr47915, which is loosely related.