// RUN: %target-typecheck-verify-swift %s -warn-redundant-requirements class Base { } class Derived: Base { } // expected-warning@+1 {{redundant superclass constraint 'T' : 'Base'}} func foo(_ x: T) -> Derived where T: Base, T: Derived { return x } // FIXME: There is no explicit same-type requirement written. // expected-warning@+1{{same-type requirement makes generic parameter 'T' non-generic}} func bar(_ x: U, y: T) -> (Derived, Int) where U: Base, U: Derived { return (x, y) } // https://github.com/apple/swift/issues/50093 captures a crash on this code. class IntegerClass : ExpressibleByIntegerLiteral, Equatable { required init(integerLiteral value: Int) { } static func ==(lhs: IntegerClass, rhs: IntegerClass) -> Bool { return true } } func foo(_ num: T) { let _ = num != 0 }