object X1 { private constructor() /* primary */ { super/*Any*/() /* () */ } var x1: Int field = 0 get set object X2 { private constructor() /* primary */ { super/*Any*/() /* () */ } var x2: Int field = 0 get set object X3 { private constructor() /* primary */ { super/*Any*/() /* () */ } var x3: Int field = 0 get set } } } fun test1(a: IntArray) { var i: Int = 0 { // BLOCK val tmp1_array: IntArray = a val tmp2_index0: Int = { // BLOCK val tmp0: Int = i i = tmp0.inc() tmp0 } val tmp3: Int = tmp1_array.get(index = tmp2_index0) tmp1_array.set(index = tmp2_index0, value = tmp3.inc()) tmp3 } /*~> Unit */ } fun test2() { { // BLOCK val tmp0_this: X1 = X1 { // BLOCK val tmp1: Int = tmp0_this.() tmp0_this.( = tmp1.inc()) tmp1 } } /*~> Unit */ { // BLOCK val tmp2_this: X2 = X2 { // BLOCK val tmp3: Int = tmp2_this.() tmp2_this.( = tmp3.inc()) tmp3 } } /*~> Unit */ { // BLOCK val tmp4_this: X3 = X3 { // BLOCK val tmp5: Int = tmp4_this.() tmp4_this.( = tmp5.inc()) tmp5 } } /*~> Unit */ } class B { constructor(s: Int = 0) /* primary */ { super/*Any*/() /* () */ } var s: Int field = s get set } object Host { private constructor() /* primary */ { super/*Any*/() /* () */ } operator fun B.plusAssign(b: B) { { // BLOCK val tmp0_this: B = tmp0_this.( = tmp0_this.().plus(other = b.())) } } } fun Host.test3(v: B) { (, v).plusAssign(b = B(s = 1000)) }