Files
kotlin-fork/compiler/testData/diagnostics/tests/controlStructures/when.kt234.kt973.fir.kt
T
Dmitriy Novozhilov e6b5cb5216 [TD] Update diagnostics test data due to new test runners
Update includes:
- Changing syntax of `OI/`NI` tags from `<!NI;TAG!>` to `<!TAG{NI}!>`
- Fix some incorrect directives
- Change order of diagnostics in some places
- Remove ignored diagnostics from FIR test data (previously `DIAGNOSTICS` didn't work)
- Update FIR dumps in some places and add `FIR_IDENTICAL` if needed
- Replace all JAVAC_SKIP with SKIP_JAVAC directive
2020-12-16 19:52:25 +03:00

42 lines
645 B
Kotlin
Vendored

//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) {
is Int -> 1
2 -> 2
}
fun foo3(x: Int) = when(x) {
else -> 1
2 -> 2
}
fun foo4(x: Int) = when(x) {
2 -> x
else -> 3
}