// RUN: %target-swift-frontend -typecheck %s -debug-generic-signatures 2>&1 | %FileCheck %s protocol P { associatedtype T : Q } protocol Q { associatedtype T : R var t: T { get } } protocol R {} func takesR(_: T) {} class C : P {} struct Outer { // CHECK-LABEL: .Inner@ // CHECK-NEXT: Generic signature: , U : Q> struct Inner where T : C { func doStuff(_ u: U) { takesR(u.t) } } }