3 ! PR 54832: [4.8 Regression] [OOP] Type-bound operator not picked up with RESULT variable
5 ! Contributed by Damian Rouson <rouson@sandia.gov>
7 type, abstract
:: integrand
9 procedure(t_interface
), deferred
:: t
10 procedure(assign_interface
), deferred
:: assign
11 procedure(times_interface
), deferred
:: times
12 generic
:: operator(*) => times
13 generic
:: assignment(=) => assign
17 function t_interface(this
) result(dState_dt
)
19 class(integrand
) ,intent(in
) :: this
20 class(integrand
) ,allocatable
:: dState_dt
22 function times_interface(lhs
,rhs
)
24 class(integrand
) ,intent(in
) :: lhs
25 class(integrand
) ,allocatable
:: times_interface
26 real, intent(in
) :: rhs
28 subroutine assign_interface(lhs
,rhs
)
30 class(integrand
) ,intent(in
) :: rhs
31 class(integrand
) ,intent(inout
) :: lhs
37 subroutine integrate(model
,dt
)
38 class(integrand
) :: model