| 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| |
| |
| } |