FILE fqName:<root> fileName:/coercionToUnit.kt
  PROPERTY name:test1 visibility:public modality:FINAL flags:[val]
    FIELD PROPERTY_BACKING_FIELD name:test1 type:kotlin.Function0<kotlin.Unit> visibility:public flags:[final,static]
      EXPRESSION_BODY
        BLOCK type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
          FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit flags:[]
            BLOCK_BODY
              RETURN type=kotlin.Nothing from='FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit flags:[]'
                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:[] superTypes:[kotlin.Any]
                  CONST Int type=kotlin.Int value=42
          FUNCTION_REFERENCE 'FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit flags:[]' type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
    FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test1> visibility:public modality:FINAL <> () returnType:kotlin.Function0<kotlin.Unit> flags:[]
      correspondingProperty: PROPERTY name:test1 visibility:public modality:FINAL flags:[val]
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test1> visibility:public modality:FINAL <> () returnType:kotlin.Function0<kotlin.Unit> flags:[]'
          GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test1 type:kotlin.Function0<kotlin.Unit> visibility:public flags:[final,static]' type=kotlin.Function0<kotlin.Unit> origin=null
  FUN name:test2 visibility:public modality:FINAL <> (mc:kotlin.collections.MutableCollection<kotlin.String>) returnType:kotlin.Unit flags:[]
    VALUE_PARAMETER name:mc index:0 type:kotlin.collections.MutableCollection<kotlin.String> 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:[] superTypes:[kotlin.Any]
        CALL 'FUN IR_EXTERNAL_DECLARATION_STUB name:add visibility:public modality:ABSTRACT <> ($this:kotlin.collections.MutableCollection<kotlin.collections.MutableCollection.E>, element:kotlin.collections.MutableCollection.E) returnType:kotlin.Boolean flags:[]' type=kotlin.Boolean origin=null
          $this: GET_VAR 'VALUE_PARAMETER name:mc index:0 type:kotlin.collections.MutableCollection<kotlin.String> flags:[]' type=kotlin.collections.MutableCollection<kotlin.String> origin=null
          element: CONST String type=kotlin.String value=""
  FUN name:test3 visibility:public modality:FINAL <> () returnType:kotlin.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:[] superTypes:[kotlin.Any]
        BLOCK type=kotlin.Unit? origin=SAFE_CALL
          VAR IR_TEMPORARY_VARIABLE name:tmp0_safe_receiver type:java.io.PrintStream? flags:[val]
            GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:out type:java.io.PrintStream? visibility:public flags:[final,static]' type=java.io.PrintStream? origin=GET_PROPERTY
          WHEN type=kotlin.Unit? origin=null
            BRANCH
              if: CALL 'FUN IR_BUILTINS_STUB name:EQEQ visibility:public modality:FINAL <> (arg0:kotlin.Any?, arg1:kotlin.Any?) returnType:kotlin.Boolean flags:[]' type=kotlin.Boolean origin=EQEQ
                arg0: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp0_safe_receiver type:java.io.PrintStream? flags:[val]' 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 'FUN IR_EXTERNAL_JAVA_DECLARATION_STUB name:println visibility:public modality:OPEN <> ($this:java.io.PrintStream, x:kotlin.String?) returnType:kotlin.Unit flags:[]' type=kotlin.Unit origin=null
                $this: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp0_safe_receiver type:java.io.PrintStream? flags:[val]' 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:[] superTypes:[kotlin.Any]
        BLOCK type=kotlin.Unit? origin=SAFE_CALL
          VAR IR_TEMPORARY_VARIABLE name:tmp1_safe_receiver type:java.io.PrintStream? flags:[val]
            GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:out type:java.io.PrintStream? visibility:public flags:[final,static]' type=java.io.PrintStream? origin=GET_PROPERTY
          WHEN type=kotlin.Unit? origin=null
            BRANCH
              if: CALL 'FUN IR_BUILTINS_STUB name:EQEQ visibility:public modality:FINAL <> (arg0:kotlin.Any?, arg1:kotlin.Any?) returnType:kotlin.Boolean flags:[]' type=kotlin.Boolean origin=EQEQ
                arg0: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp1_safe_receiver type:java.io.PrintStream? flags:[val]' 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 'FUN IR_EXTERNAL_JAVA_DECLARATION_STUB name:println visibility:public modality:OPEN <> ($this:java.io.PrintStream, x:kotlin.String?) returnType:kotlin.Unit flags:[]' type=kotlin.Unit origin=null
                $this: GET_VAR 'VAR IR_TEMPORARY_VARIABLE name:tmp1_safe_receiver type:java.io.PrintStream? flags:[val]' type=java.io.PrintStream? origin=null
                x: CONST String type=kotlin.String value="world!"
