fun <F : Any?> test(j: J<F>) {
  j.getFoo() /*~> Unit */
  j.setFoo(x = 1)
  { // BLOCK
    val <receiver>: J<F> = j
    val <unary>: Int = <receiver>.getFoo()
    <receiver>.setFoo(x = <unary>.inc())
    <unary>
  } /*~> Unit */
  { // BLOCK
    val <receiver>: J<F> = j
    <receiver>.setFoo(x = <receiver>.getFoo().plus(other = 1))
  }
}
