3 ! FIXME: Remove -w once switched to polymorphic passed-object dummy arguments.
6 ! Type-bound procedures
7 ! Check calls with GENERIC bindings.
14 PROCEDURE, NOPASS :: plain_int
15 PROCEDURE, NOPASS :: plain_real
16 PROCEDURE, PASS(me) :: passed_intint
17 PROCEDURE, PASS(me) :: passed_realreal
19 GENERIC :: gensub => plain_int, plain_real, passed_intint, passed_realreal
24 SUBROUTINE plain_int (x)
27 WRITE (*,*) "Plain Integer"
28 END SUBROUTINE plain_int
30 SUBROUTINE plain_real (x)
33 WRITE (*,*) "Plain Real"
34 END SUBROUTINE plain_real
36 SUBROUTINE passed_intint (me, x, y)
40 WRITE (*,*) "Passed Integer"
41 END SUBROUTINE passed_intint
43 SUBROUTINE passed_realreal (x, me, y)
47 WRITE (*,*) "Passed Real"
48 END SUBROUTINE passed_realreal
59 CALL myobj%gensub (2.5)
60 CALL myobj%gensub (5, 5)
61 CALL myobj%gensub (2.5, 2.5)
64 ! { dg-output "Plain Integer(\n|\r\n|\r).*Plain Real(\n|\r\n|\r).*Passed Integer(\n|\r\n|\r).*Passed Real" }
65 ! { dg-final { cleanup-modules "m" } }