[FIR] Implement UNRESOLVED_REFERENCE_WRONG_RECEIVER

This commit is contained in:
Ivan Kochurkin
2021-08-10 16:40:51 +03:00
committed by Space
parent 34cc7e5199
commit 84c5f58cab
129 changed files with 322 additions and 481 deletions
@@ -33,11 +33,11 @@ fun test2(a: A) {
@kotlin.internal.HidesMembers
fun A.forEach(i: Int) = ""
a.forEach() checkType { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
a.forEach() checkType { <!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>_<!><String>() }
a.forEach(1)
with(a) {
forEach() checkType { <!INAPPLICABLE_CANDIDATE!>_<!><String>() }
forEach() checkType { <!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>_<!><String>() }
forEach(1)
}
}
@@ -23,7 +23,7 @@ public class StaticOverrides {
// FILE: test.kt
fun test() {
StaticOverrides.A.<!OVERLOAD_RESOLUTION_AMBIGUITY!>foo<!> {} <!INAPPLICABLE_CANDIDATE!>checkType<!> { _<Boolean>() }
StaticOverrides.A.<!OVERLOAD_RESOLUTION_AMBIGUITY!>foo<!> {} <!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>checkType<!> { _<Boolean>() }
StaticOverrides.B.foo {} checkType { _<String>() }
StaticOverrides.C.<!OVERLOAD_RESOLUTION_AMBIGUITY!>foo<!> {} <!INAPPLICABLE_CANDIDATE!>checkType<!> { _<Boolean>() }
StaticOverrides.C.<!OVERLOAD_RESOLUTION_AMBIGUITY!>foo<!> {} <!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>checkType<!> { _<Boolean>() }
}
@@ -19,6 +19,6 @@ class Foo {
// FILE: 1.kt
fun test() {
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>foo<!> {} <!INAPPLICABLE_CANDIDATE!>checkType<!> { _<Int>() }
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>bar<!> {} <!INAPPLICABLE_CANDIDATE!>checkType<!> { _<String>() }
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>foo<!> {} <!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>checkType<!> { _<Int>() }
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>bar<!> {} <!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>checkType<!> { _<String>() }
}
@@ -20,6 +20,6 @@ class Foo {
// FILE: 1.kt
fun test() {
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>foo<!> {} <!INAPPLICABLE_CANDIDATE!>checkType<!> { _<Int>() }
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>bar<!> {} <!INAPPLICABLE_CANDIDATE!>checkType<!> { _<Int>() }
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>foo<!> {} <!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>checkType<!> { _<Int>() }
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>bar<!> {} <!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>checkType<!> { _<Int>() }
}
@@ -16,5 +16,5 @@ public class Foo {
// FILE: 1.kt
fun bar() {
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>test<!> {} <!INAPPLICABLE_CANDIDATE!>checkType<!> { _<String>() }
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>test<!> {} <!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>checkType<!> { _<String>() }
}
@@ -17,5 +17,5 @@ public class Foo {
// FILE: 1.kt
fun bar() {
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>test<!> {} <!INAPPLICABLE_CANDIDATE!>checkType<!> { _<Int>() }
Foo().<!OVERLOAD_RESOLUTION_AMBIGUITY!>test<!> {} <!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>checkType<!> { _<Int>() }
}