blob: 2e348abd3e76df4b6c9e1e77c105c9aa4b40075f [file] [log] [blame]
enum X {
case first(Int, String)
case second(Int, String)
case third(Int, String)
case fourth(Int, String)
case fifth(Int, String)
}
let p = X.first(3, "hello")
switch p {
case .first(let x, let y)
print("foo \(x) \(y)")
fallthrough
case .second(let x, let y), .third(let x, let y):
print("bar \(x) \(y)")
default:
print("other")
}
// RUN: %sourcekitd-test -req=cursor -pos=13:19 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKX,CHECK1DECL %s
// RUN: %sourcekitd-test -req=cursor -pos=14:18 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKX,CHECK1REF %s
// CHECK1DECL: source.lang.swift.decl.var.local (13:19-13:20)
// CHECK1REF: source.lang.swift.ref.var.local (13:19-13:20)
// RUN: %sourcekitd-test -req=cursor -pos=16:20 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKX,CHECK2DECL %s
// RUN: %sourcekitd-test -req=cursor -pos=16:42 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKX,CHECK2DECL2 %s
// RUN: %sourcekitd-test -req=cursor -pos=17:18 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKX,CHECK2REF %s
// CHECK2DECL: source.lang.swift.decl.var.local (16:20-16:21)
// CHECK2DECL2: source.lang.swift.decl.var.local (16:42-16:43)
// CHECK2REF: source.lang.swift.ref.var.local (16:42-16:43)
// CHECKX: x
// CHECKX: s:33cursor_vardecl_across_fallthrough1xL_Sivp
// CHECKX: Int
// RUN: %sourcekitd-test -req=cursor -pos=13:26 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKY,CHECK3DECL %s
// RUN: %sourcekitd-test -req=cursor -pos=14:23 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKY,CHECK3REF %s
// CHECK3DECL: source.lang.swift.decl.var.local (13:26-13:27)
// CHECK3REF: source.lang.swift.ref.var.local (13:26-13:27)
// RUN: %sourcekitd-test -req=cursor -pos=16:27 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKY,CHECK4DECL %s
// RUN: %sourcekitd-test -req=cursor -pos=16:49 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKY,CHECK4DECL2 %s
// RUN: %sourcekitd-test -req=cursor -pos=17:23 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKY,CHECK4REF %s
// CHECK4DECL: source.lang.swift.decl.var.local (16:27-16:28)
// CHECK4DECL2: source.lang.swift.decl.var.local (16:49-16:50)
// CHECK4REF: source.lang.swift.ref.var.local (16:49-16:50)
// CHECKY: y
// CHECKY: s:33cursor_vardecl_across_fallthrough1yL_SSvp
// CHECKY: String