2 ! { dg-additional-sources public_private_module_4.f90 }
7 ! Ensure that PRIVATE specific functions do not get
8 ! marked as TREE_PUBLIC() = 0, if the generic name is
19 interface operator(.myop
.)
20 module procedure my_op
24 module procedure my_plus
27 interface assignment(=)
28 module procedure my_assign
31 private
:: bar
, my_op
, my_plus
, my_assign
36 function my_op(op1
, op2
) result(res
)
38 type(t
), intent(in
) :: op1
, op2
40 function my_plus(op1
, op2
) result(res
)
42 type(t
), intent(in
) :: op1
, op2
44 subroutine my_assign(lhs
, rhs
)
45 type(t
), intent(out
) :: lhs
46 type(t
), intent(in
) :: rhs
47 end subroutine my_assign
53 procedure
, nopass
:: func
=> foo