3 ! Test the fix for PR86760 in which temporaries were not being
4 ! assigned for array component references.
6 ! Contributed by Chris Hansen <hansec@uw.edu>
8 MODULE test_nesting_mod
16 CLASS(test_obj1
), POINTER :: f
=> NULL()
20 TYPE(obj_ptr
), POINTER, DIMENSION(:) :: v
=> NULL()
27 SUBROUTINE destroy(self
)
28 CLASS(test_obj1
), INTENT(INOUT
):: self
32 SUBROUTINE container_destroy(self
)
33 type(obj_container
), INTENT(INOUT
) :: self
35 DO i
=1,ubound(self
%v
,1)
36 CALL self
%v(i
)%f
%destroy()
43 PROGRAM test_nesting_ptr
47 INTEGER, PARAMETER :: n
= 2
48 TYPE(obj_container
) :: var
52 ALLOCATE(test_obj1
::var
%v(i
)%f
)
54 CALL container_destroy(var
)
56 if (ctr
.ne
. 2) stop 1