4 ! Test for additional errors with type-bound procedure bindings.
5 ! Namely that non-scalar base objects are rejected for TBP calls which are
6 ! NOPASS, and that passed-object dummy arguments must be scalar, non-POINTER
14 PROCEDURE, NOPASS :: myproc
19 PROCEDURE, PASS :: nonscalar ! { dg-error "must be scalar" }
20 PROCEDURE, PASS :: is_pointer ! { dg-error "must not be POINTER" }
21 PROCEDURE, PASS :: is_allocatable ! { dg-error "must not be ALLOCATABLE" }
29 SUBROUTINE nonscalar (me)
30 CLASS(t2), INTENT(IN) :: me(:)
31 END SUBROUTINE nonscalar
33 SUBROUTINE is_pointer (me)
34 CLASS(t2), POINTER, INTENT(IN) :: me
35 END SUBROUTINE is_pointer
37 SUBROUTINE is_allocatable (me)
38 CLASS(t2), ALLOCATABLE, INTENT(IN) :: me
39 END SUBROUTINE is_allocatable
43 CALL arr%myproc () ! { dg-error "must be scalar" }