@0:0..23:0 FILE /augmentedAssignmentWithExpression.kt @2:0..8:1 CLASS CLASS Host @2:0..8:1 CONSTRUCTOR public constructor Host() @2:0..8:1 BLOCK_BODY @2:0..8:1 DELEGATING_CONSTRUCTOR_CALL 'constructor Any()' @2:0..8:1 INSTANCE_INITIALIZER_CALL classDescriptor='Host' @3:4..38 FUN public final operator fun plusAssign(x: kotlin.Int): kotlin.Unit @3:36..38 BLOCK_BODY @5:4..7:5 FUN public final fun test1(): kotlin.Unit @5:16..7:5 BLOCK_BODY @6:8..17 CALL 'plusAssign(Int): Unit' type=kotlin.Unit origin=PLUSEQ @6:8..12 GET_VAR '' type=test.Host origin=null @6:16..17 CONST Int type=kotlin.Int value='1' @10:0..18 FUN public fun foo(): test.Host @10:12..18 BLOCK_BODY @10:12..18 RETURN type=kotlin.Nothing from='foo(): Host' @10:12..18 CALL 'constructor Host()' type=test.Host origin=null @12:0..14:1 FUN public fun test.Host.test2(): kotlin.Unit @12:17..14:1 BLOCK_BODY @13:4..13 CALL 'plusAssign(Int): Unit' type=kotlin.Unit origin=PLUSEQ @13:4..8 GET_VAR '' type=test.Host origin=null @13:12..13 CONST Int type=kotlin.Int value='1' @16:0..18:1 FUN public fun test3(): kotlin.Unit @16:12..18:1 BLOCK_BODY @17:4..14 CALL 'plusAssign(Int): Unit' type=kotlin.Unit origin=PLUSEQ @17:4..9 CALL 'foo(): Host' type=test.Host origin=null @17:13..14 CONST Int type=kotlin.Int value='1' @20:0..22:1 FUN public fun test4(a: () -> test.Host): kotlin.Unit @20:25..22:1 BLOCK_BODY @21:4..12 CALL 'plusAssign(Int): Unit' type=kotlin.Unit origin=PLUSEQ @21:4..7 CALL 'invoke(): Host' type=test.Host origin=INVOKE @21:4..5 GET_VAR 'value-parameter a: () -> Host' type=() -> test.Host origin=VARIABLE_AS_FUNCTION @21:11..12 CONST Int type=kotlin.Int value='1'