Updated patch: After fixing two small errors, the patch also fixes PR 47710 (test case added).
Still regtesting cleanly ... Cheers, Janus 2012-06-17 Janus Weil <ja...@gcc.gnu.org> PR fortran/47710 PR fortran/53328 * interface.c (count_types_test,generic_correspondence, gfc_compare_interfaces): Ignore PASS arguments. (check_interface1,compare_parameter): Pass NULL arguments to gfc_compare_interfaces. * gfortran.h (gfc_compare_interfaces): Modified Prototype. * expr.c (gfc_check_pointer_assign): Pass NULL arguments to gfc_compare_interfaces. * resolve.c (resolve_structure_cons): Ditto. (check_generic_tbp_ambiguity): Determine PASS arguments and pass them to gfc_compare_interfaces. 2012-06-17 Janus Weil <ja...@gcc.gnu.org> PR fortran/47710 PR fortran/53328 * gfortran.dg/typebound_generic_12.f03: New. * gfortran.dg/typebound_generic_13.f03: New. 2012/6/17 Janus Weil <ja...@gcc.gnu.org>: > Hi all, > > here is a patch which concerns the ambiguity checking of generic TBPs, > where F03 has similar rules as F95, with the difference that PASS > arguments basically should be skipped in these tests. That is what the > patch implements by passing the PASS arguments to > 'gfc_compare_interfaces' and modifying the helper functions > 'count_types_test' and 'generic_correspondence'. > > Patch is regtested on x86_64-unknown-linux-gnu. I also checked that it > gives correct behavior for the extended tests posted by Salvatore at: > http://gcc.gnu.org/ml/fortran/2012-05/msg00060.html > > Ok for trunk? > > Btw, we have a couple more PRs regarding generic TBPs, and I hope to > find the time to tackle some of these soon. > > Cheers, > Janus > > > > 2012-06-17 Janus Weil <ja...@gcc.gnu.org> > > PR fortran/53328 > * interface.c (count_types_test,generic_correspondence, > gfc_compare_interfaces): Ignore PASS arguments. > (check_interface1,compare_parameter): Pass NULL arguments to > gfc_compare_interfaces. > * gfortran.h (gfc_compare_interfaces): Modified Prototype. > * expr.c (gfc_check_pointer_assign): Pass NULL arguments to > gfc_compare_interfaces. > * resolve.c (resolve_structure_cons): Ditto. > (check_generic_tbp_ambiguity): Determine PASS arguments and pass them > to gfc_compare_interfaces. > > > 2012-06-17 Janus Weil <ja...@gcc.gnu.org> > > PR fortran/53328 > * gfortran.dg/typebound_generic_12.f03: New.
pr53328_v2.diff
Description: Binary data
typebound_generic_12.f03
Description: Binary data
typebound_generic_13.f03
Description: Binary data