blob: d71fe39f3e0444354e8b6bccbcd4b98acb6afa72 [file] [log] [blame]
// RUN: %target-typecheck-verify-swift
enum E1 {
case v1
case v2
case v3
case v4
case v5
case v6
indirect case v7(E1)
}
enum E2 {
case foo((E1, E1, E1)) // total size of this case is 7 ^ 3 + 1
case bar(E1)
case baz
}
func foo(_ e: E2) {
switch e {
// expected-error@-1 {{switch must be exhaustive}}
// expected-note@-2 {{add missing case: '.bar(_)'}}
case .foo(let tuple): break // expected-warning {{immutable value 'tuple' was never used; consider replacing with '_' or removing it}}
case .baz: break
}
}
func bar(_ e: E2) {
switch e {
// expected-error@-1 {{switch must be exhaustive}}
// expected-note@-2 {{add missing case: '.bar(_)'}}
// expected-note@-3 {{add missing case: '.baz'}}
case .foo((_, _, _)): break
}
}