http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60359
--- Comment #2 from Antony Lewis <antony at cosmologist dot info> --- This was reduced already, but actually wasn't too hard to find something much simpler- just this: module IO implicit none contains subroutine FWRite(S) class(*) :: S end subroutine FWrite subroutine IO_OutputMargeStats() character(LEN=128) tag call FWrite(' '//tag) call FWrite(' '//tag) end subroutine IO_OutputMargeStats end module IO