http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47546
--- Comment #14 from Mikael Morin <mikael at gcc dot gnu.org> 2011-02-02 22:24:54 UTC --- in read_module, around line 4390 /* Skip symtree nodes not in an ONLY clause, unless there is an existing symtree loaded from another USE statement. */ if (p == NULL) { st = gfc_find_symtree (gfc_current_ns->sym_root, name); if (st != NULL) info->u.rsym.symtree = st; continue; } state_t from hydro_speeds(imported from hydro_state) is not loaded because state_t from hydro_state is already present in the namespace. Thus the components of state_t from hydro_speeds are not loaded either. I don't see any obvious/easy fix right now. I think there were some module symbol conflicts PRs more or less related to this, but can't find them.