http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48291
Adrian Prantl <adrian at llnl dot gov> changed: What |Removed |Added ---------------------------------------------------------------------------- Version|4.6.0 |4.3.0 --- Comment #2 from Adrian Prantl <adrian at llnl dot gov> 2011-03-25 22:01:16 UTC --- It seems to concatenate at least the name of the module with the name of the derived type: The culprit is in fortran/class.c:113 /* Create a unique string identifier for a derived type, composed of its name and module name. This is used to construct unique names for the class containers and vtab symbols. */ static void get_unique_type_string (char *string, gfc_symbol *derived) { char dt_name[GFC_MAX_SYMBOL_LEN+1]; sprintf (dt_name, "%s", derived->name); dt_name[0] = TOUPPER (dt_name[0]); if (derived->module) sprintf (string, "%s_%s", derived->module, dt_name); else if (derived->ns->proc_name) sprintf (string, "%s_%s", derived->ns->proc_name->name, dt_name); else sprintf (string, "_%s", dt_name); }