fun test() {
  with<Int, Unit>(receiver = 42, block = local fun Int.<anonymous>() {
    useContext<Int>(/* $context_receiver_0 = $this$with, */ block = local fun <anonymous>(i: Int) {
      i.toDouble() /*~> Unit */
    }
)
  }
)
}

context($context_receiver_0: T)
fun <T : Any?> useContext(block: Function1<T, Unit>) {
}

