[FIR] Fix inconsistent RETURN_TYPE_MISMATCH and TYPE_MISMATCH reporting on functions and properties

^KT-51203 Fixed
This commit is contained in:
Ivan Kochurkin
2022-03-17 16:34:19 +03:00
committed by teamcity
parent 4617615fd9
commit c6f52893fb
42 changed files with 82 additions and 77 deletions
@@ -57,7 +57,7 @@ open class J() : S() {
}
open class Base<T : X, Z : T> {
open fun kek(): Z = <!RETURN_TYPE_MISMATCH, TYPE_MISMATCH!>Z()<!>
open fun kek(): Z = <!RETURN_TYPE_MISMATCH!>Z()<!>
}
open class GoodDerrived : Base<Y, W>() {
@@ -3,7 +3,7 @@ class C
class B
class A {
val B.foo: C.() -> Unit get() = null
val B.foo: C.() -> Unit get() = <!NULL_FOR_NONNULL_TYPE!>null<!>
}
fun <T, R> with(arg: T, f: T.() -> R): R = arg.f()
@@ -81,7 +81,7 @@ open class J {
}
var bar = <!PROPERTY_INITIALIZER_NO_BACKING_FIELD!>0<!>
get() = 3.1415926535
get() = <!RETURN_TYPE_MISMATCH!>3.1415926535<!>
set(value) {}
}
@@ -12,7 +12,7 @@ fun ok(): Int {
}
fun okOneLineFunction(): Int = 10 + 1
fun errorOneLineFunction(): String = <!RETURN_TYPE_MISMATCH, TYPE_MISMATCH!>10 + 1<!>
fun errorOneLineFunction(): String = <!RETURN_TYPE_MISMATCH!>10 + 1<!>
class A {
fun bar() {}
@@ -37,7 +37,7 @@ fun errorWithLambda(): String {
return@foo
} foo {
bar()
return@foo 10
return@foo <!RETURN_TYPE_MISMATCH!>10<!>
}
return ""
@@ -8,5 +8,5 @@ abstract class LightMemberImpl<out D : PsiMember>(computeRealDelegate: () -> D)
abstract class LightFieldImpl<D : PsiField>(computeRealDelegate: () -> D) : LightMemberImpl<PsiField>(computeRealDelegate) {
override val delegate: D
get() = super.delegate
}
get() = <!RETURN_TYPE_MISMATCH!>super.delegate<!>
}