Files
kotlin-fork/compiler/testData/ir/irText/classes/delegatedImplementationWithExplicitOverride.txt
T
Dmitry Petrov 0f1f354ba6 KT-16486 Strange IR for delegated members
Delegated implementations should refer to delegate field:
  $this: GET_FIELD <delegate_field> ...
    receiver: <this_for_containing_class>
2017-03-01 09:25:38 +03:00

29 lines
1.2 KiB
Plaintext
Vendored

FILE /delegatedImplementationWithExplicitOverride.kt
CLASS INTERFACE IFooBar
FUN public abstract fun foo(): kotlin.Unit
FUN public abstract fun bar(): kotlin.Unit
CLASS OBJECT FooBarImpl
CONSTRUCTOR private constructor FooBarImpl()
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='FooBarImpl'
FUN public open override fun foo(): kotlin.Unit
BLOCK_BODY
FUN public open override fun bar(): kotlin.Unit
BLOCK_BODY
CLASS CLASS C
CONSTRUCTOR public constructor C()
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='C'
FIELD DELEGATE val `C$IFooBar$delegate`: FooBarImpl
EXPRESSION_BODY
GET_OBJECT 'FooBarImpl' type=FooBarImpl
FUN DELEGATED_MEMBER public open override fun foo(): kotlin.Unit
BLOCK_BODY
CALL 'foo(): Unit' type=kotlin.Unit origin=null
$this: GET_FIELD '`C$IFooBar$delegate`: FooBarImpl' type=FooBarImpl origin=null
receiver: GET_VAR '<receiver: C>' type=C origin=null
FUN public open override fun bar(): kotlin.Unit
BLOCK_BODY