class B { var s: Int field = s get set constructor(s: Int = 0) /* primary */ { super/*Any*/() /* () */ } } object Host { private constructor() /* primary */ { super/*Any*/() /* () */ } operator fun B.plusAssign(b: B) { .( = .().plus(other = b.())) } } object X1 { var x1: Int field = 0 get set object X2 { var x2: Int field = 0 get set object X3 { var x3: Int field = 0 get set private constructor() /* primary */ { super/*Any*/() /* () */ } } private constructor() /* primary */ { super/*Any*/() /* () */ } } private constructor() /* primary */ { super/*Any*/() /* () */ } } fun test1(a: IntArray) { var i: Int = 0 val tmp_0: IntArray = a val tmp_1: Int = { // BLOCK val tmp_2: Int = i i = tmp_2.inc() tmp_2 } val tmp_3: Int = tmp_0.get(index = tmp_1) tmp_0.set(index = tmp_1, value = tmp_3.inc()) tmp_3 /*~> Unit */ } fun test2() { { // BLOCK val tmp_4: Int = X1.() X1.( = tmp_4.inc()) tmp_4 } /*~> Unit */ { // BLOCK val tmp_5: Int = X2.() X2.( = tmp_5.inc()) tmp_5 } /*~> Unit */ { // BLOCK val tmp_6: Int = X3.() X3.( = tmp_6.inc()) tmp_6 } /*~> Unit */ } fun Host.test3(v: B) { (, v).plusAssign(b = B(s = 1000)) }