| //KT-234 Force when() expressions to have an 'else' branch |
| //KT-973 Unreachable code |
| |
| package kt234_kt973 |
| |
| class Pair<A, B>(a: A, b: B) |
| |
| fun test(t : Pair<Int, Int>) : Int { |
| when (t) { |
| Pair(10, 10) -> return 1 |
| } |
| return 0 // unreachable code |
| } |
| |
| fun test1(t : Pair<Int, Int>) : Int { |
| when (t) { |
| Pair(10, 10) -> return 1 |
| else -> return 2 |
| } |
| return 0 // unreachable code |
| } |
| |
| //more tests |
| fun t1(x: Int) = when(x) { |
| else -> 1 |
| } |
| |
| fun t5(x: Int) = when (x) { |
| <!USELESS_IS_CHECK!>is Int<!> -> 1 |
| 2 -> 2 |
| } |
| |
| fun foo3(x: Int) = when(x) { |
| <!ELSE_MISPLACED_IN_WHEN!>else<!> -> 1 |
| 2 -> 2 |
| } |
| |
| fun foo4(x: Int) = when(x) { |
| 2 -> x |
| else -> 3 |
| } |