Report diagnostics about callable reference resolution ambiguity
Found diagnostics were not reported before. #KT-32862 In Progress
This commit is contained in:
+1
-1
@@ -7,5 +7,5 @@ fun foo(y: String) {}
|
||||
fun <T> bar(f: (T) -> Unit) {}
|
||||
|
||||
fun test() {
|
||||
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>bar<!>(::<!DEBUG_INFO_MISSING_UNRESOLVED!>foo<!>)
|
||||
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>bar<!>(::<!CALLABLE_REFERENCE_RESOLUTION_AMBIGUITY, DEBUG_INFO_MISSING_UNRESOLVED!>foo<!>)
|
||||
}
|
||||
+1
-1
@@ -31,7 +31,7 @@ fun test() {
|
||||
val t3 = bar(::baz)
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("B")!>t3<!>
|
||||
|
||||
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>bar<!>(::<!DEBUG_INFO_MISSING_UNRESOLVED!>foo<!>)
|
||||
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>bar<!>(::<!CALLABLE_REFERENCE_RESOLUTION_AMBIGUITY, DEBUG_INFO_MISSING_UNRESOLVED!>foo<!>)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
compiler/testData/diagnostics/tests/callableReference/resolve/eagerAndPostponedCallableReferences.kt
Vendored
+1
-1
@@ -31,5 +31,5 @@ fun test() {
|
||||
val a6 = foo(::singleA, ::singleB)
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("{A & B}")!>a6<!>
|
||||
|
||||
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>foo<!>(::<!DEBUG_INFO_MISSING_UNRESOLVED!>multiple<!>, ::<!DEBUG_INFO_MISSING_UNRESOLVED!>multiple<!>)
|
||||
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>foo<!>(::<!CALLABLE_REFERENCE_RESOLUTION_AMBIGUITY, DEBUG_INFO_MISSING_UNRESOLVED!>multiple<!>, ::<!CALLABLE_REFERENCE_RESOLUTION_AMBIGUITY, DEBUG_INFO_MISSING_UNRESOLVED!>multiple<!>)
|
||||
}
|
||||
+2
-2
@@ -6,8 +6,8 @@ class Impl : Inv
|
||||
class Scope<InterfaceT, ImplementationT : InterfaceT>(private val implClass: <!UNRESOLVED_REFERENCE!>j<!>.<!DEBUG_INFO_MISSING_UNRESOLVED!>Class<!><ImplementationT>) {
|
||||
fun foo(c: Collection<InterfaceT>) {
|
||||
val <!UNUSED_VARIABLE!>hm<!> = c.asSequence()
|
||||
.filter(<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>implClass<!>::<!DEBUG_INFO_MISSING_UNRESOLVED!>isInstance<!>)
|
||||
.<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>map<!>(<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>implClass<!>::<!DEBUG_INFO_MISSING_UNRESOLVED!>cast<!>)
|
||||
.filter(<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>implClass<!>::<!CALLABLE_REFERENCE_RESOLUTION_AMBIGUITY, DEBUG_INFO_MISSING_UNRESOLVED!>isInstance<!>)
|
||||
.<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>map<!>(<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>implClass<!>::<!CALLABLE_REFERENCE_RESOLUTION_AMBIGUITY, DEBUG_INFO_MISSING_UNRESOLVED!>cast<!>)
|
||||
.<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>toSet<!>()
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user