// RUN: %target-run-simple-swift // REQUIRES: executable_test protocol A { typealias B func b(_: B) } struct X : A { func b(b: X.Type) { let x: Any = b print(b as X.Type) } } func foo(x: T, _ y: T.B) { x.b(y) } let a = X() let b = X() // CHECK: (Metatype) foo(a, X.self) // CHECK-NEXT: (Metatype) foo(b, X.self)