K2: don't report RETURN_TYPE_MISMATCH on last statement returns

#KT-53198 Fixed
This commit is contained in:
Mikhail Glukhikh
2022-07-19 10:45:16 +02:00
committed by Space
parent 0982872959
commit bc396b9765
17 changed files with 69 additions and 9 deletions
@@ -0,0 +1,10 @@
// FULL_JDK
fun test() {
val closeable: java.io.Closeable? = null
val closeF = fun() { closeable?.close() }
val closeFB = fun(): Unit = <!RETURN_TYPE_MISMATCH!>closeable?.close()<!>
val closeFR = fun() { return <!RETURN_TYPE_MISMATCH!>closeable?.close()<!> }
val closeL = { closeable?.close() }
val closeLR = label@ { return@label closeable?.close() }
}
@@ -0,0 +1,10 @@
// FULL_JDK
fun test() {
val closeable: java.io.Closeable? = null
val closeF = fun() { closeable?.close() }
val closeFB = fun(): Unit = <!TYPE_MISMATCH!>closeable?.close()<!>
val closeFR = fun() { return <!TYPE_MISMATCH!>closeable?.close()<!> }
val closeL = { closeable?.close() }
val closeLR = label@ { return@label closeable?.close() }
}
@@ -0,0 +1,3 @@
package
public fun test(): kotlin.Unit