FILE fqName:<root> fileName:/javaSyntheticGenericPropertyAccess.kt
  FUN name:test visibility:public modality:FINAL returnType:kotlin.Unit
    TYPE_PARAMETER name:F index:0 variance: superTypes:[kotlin.Any?] reified:false
    VALUE_PARAMETER kind:Regular name:j index:0 type:<root>.J<F of <root>.test>
    BLOCK_BODY
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        CALL 'public open fun getFoo (): kotlin.Int declared in <root>.J' type=kotlin.Int origin=GET_PROPERTY
          TYPE_ARG 1: F of <root>.test
          ARG <this>: GET_VAR 'j: <root>.J<F of <root>.test> declared in <root>.test' type=<root>.J<F of <root>.test> origin=IMPLICIT_ARGUMENT
      CALL 'public open fun setFoo (x: kotlin.Int): kotlin.Unit declared in <root>.J' type=kotlin.Unit origin=EQ
        TYPE_ARG 1: F of <root>.test
        ARG <this>: GET_VAR 'j: <root>.J<F of <root>.test> declared in <root>.test' type=<root>.J<F of <root>.test> origin=null
        ARG x: CONST Int type=kotlin.Int value=1
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        BLOCK type=kotlin.Int origin=POSTFIX_INCR
          VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:<root>.J<F of <root>.test> [val]
            GET_VAR 'j: <root>.J<F of <root>.test> declared in <root>.test' type=<root>.J<F of <root>.test> origin=null
          BLOCK type=kotlin.Int origin=POSTFIX_INCR
            VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:kotlin.Int [val]
              CALL 'public open fun getFoo (): kotlin.Int declared in <root>.J' type=kotlin.Int origin=POSTFIX_INCR
                TYPE_ARG 1: F of <root>.test
                ARG <this>: GET_VAR 'val tmp_0: <root>.J<F of <root>.test> declared in <root>.test' type=<root>.J<F of <root>.test> origin=null
            CALL 'public open fun setFoo (x: kotlin.Int): kotlin.Unit declared in <root>.J' type=kotlin.Unit origin=POSTFIX_INCR
              TYPE_ARG 1: F of <root>.test
              ARG <this>: GET_VAR 'val tmp_0: <root>.J<F of <root>.test> declared in <root>.test' type=<root>.J<F of <root>.test> origin=null
              ARG x: CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
                ARG <this>: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.test' type=kotlin.Int origin=null
            GET_VAR 'val tmp_1: kotlin.Int declared in <root>.test' type=kotlin.Int origin=null
      BLOCK type=kotlin.Unit origin=PLUSEQ
        VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:<root>.J<F of <root>.test> [val]
          GET_VAR 'j: <root>.J<F of <root>.test> declared in <root>.test' type=<root>.J<F of <root>.test> origin=null
        CALL 'public open fun setFoo (x: kotlin.Int): kotlin.Unit declared in <root>.J' type=kotlin.Unit origin=PLUSEQ
          TYPE_ARG 1: F of <root>.test
          ARG <this>: GET_VAR 'val tmp_2: <root>.J<F of <root>.test> declared in <root>.test' type=<root>.J<F of <root>.test> origin=null
          ARG x: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
            ARG <this>: CALL 'public open fun getFoo (): kotlin.Int declared in <root>.J' type=kotlin.Int origin=PLUSEQ
              TYPE_ARG 1: F of <root>.test
              ARG <this>: GET_VAR 'val tmp_2: <root>.J<F of <root>.test> declared in <root>.test' type=<root>.J<F of <root>.test> origin=null
            ARG other: CONST Int type=kotlin.Int value=1
