http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46196
--- Comment #9 from janus at gcc dot gnu.org 2010-10-30 09:33:12 UTC --- (In reply to comment #8) > I have successfully regtested the following patch Thanks. > I also noticed that the > fix for pr46067 use the asymmetry of gfc_compare_interfaces!-) Right. > --- ../_clean/gcc/fortran/interface.c 2010-10-27 23:47:20.000000000 +0200 > +++ gcc/fortran/interface.c 2010-10-29 10:55:07.000000000 +0200 > @@ -445,16 +445,16 @@ gfc_compare_derived_types (gfc_symbol *d > /* Make sure that link lists do not put this function into an > endless recursive loop! */ > if (!(dt1->ts.type == BT_DERIVED && derived1 == dt1->ts.u.derived) > - && !(dt1->ts.type == BT_DERIVED && derived1 == dt1->ts.u.derived) > + && !(dt2->ts.type == BT_DERIVED && derived2 == dt2->ts.u.derived) > && gfc_compare_types (&dt1->ts, &dt2->ts) == 0) > return 0; > > else if ((dt1->ts.type == BT_DERIVED && derived1 == dt1->ts.u.derived) > - && !(dt1->ts.type == BT_DERIVED && derived1 == dt1->ts.u.derived)) > + && !(dt2->ts.type == BT_DERIVED && derived2 == dt2->ts.u.derived)) > return 0; > > else if (!(dt1->ts.type == BT_DERIVED && derived1 == dt1->ts.u.derived) > - && (dt1->ts.type == BT_DERIVED && derived1 == dt1->ts.u.derived)) > + && (dt2->ts.type == BT_DERIVED && derived2 == dt2->ts.u.derived)) > return 0; Can we find any test case which is sensitive to this change? > This has disturbed my bug collection for the following tests: AFAICS all of the error messages are correct. Thanks for checking.