http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54107
--- Comment #4 from janus at gcc dot gnu.org 2012-07-29 16:50:37 UTC --- Reduced test case: subroutine compute_routine (zfunc) procedure(compute_routine) :: zfunc end subroutine I would assume that this is invalid, since the declaration of compute_routine's interface is somehow 'recursive', i.e. referring to itself.