blob: a2a81e335c4a290612e1f9b1275238b6fdc8d77f [file] [log] [blame]
! { dg-do compile }
! PR fortran/45786 - operators were not correctly marked as public
! if the alternative form was used.
! Test case contributed by Neil Carlson.
module foo_type
private
public :: foo, operator(==)
type :: foo
integer :: bar
end type
interface operator(.eq.)
module procedure eq_foo
end interface
contains
logical function eq_foo (a, b)
type(foo), intent(in) :: a, b
eq_foo = (a%bar == b%bar)
end function
end module
subroutine use_it (a, b)
use foo_type
type(foo) :: a, b
print *, a == b
end subroutine