Split exception table on finally insertion before non-local return

in nested try blocks without finally

 #KT-31653 Fixed
This commit is contained in:
Mikhael Bogdanov
2019-06-12 14:11:02 +02:00
parent c335015c05
commit 26032e4297
14 changed files with 368 additions and 20 deletions
@@ -2472,6 +2472,31 @@ public class BlackBoxInlineCodegenTestGenerated extends AbstractBlackBoxInlineCo
runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/innerAndExternalSimple.kt");
}
@TestMetadata("kt31653.kt")
public void testKt31653() throws Exception {
runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/kt31653.kt");
}
@TestMetadata("kt31653_2.kt")
public void testKt31653_2() throws Exception {
runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/kt31653_2.kt");
}
@TestMetadata("kt31923.kt")
public void testKt31923() throws Exception {
runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/kt31923.kt");
}
@TestMetadata("kt31923_2.kt")
public void testKt31923_2() throws Exception {
runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/kt31923_2.kt");
}
@TestMetadata("kt31923_wrong.kt")
public void testKt31923_wrong() throws Exception {
runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/kt31923_wrong.kt");
}
@TestMetadata("nested.kt")
public void testNested() throws Exception {
runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/nested.kt");