FILE fqName: fileName:/coercionToUnit.kt PROPERTY name:test1 type:() -> kotlin.Unit visibility:public modality:FINAL flags:val FIELD PROPERTY_BACKING_FIELD name:test1 type:() -> kotlin.Unit visibility:public flags:final EXPRESSION_BODY BLOCK type=() -> kotlin.Unit origin=LAMBDA FUN LOCAL_FUNCTION_FOR_LAMBDA name: visibility:local modality:FINAL <> () returnType:Unit flags: BLOCK_BODY RETURN type=kotlin.Nothing from='(): Unit' TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public flags: CONST Int type=kotlin.Int value=42 FUNCTION_REFERENCE '(): Unit' type=() -> kotlin.Unit origin=LAMBDA FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:Function0 flags: BLOCK_BODY RETURN type=kotlin.Nothing from='(): () -> Unit' GET_FIELD 'test1: () -> Unit' type=() -> kotlin.Unit origin=null FUN name:test2 visibility:public modality:FINAL <> (mc:kotlin.collections.MutableCollection) returnType:Unit flags: VALUE_PARAMETER name:mc index:0 type:kotlin.collections.MutableCollection flags: BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public flags: CALL 'add(String): Boolean' type=kotlin.Boolean origin=null $this: GET_VAR 'value-parameter mc: MutableCollection' type=kotlin.collections.MutableCollection origin=null element: CONST String type=kotlin.String value= FUN name:test3 visibility:public modality:FINAL <> () returnType:Unit flags: BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public flags: BLOCK type=kotlin.Unit? origin=SAFE_CALL VAR IR_TEMPORARY_VARIABLE name:tmp0_safe_receiver type:java.io.PrintStream! flags:val GET_FIELD 'out: PrintStream!' type=java.io.PrintStream! origin=GET_PROPERTY WHEN type=kotlin.Unit? origin=SAFE_CALL BRANCH if: CALL 'EQEQ(Any?, Any?): Boolean' type=kotlin.Boolean origin=EQEQ arg0: GET_VAR 'tmp0_safe_receiver: PrintStream!' type=java.io.PrintStream! origin=null arg1: CONST Null type=kotlin.Nothing? value=null then: CONST Null type=kotlin.Nothing? value=null BRANCH if: CONST Boolean type=kotlin.Boolean value=true then: CALL 'println(String!): Unit' type=kotlin.Unit origin=null $this: TYPE_OP type=java.io.PrintStream origin=IMPLICIT_NOTNULL typeOperand=java.io.PrintStream typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:PrintStream modality:OPEN visibility:public flags: GET_VAR 'tmp0_safe_receiver: PrintStream!' type=java.io.PrintStream! origin=null x: CONST String type=kotlin.String value=Hello, TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public flags: BLOCK type=kotlin.Unit? origin=SAFE_CALL VAR IR_TEMPORARY_VARIABLE name:tmp1_safe_receiver type:java.io.PrintStream! flags:val GET_FIELD 'out: PrintStream!' type=java.io.PrintStream! origin=GET_PROPERTY WHEN type=kotlin.Unit? origin=SAFE_CALL BRANCH if: CALL 'EQEQ(Any?, Any?): Boolean' type=kotlin.Boolean origin=EQEQ arg0: GET_VAR 'tmp1_safe_receiver: PrintStream!' type=java.io.PrintStream! origin=null arg1: CONST Null type=kotlin.Nothing? value=null then: CONST Null type=kotlin.Nothing? value=null BRANCH if: CONST Boolean type=kotlin.Boolean value=true then: CALL 'println(String!): Unit' type=kotlin.Unit origin=null $this: TYPE_OP type=java.io.PrintStream origin=IMPLICIT_NOTNULL typeOperand=java.io.PrintStream typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:PrintStream modality:OPEN visibility:public flags: GET_VAR 'tmp1_safe_receiver: PrintStream!' type=java.io.PrintStream! origin=null x: CONST String type=kotlin.String value=world!