// RUN: %target-swift-frontend -typecheck %s -debug-generic-signatures 2>&1 | %FileCheck %s // https://github.com/apple/swift/issues/58100 protocol AProtocol { associatedtype B: BProtocol where B.A == Self } protocol BProtocol { associatedtype A: AProtocol } protocol CProtocol { associatedtype A: AProtocol } protocol DProtocol { associatedtype A: AProtocol // CHECK-LABEL: .DProtocol.foo(c:)@ // CHECK-NEXT: func foo(c: C) where C.A == A } struct Foo { // CHECK-LABEL: .Foo.bar(c:)@ // CHECK-NEXT: func bar(c: C) where C.A == Value {} }