3 ! Tests the fixes for PR82943.
5 ! This test focuses on calling the type bound procedures in a program.
7 ! Contributed by Alexander Westbrooks <ctechnodev@gmail.com>
13 type, public :: tough_lvl_0(a, b)
14 integer, kind :: a = 1
20 type, public, EXTENDS(tough_lvl_0) :: tough_lvl_1 (c)
26 type, public, EXTENDS(tough_lvl_1) :: tough_lvl_2 (d)
34 class(tough_lvl_0(1,*)), intent(inout) :: this
38 class(tough_lvl_1(1,*,*)), intent(inout) :: this
41 subroutine foobar(this)
42 class(tough_lvl_2(1,*,*,*)), intent(inout) :: this
50 TYPE(tough_lvl_0(1,5)) :: test_pdt_0
51 TYPE(tough_lvl_1(1,5,6)) :: test_pdt_1
52 TYPE(tough_lvl_2(1,5,6,7)) :: test_pdt_2
61 CALL test_pdt_2%foobar()
64 END PROGRAM testprogram