Couple (maybe?) missing optimizations for suspend ...
# compiler
y
Couple (maybe?) missing optimizations for suspend lambdas on JVM: • it seems that TCO is not applied to them; e.g. I'm seeing bytecode that decompiles to:
Copy code
case <some-label-number>: {
    ResultKt.throwOnFailure((Object)$result);
    Object object2 = $result;
    return object2;
}
• it seems that their closures are never spilled out (in fact, they have their closed-over values as
final
fields) Is this intentional design, or just overlooked corner cases? (LMK if this fits better in #C1CFAFJSK, but I figured the low-level compilation details are better discussed here)