Files
kotlin-fork/compiler/testData/diagnostics/tests/smartCasts/varnotnull/unnecessaryWithMap.kt
T
Ilya Chernikov 6356807997 Reapply "Only create descriptors for candidates with lambda args"
#KT-36247 fixed
A lot of testdata changed because significanly less (error) descriptors
are created for unresolved types, so diagnostics became different.
2020-02-14 11:41:30 +01:00

21 lines
733 B
Kotlin
Vendored

// !WITH_NEW_INFERENCE
fun create(): Map<String, String> = null!!
operator fun <K, V> Map<K, V>.iterator(): Iterator<Map.Entry<K, V>> = null!!
operator fun <K, V> Map.Entry<K, V>.component1() = key
operator fun <K, V> Map.Entry<K, V>.component2() = value
class MyClass {
private var m: Map<String, String>? = null
fun foo(): Int {
var res = 0
m = create()
// See KT-7428
for ((k, v) in <!SMARTCAST_IMPOSSIBLE!>m<!>)
res += (<!NI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>k<!>.<!NI;DEBUG_INFO_MISSING_UNRESOLVED!>length<!> <!NI;DEBUG_INFO_MISSING_UNRESOLVED!>+<!> <!NI;DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>v<!>.<!NI;DEBUG_INFO_MISSING_UNRESOLVED!>length<!>)
return res
}
}