http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46313
--- Comment #19 from janus at gcc dot gnu.org 2011-01-07 12:16:34 UTC --- (In reply to comment #18) > Is there any issue left to be fixed? I think there isn't. > (Except for an accepts-invalid diagnostic for comment 7 [module "m" vs. > subroutine "m", which USEs "m"], which is now PR 47203.) I think the code in comment #12 still does not work. Here is a slightly modified version: module one type two_three end type two_three end module one module one_two type three end type three end module one_two use one use one_two class(two_three), allocatable :: a1 class(three), allocatable :: a2 print *,allocated(a1) print *,allocated(a2) end In the dump you can see that we end up with one vtab for both types.