blob: 8189415c1f70eb2f43f48a20b998e4d73a90c0cf [file] [log] [blame]
// RUN: %target-swift-frontend -typecheck -verify -swift-version 4 %s
// rdar://29605388 -- Swift 3 admitted opening an existential type with
// associated types in one case.
// See test/IRGen/existential_nested_type.swift for the Swift 3 test.
protocol HasAssoc {
associatedtype A
}
enum MyError : Error {
case bad(Any)
}
func checkIt(_ js: Any) throws {
switch js {
case let dbl as HasAssoc: // expected-error {{protocol 'HasAssoc' can only be used as a generic constraint because it has Self or associated type requirements}}
throw MyError.bad(dbl)
default:
fatalError("wrong")
}
}