f371e67ce8
rewrite type inference for 'when' using special constructs. This fixes several type inference issues for 'when': KT-9929, KT-9972, KT-10439, KT-10463 along with some other diagnostics-related issues.
17 lines
416 B
Kotlin
Vendored
17 lines
416 B
Kotlin
Vendored
fun test1(): Int {
|
|
val x: String = if (true) {
|
|
when {
|
|
true -> <!TYPE_MISMATCH!>Any()<!>
|
|
else -> <!NULL_FOR_NONNULL_TYPE!>null<!>
|
|
}
|
|
} else ""
|
|
return x.hashCode()
|
|
}
|
|
|
|
fun test2(): Int {
|
|
val x: String = when {
|
|
true -> <!TYPE_MISMATCH!>Any()<!>
|
|
else -> null
|
|
} ?: return 0
|
|
return x.hashCode()
|
|
} |