! RUN: %python %S/test_errors.py %s %flang_fc1
module m
  interface foo
    real function s1(x)
      real x
    end
    !ERROR: 's2' is not a module procedure
    module procedure s2
    !ERROR: 's3' is not a procedure
    procedure s3
    !ERROR: Procedure 's1' is already specified in generic 'foo'
    procedure s1
  end interface
  interface
    real function s4(x,y)
      real, intent(in) :: x,y
    end function
    complex function s2(x,y)
      complex, intent(in) :: x,y
    end function
  end interface
  generic :: bar => s4
  generic :: bar => s2
  !ERROR: Procedure 's4' is already specified in generic 'bar'
  generic :: bar => s4

  generic :: operator(.foo.)=> s4
  generic :: operator(.foo.)=> s2
  !ERROR: Procedure 's4' is already specified in generic 'OPERATOR(.foo.)'
  generic :: operator(.foo.)=> s4
end module

module m2
  interface
    integer function f(x, y)
      logical, intent(in) :: x, y
    end function
  end interface
  generic :: operator(+)=> f
  !ERROR: Procedure 'f' is already specified in generic 'OPERATOR(+)'
  generic :: operator(+)=> f
end

module m3
  interface operator(.ge.)
    procedure f
  end interface
  interface operator(>=)
    !ERROR: Procedure 'f' is already specified in generic 'OPERATOR(.GE.)'
    procedure f
  end interface
  generic :: operator(>) => f
  !ERROR: Procedure 'f' is already specified in generic 'OPERATOR(>)'
  generic :: operator(.gt.) => f
contains
  logical function f(x, y) result(result)
    logical, intent(in) :: x, y
    result = .true.
  end
end
