FILE /arrayAugmentedAssignment1.kt
  FUN public fun foo(): kotlin.IntArray
    BLOCK_BODY
      RETURN type=kotlin.Nothing from=foo
        CALL .intArrayOf type=kotlin.IntArray operator=null
          elements: VARARG type=IntArray varargElementType=Int
            CONST Int type=kotlin.Int value='1'
            CONST Int type=kotlin.Int value='2'
            CONST Int type=kotlin.Int value='3'
  FUN public fun bar(): kotlin.Int
    BLOCK_BODY
      RETURN type=kotlin.Nothing from=bar
        CONST Int type=kotlin.Int value='42'
  CLASS CLASS C
    FUN public constructor C(/*0*/ x: kotlin.IntArray)
      BLOCK_BODY
        SET_BACKING_FIELD x type=kotlin.Unit operator=null
          GET_VAR x type=kotlin.IntArray operator=INITIALIZE_PROPERTY_FROM_PARAMETER
    PROPERTY public final val x: kotlin.IntArray
      EXPRESSION_BODY
        GET_VAR x type=kotlin.IntArray operator=INITIALIZE_PROPERTY_FROM_PARAMETER
  FUN public fun testVariable(): kotlin.Unit
    BLOCK_BODY
      VAR var x: kotlin.IntArray
        CALL .foo type=kotlin.IntArray operator=null
      BLOCK type=kotlin.Unit operator=PLUSEQ
        VAR val tmp0_array: kotlin.IntArray
          GET_VAR x type=kotlin.IntArray operator=null
        VAR val tmp1_index0: kotlin.Int
          CONST Int type=kotlin.Int value='0'
        CALL .set type=kotlin.Unit operator=PLUSEQ
          $this: GET_VAR tmp0_array type=kotlin.IntArray operator=null
          index: GET_VAR tmp1_index0 type=kotlin.Int operator=null
          value: CALL .plus type=kotlin.Int operator=PLUSEQ
            $this: CALL .get type=kotlin.Int operator=PLUSEQ
              $this: GET_VAR tmp0_array type=kotlin.IntArray operator=null
              index: GET_VAR tmp1_index0 type=kotlin.Int operator=null
            other: CONST Int type=kotlin.Int value='1'
  FUN public fun testCall(): kotlin.Unit
    BLOCK_BODY
      BLOCK type=kotlin.Unit operator=MULTEQ
        VAR val tmp0_array: kotlin.IntArray
          CALL .foo type=kotlin.IntArray operator=null
        VAR val tmp1_index0: kotlin.Int
          CALL .bar type=kotlin.Int operator=null
        CALL .set type=kotlin.Unit operator=MULTEQ
          $this: GET_VAR tmp0_array type=kotlin.IntArray operator=null
          index: GET_VAR tmp1_index0 type=kotlin.Int operator=null
          value: CALL .times type=kotlin.Int operator=MULTEQ
            $this: CALL .get type=kotlin.Int operator=MULTEQ
              $this: GET_VAR tmp0_array type=kotlin.IntArray operator=null
              index: GET_VAR tmp1_index0 type=kotlin.Int operator=null
            other: CONST Int type=kotlin.Int value='2'
  FUN public fun testMember(/*0*/ c: C): kotlin.Unit
    BLOCK_BODY
      BLOCK type=kotlin.Int operator=POSTFIX_INCR
        VAR val tmp0_array: kotlin.IntArray
          CALL .<get-x> type=kotlin.IntArray operator=GET_PROPERTY
            $this: GET_VAR c type=C operator=null
        VAR val tmp1_index0: kotlin.Int
          CONST Int type=kotlin.Int value='0'
        VAR val tmp2: kotlin.Int
          CALL .get type=kotlin.Int operator=POSTFIX_INCR
            $this: GET_VAR tmp0_array type=kotlin.IntArray operator=null
            index: GET_VAR tmp1_index0 type=kotlin.Int operator=null
        CALL .set type=kotlin.Unit operator=POSTFIX_INCR
          $this: GET_VAR tmp0_array type=kotlin.IntArray operator=null
          index: GET_VAR tmp1_index0 type=kotlin.Int operator=null
          value: CALL .inc type=kotlin.Int operator=POSTFIX_INCR
            $this: GET_VAR tmp2 type=kotlin.Int operator=null
        GET_VAR tmp2 type=kotlin.Int operator=null
