[FIR] fix internal error on suspend conversion with not-computed return type

^KT-62836 Fixed
This commit is contained in:
Dmitrii Gridin
2024-03-05 15:45:58 +01:00
committed by Space Team
parent f4096ae8e9
commit 928fb94052
11 changed files with 58 additions and 25 deletions
@@ -3,8 +3,6 @@
// WITH_COROUTINES
// IGNORE_BACKEND: JVM, JS, JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// IGNORE_REVERSED_RESOLVE
// KT-62836
import helpers.*
import kotlin.coroutines.*
@@ -0,0 +1,8 @@
// FIR_IDENTICAL
fun box() = useSuspendFunInt(Test())
fun useSuspendFunInt(fn: suspend () -> String): String = ""
open class Test : () -> String {
override fun invoke() = "OK"
}
@@ -1,5 +1,4 @@
// FIR_IDENTICAL
// IGNORE_DIAGNOSTIC_API
// ISSUE: KT-62836
fun box() {
useSuspendFunInt(Child())
@@ -1,7 +1,6 @@
// IGNORE_DIAGNOSTIC_API
// ISSUE: KT-62836
fun box() {
useSuspendFunInt(Test())
useSuspendFunInt(<!ARGUMENT_TYPE_MISMATCH!>Test()<!>)
}
fun useSuspendFunInt(fn: suspend () -> String): String = ""
@@ -1,4 +1,3 @@
// IGNORE_DIAGNOSTIC_API
// ISSUE: KT-62836
fun box() {
useSuspendFunInt(<!TYPE_MISMATCH!>Test()<!>)