FILE: referenceToExtension.kt public final class GenericTest : R|kotlin/Any| { public constructor(): R|GenericTest| { super() } public final class A : R|kotlin/Any| { public constructor(): R|GenericTest.A| { super() } } public final class B : R|kotlin/Any| { public constructor(): R|GenericTest.B| { super() } public final val memberVal: R|GenericTest.A| = R|/GenericTest.A.A|() public get(): R|GenericTest.A| public final fun memberFun(): R|GenericTest.A| { ^memberFun R|/GenericTest.A.A|() } } public final val R|GenericTest.B|.extensionVal: R|GenericTest.A| public get(): R|GenericTest.A| { ^ R|/GenericTest.A.A|() } public final fun R|GenericTest.B|.extensionFun(): R|GenericTest.A| { ^extensionFun R|/GenericTest.A.A|() } public final fun test_1(): R|kotlin/Unit| { lval memberValRef: R|kotlin/reflect/KProperty1, GenericTest.A>| = Q|GenericTest.B|::R|FakeOverride|>| lval memberFunRef: R|kotlin/reflect/KFunction1, GenericTest.A>| = Q|GenericTest.B|::R|FakeOverride|>| } public final fun test_2(): R|kotlin/Unit| { lval extensionValRef: = Q|GenericTest.B|::# lval extensionFunRef: = Q|GenericTest.B|::# } } public final class NoGenericTest : R|kotlin/Any| { public constructor(): R|NoGenericTest| { super() } public final class A : R|kotlin/Any| { public constructor(): R|NoGenericTest.A| { super() } } public final class B : R|kotlin/Any| { public constructor(): R|NoGenericTest.B| { super() } public final val memberVal: R|NoGenericTest.A| = R|/NoGenericTest.A.A|() public get(): R|NoGenericTest.A| public final fun memberFun(): R|NoGenericTest.A| { ^memberFun R|/NoGenericTest.A.A|() } } public final val R|NoGenericTest.B|.extensionVal: R|NoGenericTest.A| public get(): R|NoGenericTest.A| { ^ R|/NoGenericTest.A.A|() } public final fun R|NoGenericTest.B|.extensionFun(): R|NoGenericTest.A| { ^extensionFun R|/NoGenericTest.A.A|() } public final fun test_1(): R|kotlin/Unit| { lval extensionValRef: = Q|NoGenericTest.B|::# lval extensionFunRef: = Q|NoGenericTest.B|::# } public final fun test_2(): R|kotlin/Unit| { lval memberValRef: R|kotlin/reflect/KProperty1| = Q|NoGenericTest.B|::R|/NoGenericTest.B.memberVal| lval memberFunRef: R|kotlin/reflect/KFunction1| = Q|NoGenericTest.B|::R|/NoGenericTest.B.memberFun| } }