http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46313
--- Comment #6 from janus at gcc dot gnu.org 2010-11-09 11:54:18 UTC --- r166480 fixes the original test case. As Tobias pointed out at http://gcc.gnu.org/ml/fortran/2010-11/msg00120.html there may be additional problems when defining derived types in procedures/submodules.