Avatar
@swift-4.2.4 @swift-5.0.3 @swift-main protocol P1 { associatedtype X } protocol P2 {} struct Box<T1, T2: P1> { struct X {} } extension Box.X: P2 where T2.X == String {} struct S: P1 { typealias X = String } _ = Box<Int, S>.X.self is P2.Type (edited)