http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48786
--- Comment #4 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-04-29 16:04:45 UTC --- Mini analysis: (In reply to comment #3) > ==30150== Invalid read of size 8 > ==30150== at 0x4CB104: gfc_compare_derived_types (interface.c:409) The problem is that the second argument of gfc_compare_derived_types is derived2 == NULL. > The issue is that the result variable is not properly initialized; from the > dump: > > struct __class_points2d3d_Point2d_a __result_add_vector_2d; > if (__result_add_vector_2d._data != 0B) That's odd as it should be handled in trans-decl.c around line 3524 (gfc_trans_deferred_vars).