Files
kotlin-fork/compiler/testData/diagnostics/tests/when/kt9972.fir.kt
T
Denis.Zharkov 2ecba6ac39 Remove WITH_NEW_INFERENCE directive from all tests
This directive anyway does not make test run twice with OI, and with NI
It only once run the test with specific settings (// LANGUAGE)
and ignores irrelevant (OI or NI tags)
2021-05-25 13:28:26 +03:00

29 lines
823 B
Kotlin
Vendored

/*
* KOTLIN DIAGNOSTICS SPEC TEST (POSITIVE)
*
* SPEC VERSION: 0.1-152
* PRIMARY LINKS: expressions, when-expression -> paragraph 2 -> sentence 1
* expressions, when-expression, exhaustive-when-expressions -> paragraph 2 -> sentence 1
* expressions, when-expression -> paragraph 9 -> sentence 1
* expressions, conditional-expression -> paragraph 4 -> sentence 1
* expressions, conditional-expression -> paragraph 5 -> sentence 1
*/
fun test1(): Int {
val x: String = if (true) {
when {
true -> Any()
else -> null
}
} else ""
return x.hashCode()
}
fun test2(): Int {
val x: String = <!INITIALIZER_TYPE_MISMATCH!>when {
true -> Any()
else -> null
} ?: return 0<!>
return x.hashCode()
}