| // RUN_PIPELINE_TILL: BACKEND |
| // FIR_IDENTICAL |
| // DIAGNOSTICS: -UNUSED_PARAMETER |
| // ISSUE: KT-32452 |
| |
| interface A { |
| suspend fun foo(input: String): String |
| } |
| |
| open class B<T : Any> { |
| fun <U, R : Any, T> call(function: suspend T.(U) -> R): R = TODO() |
| |
| fun <U, R : Any, T> call(function: suspend T.(U) -> List<R>): List<R> = TODO() |
| } |
| |
| class MyService : A, B<A>() { |
| override suspend fun foo(input: String) = call(A::foo) |
| } |
| |
| /* GENERATED_FIR_TAGS: callableReference, classDeclaration, functionDeclaration, functionalType, interfaceDeclaration, |
| nullableType, override, suspend, typeConstraint, typeParameter, typeWithExtension */ |