diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/operator_c1202.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/operator_c1202.f90 | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/operator_c1202.f90 b/gcc/testsuite/gfortran.dg/operator_c1202.f90 new file mode 100644 index 000000000..c53079ac5 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/operator_c1202.f90 @@ -0,0 +1,68 @@ +! { dg-do compile } +module op + + implicit none + + type a + integer i + end type a + + type b + real i + end type b + + interface operator(==) + module procedure f1 + end interface operator(.eq.) + interface operator(.eq.) + module procedure f2 + end interface operator(==) + + interface operator(/=) + module procedure f1 + end interface operator(.ne.) + interface operator(.ne.) + module procedure f2 + end interface operator(/=) + + interface operator(<=) + module procedure f1 + end interface operator(.le.) + interface operator(.le.) + module procedure f2 + end interface operator(<=) + + interface operator(<) + module procedure f1 + end interface operator(.lt.) + interface operator(.lt.) + module procedure f2 + end interface operator(<) + + interface operator(>=) + module procedure f1 + end interface operator(.ge.) + interface operator(.ge.) + module procedure f2 + end interface operator(>=) + + interface operator(>) + module procedure f1 + end interface operator(.gt.) + interface operator(.gt.) + module procedure f2 + end interface operator(>) + + contains + + function f2(x,y) + logical f2 + type(a), intent(in) :: x, y + end function f2 + + function f1(x,y) + logical f1 + type(b), intent(in) :: x, y + end function f1 + +end module op |