2 ! Test the fix for PR59198, where the field for the component 'term' in
3 ! the derived type 'decay_gen_t' was not being built.
5 ! Contributed by Juergen Reuter <juergen.reuter@desy.de>
9 function obs_unary_int ()
10 end function obs_unary_int
13 type, abstract
:: any_config_t
15 procedure (any_config_final
), deferred
:: final
19 type(unstable_t
), dimension(:), pointer :: unstable_product
=> null ()
22 type, abstract
:: decay_gen_t
23 type(decay_term_t
), dimension(:), allocatable
:: term
24 procedure(obs_unary_int
), nopass
, pointer :: obs1_int
=> null ()
27 type, extends (decay_gen_t
) :: decay_root_t
29 procedure
:: final
=> decay_root_final
32 type, abstract
:: rng_t
35 type, extends (decay_gen_t
) :: decay_t
36 class(rng_t
), allocatable
:: rng
38 procedure
:: final
=> decay_final
41 type, extends (any_config_t
) :: unstable_config_t
43 procedure
:: final
=> unstable_config_final
44 end type unstable_config_t
47 type(unstable_config_t
), pointer :: config
=> null ()
48 type(decay_t
), dimension(:), allocatable
:: decay
52 subroutine any_config_final (object
)
54 class(any_config_t
), intent(inout
) :: object
55 end subroutine any_config_final
59 subroutine decay_root_final (object
)
60 class(decay_root_t
), intent(inout
) :: object
61 end subroutine decay_root_final
63 recursive subroutine decay_final (object
)
64 class(decay_t
), intent(inout
) :: object
65 end subroutine decay_final
67 recursive subroutine unstable_config_final (object
)
68 class(unstable_config_t
), intent(inout
) :: object
69 end subroutine unstable_config_final