In the current implementation of Fortran 2003 type-bound procedures, DEFERRED bindings are not yet implemented. The DEFERRED type attribute will be parsed but results in an immediate error.
A proposed patch for 4.5 can be found at: http://gcc.gnu.org/ml/fortran/2008-12/msg00109.html
Subject: Bug 37423 Author: domob Date: Sun Mar 29 17:47:00 2009 New Revision: 145248 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=145248 Log: 2009-03-29 Daniel Kraft <d@domob.eu> PR fortran/37423 * gfortran.h (struct gfc_typebound_proc): Added new flag `deferred' and added a comment explaining DEFERRED binding handling. * decl.c (match_binding_attributes): Really match DEFERRED attribute. (match_procedure_in_type): Really match PROCEDURE(interface) syntax and do some validity checks for DEFERRED and this construct. * module.c (binding_overriding): New string constant for DEFERRED. (mio_typebound_proc): Module-IO DEFERRED flag. * resolve.c (check_typebound_override): Ensure that a non-DEFERRED binding is not overridden by a DEFERRED one. (resolve_typebound_procedure): Allow abstract interfaces as targets for DEFERRED bindings. (ensure_not_abstract_walker), (ensure_not_abstract): New methods. (resolve_fl_derived): Use new `ensure_not_abstract' method for non-ABSTRACT types extending ABSTRACT ones to ensure each DEFERRED binding is overridden. (check_typebound_baseobject): New method. (resolve_compcall), (resolve_typebound_call): Check base-object of the type-bound procedure call. * gfc-internals.texi (Type-bound procedures): Document a little bit about internal handling of DEFERRED bindings. 2009-03-29 Daniel Kraft <d@domob.eu> PR fortran/37423 * gfortran.dg/typebound_proc_4.f03: Remove not-implemented check for DEFERRED bindings. * gfortran.dg/typebound_proc_9.f03: New test. * gfortran.dg/typebound_proc_10.f03: New test. * gfortran.dg/typebound_proc_11.f03: New test. * gfortran.dg/abstract_type_5.f03: New test. Added: trunk/gcc/testsuite/gfortran.dg/abstract_type_5.f03 trunk/gcc/testsuite/gfortran.dg/typebound_proc_10.f03 trunk/gcc/testsuite/gfortran.dg/typebound_proc_11.f03 trunk/gcc/testsuite/gfortran.dg/typebound_proc_9.f03 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/decl.c trunk/gcc/fortran/gfc-internals.texi trunk/gcc/fortran/gfortran.h trunk/gcc/fortran/module.c trunk/gcc/fortran/resolve.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/typebound_proc_4.f03
Fixed on trunk (4.5)