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

Reply via email to