32fa2fc476
In qualified expression like `foo().`, selector expression is null. Because of that the whole expression was marked as an error FIR expression, and `foo()` part was not resolved at all (including arguments and everything else). This commit fixes the problem by providing receiver's FIR expression as an underlying expression for error FIR expression. That way it will be seen by all resolve transformers and will be successfully resolved. ^KTIJ-21484 Fixed
31 lines
472 B
Kotlin
Vendored
31 lines
472 B
Kotlin
Vendored
fun foo(action: () -> Unit = {}): Int = 0
|
|
|
|
fun usageResolved1() {
|
|
foo().<!SYNTAX!><!>
|
|
}
|
|
|
|
fun usageResolved2() {
|
|
foo()?.<!SYNTAX!><!>
|
|
}
|
|
|
|
fun usageResolved3() {
|
|
foo {
|
|
foo()
|
|
}.<!SYNTAX!><!>
|
|
}
|
|
|
|
fun usageUnresolved1() {
|
|
<!UNRESOLVED_REFERENCE!>bar<!>().<!SYNTAX!><!>
|
|
}
|
|
|
|
fun usageUnresolved2() {
|
|
<!UNRESOLVED_REFERENCE!>bar<!>()?.<!SYNTAX!><!>
|
|
}
|
|
|
|
fun usageUnresolved3() {
|
|
foo {
|
|
<!UNRESOLVED_REFERENCE!>bar<!>()
|
|
}.<!SYNTAX!><!>
|
|
}
|
|
|