Avatar
@swift-main protocol P { associatedtype A } func f<T: P, U>(t: T.Type, u: U.Type) where T.A == U { } struct S: P { typealias A = (foo: Int, bar: Int) } f(t: S.self, u: (foo: Int, bar: Int).self) f(t: S.self, u: (Int, Int).self)