| // RUN: not %swift -emit-sil -target %target-triple %s -emit-fixits-path %t.remap -I %S/Inputs -diagnostics-editor-mode |
| // RUN: c-arcmt-test %t.remap | arcmt-test -verify-transformed-files %s.result |
| |
| enum E1 : Int { |
| case e1 |
| case e2 |
| case e3 |
| case e4 |
| } |
| |
| func foo1(_ e : E1) -> Int { |
| switch(e) { |
| case .e1: |
| return 1 |
| case .e2: |
| <#code#> |
| case .e3: |
| <#code#> |
| case .e4: |
| <#code#> |
| } |
| } |
| |
| func foo2(_ i : Int) -> Int { |
| switch i { |
| case 1: |
| return 1 |
| default: |
| <#code#> |
| } |
| } |
| |
| func foo3(_ c : Character) -> Character { |
| switch c { |
| case "a": |
| return "a" |
| default: |
| <#code#> |
| } |
| } |
| |
| enum E2 { |
| case e1(a: Int, s: Int) |
| case e2(a: Int) |
| case e3(a: Int) |
| case e4(_: Int) |
| case e5(_: Int, _: Int) |
| case e6(a : Int, _: Int) |
| case e7 |
| case e8(a : Int, Int, Int) |
| case e9(Int, Int, Int) |
| } |
| |
| func foo4(_ e : E2) -> Int { |
| switch e { |
| case .e2: |
| return 1 |
| case .e1(let a, let s): |
| <#code#> |
| case .e3(let a): |
| <#code#> |
| case .e4(_): |
| <#code#> |
| case .e5(_, _): |
| <#code#> |
| case .e6(let a, _): |
| <#code#> |
| case .e7: |
| <#code#> |
| case .e8(let a, _, _): |
| <#code#> |
| case .e9(_, _, _): |
| <#code#> |
| } |
| } |
| |
| func foo5(_ e : E1) -> Int { |
| switch e { |
| case _ where e.rawValue > 0: |
| return 1 |
| case .e1: |
| <#code#> |
| case .e2: |
| <#code#> |
| case .e3: |
| <#code#> |
| case .e4: |
| <#code#> |
| } |
| } |
| |
| func foo6(_ e : E2) -> Int { |
| switch e { |
| case let .e1(x, y): |
| return x + y |
| case .e2(let a): |
| <#code#> |
| case .e3(let a): |
| <#code#> |
| case .e4(_): |
| <#code#> |
| case .e5(_, _): |
| <#code#> |
| case .e6(let a, _): |
| <#code#> |
| case .e7: |
| <#code#> |
| case .e8(let a, _, _): |
| <#code#> |
| case .e9(_, _, _): |
| <#code#> |
| } |
| } |
| |
| func foo7(_ e : E2) -> Int { |
| switch e { |
| case .e2(1): return 0 |
| case .e1: return 0 |
| case .e3: return 0 |
| case .e2(let a): |
| <#code#> |
| case .e4(_): |
| <#code#> |
| case .e5(_, _): |
| <#code#> |
| case .e6(let a, _): |
| <#code#> |
| case .e7: |
| <#code#> |
| case .e8(let a, _, _): |
| <#code#> |
| case .e9(_, _, _): |
| <#code#> |
| } |
| } |