! { dg-do run } ! ! Checks the fix for PR60483. ! ! Contributed by Anthony Lewis ! module A implicit none Type T integer :: val = 2 contains final :: testfree end type integer :: final_flag = 0 contains subroutine testfree(this) Type(T) this final_flag = this%val + final_flag end subroutine subroutine Testf() associate(X => T()) ! This was failing: Symbol 'x' at (1) has no IMPLICIT type final_flag = X%val end associate ! This should now be 4 but the finalization is not happening. ! TODO put it right! if (final_flag .ne. 2) STOP 1 end subroutine Testf end module use A call Testf end