PatternMatchingTypingVisitor:
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.
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
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()
|
||||
}
|
||||
Reference in New Issue
Block a user