Files
kotlin-fork/compiler/testData/diagnostics/tests/generics/projectionsScope/approximateDispatchReceiver.kt
T

16 lines
437 B
Kotlin
Vendored

// FIR_IDENTICAL
// !CHECK_TYPE
public abstract class A<E> {
fun bar(): String = ""
}
public class B<F> : A<B<F>>()
fun test(b: B<*>) {
// Here `bar` could have dispatch receiver parameter type 'A<B<Captured(*)>>', but it wouldn't work as
// since 'b' has type 'A<out B<*>>', so we should approximate dispatch receiver PARAMETER type to make it accept original receiver
b.bar()
b.bar() checkType { _<String>() }
}