------- Comment #2 from janus at gcc dot gnu dot org 2009-06-22 21:56 -------
The missing checks are due to the following code in interface.c
(compare_parameter):
if (formal->ts.type == BT_DERIVED
&& formal->ts.derived && formal->ts.derived->ts.is_iso_c
&& actual->ts.type == BT_DERIVED
&& actual->ts.derived && actual->ts.derived->ts.is_iso_c)
return 1;
Either this should be removed altogether, or at least the derived types should
be checked for equality.
However, removing it causes iso_c_binding_rename_1.f03 to fail.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38894