FILE fqName:<root> fileName:/typeParameterAsContextReceiver.kt
  FUN name:test visibility:public modality:FINAL returnType:kotlin.Unit
    BLOCK_BODY
      CALL 'public final fun with <T, R> (receiver: T of kotlin.with, block: @[ExtensionFunctionType] kotlin.Function1<T of kotlin.with, R of kotlin.with>): R of kotlin.with declared in kotlin' type=kotlin.Unit origin=null
        TYPE_ARG T: kotlin.Int
        TYPE_ARG R: kotlin.Unit
        ARG receiver: CONST Int type=kotlin.Int value=42
        ARG block: FUN_EXPR type=@[ExtensionFunctionType] kotlin.Function1<kotlin.Int, kotlin.Unit> origin=LAMBDA
          FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL returnType:kotlin.Unit
            VALUE_PARAMETER kind:ExtensionReceiver name:$this$with index:0 type:kotlin.Int
            BLOCK_BODY
              CALL 'public final fun useContext <T> ($context_receiver_0: T of <root>.useContext, block: kotlin.Function1<T of <root>.useContext, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
                TYPE_ARG T: kotlin.Int
                ARG $context_receiver_0: GET_VAR '$this$with: kotlin.Int declared in <root>.test.<anonymous>' type=kotlin.Int origin=IMPLICIT_ARGUMENT
                ARG block: FUN_EXPR type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=LAMBDA
                  FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL returnType:kotlin.Unit
                    VALUE_PARAMETER kind:Regular name:i index:0 type:kotlin.Int
                    BLOCK_BODY
                      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
                        CALL 'public open fun toDouble (): kotlin.Double declared in kotlin.Int' type=kotlin.Double origin=null
                          ARG <this>: GET_VAR 'i: kotlin.Int declared in <root>.test.<anonymous>.<anonymous>' type=kotlin.Int origin=null
  FUN name:useContext visibility:public modality:FINAL returnType:kotlin.Unit
    TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
    VALUE_PARAMETER kind:Context name:$context_receiver_0 index:0 type:T of <root>.useContext
    VALUE_PARAMETER kind:Regular name:block index:1 type:kotlin.Function1<T of <root>.useContext, kotlin.Unit>
    BLOCK_BODY
