http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46313
--- Comment #25 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-01-09 12:34:08 UTC --- (In reply to comment #24) > r168610 contains the patch from comment #20 which fixes comment #19. > > Is there anything left to do here, or should we finally close this one? I think we might need to revisit the issue when submodules are implemented - but until then everything should work - even the program below works - thus closing as FIXED should be OK. The following program has a name clash - but as the internal procedure is internal, it does not leak out into global name space and works: module mm type t end type t end module mm subroutine outer call mm contains subroutine mm type t end type t class(t),allocatable :: a2 allocate( t :: a2) end subroutine mm end use mm class(t),allocatable :: a1 allocate( t :: a1) call outer end