blob: 05791bc474bf3659a8b81bf67db2d63c7b9ec7ea [file] [log] [blame]
// RUN: %target-typecheck-verify-swift
class A {}
class B: A {}
class C: A {}
struct S {
func foo<T: A>(types: [T.Type]) {}
}
func bar(_ s: S, _ forced_s: S!) {
s.foo(types: [A.self, B.self]) // ok
s.foo(types: [B.self, A.self]) // ok
forced_s.foo(types: [A.self, B.self]) // ok
forced_s.foo(types: [B.self, A.self]) // ok
}