Java: Better handling of unreachable code (IDEA-172642)

This commit is contained in:
Pavel Dolgov
2017-05-23 12:28:44 +03:00
parent da8b1f4a00
commit 16b1765f7f
19 changed files with 280 additions and 7 deletions
@@ -0,0 +1,6 @@
// "Delete unreachable statement" "true"
class Never {
void foo(int n) {
return;
}
}
@@ -0,0 +1,6 @@
// "Delete unreachable statement" "true"
class Never {
void foo(boolean b) {
return;
}
}
@@ -0,0 +1,6 @@
// "Delete unreachable statement" "true"
class Never {
void foo() {
return;
}
}
@@ -0,0 +1,6 @@
// "Delete unreachable statement" "true"
class Never {
void foo(boolean b) {
return;
}
}
@@ -0,0 +1,6 @@
// "Delete unreachable statement" "true"
class Never {
void foo(int n) {
return;
}
}
@@ -0,0 +1,7 @@
// "Delete unreachable statement" "true"
class Never {
void foo(int n) {
return;
<caret>System.out.println(n);
}
}
@@ -0,0 +1,10 @@
// "Delete unreachable statement" "true"
class Never {
void foo(boolean b) {
return;
<caret>do {
System.out.println("Never");
}
while (b);
}
}
@@ -0,0 +1,9 @@
// "Delete unreachable statement" "true"
class Never {
void foo() {
return;
<caret>for (int i = 0; i < 2; i++) {
System.out.println("Never");
}
}
}
@@ -0,0 +1,11 @@
// "Delete unreachable statement" "true"
class Never {
void foo(boolean b) {
return;
<caret>if (b) {
System.out.println("Never");
} else {
System.out.println("Never ever");
}
}
}
@@ -0,0 +1,10 @@
// "Delete unreachable statement" "true"
class Never {
void foo(int n) {
return;
<caret>switch (n) {
case 1:
System.out.println("Never");
}
}
}