Resolve elements in chain of qualifier expression without expected type

Consider call chain `foo.bar.baz()` which has expected type `Int`
Elements `foo` and `bar` doesn't have expected type `Int`,
this is especially important in NI, because we use expected type for
candidate applicability
This commit is contained in:
Mikhail Zarechenskiy
2018-03-29 11:35:25 +03:00
parent 3d73786e98
commit aebcb61402
6 changed files with 48 additions and 1 deletions
@@ -0,0 +1,23 @@
// !LANGUAGE: +NewInference
// WITH_RUNTIME
// FILE: messages/foo.kt
package messages
fun foo() {}
// FILE: sample.kt
class Test {
val messages = arrayListOf<String>()
fun test(): Boolean {
return messages.any { it == "foo" }
}
}
fun box(): String {
val result = Test().test()
return if (result) "faile" else "OK"
}