JVM_IR: apply TailCallOptimizationLowering to all suspend functions

Even if a function is known to be tail call because it's a compiler
generated bridge, the tail return might still need to be added in case
of Unit return type.
This commit is contained in:
pyos
2020-03-09 14:33:59 +01:00
committed by Ilmir Usmanov
parent dc388f3f3a
commit 735fae0e5a
8 changed files with 82 additions and 21 deletions
@@ -8943,6 +8943,11 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
runTestWithPackageReplacement("compiler/testData/codegen/box/coroutines/unitTypeReturn/coroutineReturn.kt", "kotlin.coroutines");
}
@TestMetadata("interfaceDelegation.kt")
public void testInterfaceDelegation() throws Exception {
runTest("compiler/testData/codegen/box/coroutines/unitTypeReturn/interfaceDelegation.kt");
}
@TestMetadata("suspendNonLocalReturn.kt")
public void testSuspendNonLocalReturn_1_2() throws Exception {
runTestWithPackageReplacement("compiler/testData/codegen/box/coroutines/unitTypeReturn/suspendNonLocalReturn.kt", "kotlin.coroutines.experimental");