There is also a caveat with static members: protocol P { static func foo() }
struct S : P { static func foo() { } } func bar<T: P>(x: T) { T.foo() } let p = S() as P bar(p) // P.foo() does not exist
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution