Control-Flow Analysis: Fix bug in finally-block repetition in the presence of non-local returns

#EA-65982 Fixed
This commit is contained in:
Alexey Sedunov
2015-03-10 17:13:01 +03:00
parent f0b0fd07c5
commit 56031cb270
6 changed files with 288 additions and 3 deletions
@@ -204,6 +204,12 @@ public class ControlFlowTestGenerated extends AbstractControlFlowTest {
doTest(fileName);
}
@TestMetadata("localAndNonlocalReturnsWithFinally.kt")
public void testLocalAndNonlocalReturnsWithFinally() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/cfg/controlStructures/localAndNonlocalReturnsWithFinally.kt");
doTest(fileName);
}
@TestMetadata("OnlyWhileInFunctionBody.kt")
public void testOnlyWhileInFunctionBody() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/cfg/controlStructures/OnlyWhileInFunctionBody.kt");
@@ -210,6 +210,12 @@ public class PseudoValueTestGenerated extends AbstractPseudoValueTest {
doTest(fileName);
}
@TestMetadata("localAndNonlocalReturnsWithFinally.kt")
public void testLocalAndNonlocalReturnsWithFinally() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/cfg/controlStructures/localAndNonlocalReturnsWithFinally.kt");
doTest(fileName);
}
@TestMetadata("OnlyWhileInFunctionBody.kt")
public void testOnlyWhileInFunctionBody() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/cfg/controlStructures/OnlyWhileInFunctionBody.kt");