[FIR] Don't report ARGUMENT_TYPE_MISMATCH on error types

This commit is contained in:
Dmitriy Novozhilov
2022-11-09 12:43:43 +02:00
committed by Space Team
parent 32f6b71525
commit 0e84bf2053
38 changed files with 83 additions and 99 deletions
@@ -3,10 +3,10 @@ abstract class KFunctionKt9005WorkAround<out R: Any?>(private val _functionInsta
private val _reflectedFunction: kotlin.reflect.KFunction<R> = _functionInstance.<!UNRESOLVED_REFERENCE!>reflect<!>() ?: throw IllegalStateException("")
private val _parameters: List<kotlin.reflect.KParameter> = run {
<!ARGUMENT_TYPE_MISMATCH!>_functionInstance.javaClass.methods.first().<!UNRESOLVED_REFERENCE!>parameters<!>.map {
_functionInstance.javaClass.methods.first().<!UNRESOLVED_REFERENCE!>parameters<!>.map {
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>object<!> : kotlin.reflect.KParameter {
override val index: Int = 0
}
}<!>
}
}
}
@@ -1,14 +1,14 @@
// !RENDER_DIAGNOSTICS_FULL_TEXT
fun Int.with() {
with("") {
<!ARGUMENT_TYPE_MISMATCH!>this@with.<!UNRESOLVED_REFERENCE!>inc<!>()<!>
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>with<!>("") {
this@with.<!UNRESOLVED_REFERENCE!>inc<!>()
}
}
fun Int.bar() {
with("") bar@{
<!ARGUMENT_TYPE_MISMATCH!>this@bar.<!UNRESOLVED_REFERENCE!>inc<!>()<!>
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>with<!>("") bar@{
this@bar.<!UNRESOLVED_REFERENCE!>inc<!>()
}
}
@@ -16,12 +16,12 @@ fun foo(f: with.() -> Unit) {}
class with {
fun foo() {
with("") {
<!ARGUMENT_TYPE_MISMATCH!>this@with.<!UNRESOLVED_REFERENCE!>foo<!>()<!>
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>with<!>("") {
this@with.<!UNRESOLVED_REFERENCE!>foo<!>()
}
with("") with@{
<!ARGUMENT_TYPE_MISMATCH!>this@with.<!UNRESOLVED_REFERENCE!>foo<!>()<!>
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>with<!>("") with@{
this@with.<!UNRESOLVED_REFERENCE!>foo<!>()
}
with("") other@{