! { dg-do compile } ! Type-bound procedures ! Test that legal usage of DEFERRED is accepted. MODULE testmod IMPLICIT NONE ABSTRACT INTERFACE SUBROUTINE intf () END SUBROUTINE intf END INTERFACE TYPE, ABSTRACT :: abstract_type CONTAINS PROCEDURE(intf), DEFERRED, NOPASS :: p1 PROCEDURE(realproc), DEFERRED, NOPASS :: p2 END TYPE abstract_type TYPE, EXTENDS(abstract_type) :: sub_type CONTAINS PROCEDURE, NOPASS :: p1 => realproc PROCEDURE, NOPASS :: p2 => realproc END TYPE sub_type CONTAINS SUBROUTINE realproc () END SUBROUTINE realproc END MODULE testmod