| FILE: Impl.kt | |
| public abstract class Impl : R|Base| { | |
| public constructor(): R|Impl| { | |
| super<R|kotlin/Any|>() | |
| } | |
| public open override fun foo(name: R|kotlin/String|): R|Base| { | |
| ^foo this@R|/Impl| | |
| } | |
| } | |
| FILE: test.kt | |
| public abstract class ImplDerived : R|Impl|, R|Derived| { | |
| public constructor(): R|ImplDerived| { | |
| super<R|Impl|>() | |
| } | |
| public abstract override fun foo(name: R|kotlin/String?|): R|Derived| | |
| } | |
| public abstract class DerivedImpl : R|Derived|, R|Impl| { | |
| public constructor(): R|DerivedImpl| { | |
| super<R|Impl|>() | |
| } | |
| public abstract override fun foo(name: R|kotlin/String?|): R|Derived| | |
| } |