@objc public protocol P1 {
func p1foo()
}
@objc public protocol P2 {
func p2foo()
}
class A<T>: NSObject, P1 {
func p1foo() { }
}
class B: A<Int> {
}
extension B: P2 {
func p2foo() { }
}
-> Type 'B' does not conform to protocol 'P2'.
Why? Removing the generic solves this error, but I don't understand - B should be a fully-specific type at this point...