Files
openide/java/java-tests/testData/inspection/dataFlow/fixture/SuspiciousLabelElementsJava19.java
Mikhail Pyltsin 43ad0b4707 [java-inspection] IDEA-281947 Useless pattern guard not suggested for removal
- remove guard if it is always true

GitOrigin-RevId: 168a103e93a42c9a82657abffcbd7626047cab3d
2023-12-14 19:49:09 +00:00

28 lines
946 B
Java

public class Test {
void testDominatedPatterns(Object o) {
switch (o) {
case String ss when <warning descr="Condition is always true">true</warning>:
break;
case <error descr="Label is dominated by a preceding case label 'String ss'">String ss</error>:
break;
default:
break;
}
}
int testDominatedConstLabel(Integer i, E e) {
switch (e) {
case <warning descr="Switch label 'E d' is the only reachable in the whole switch">E d</warning> when <warning descr="Condition is always true">true</warning>: return 1;
case <error descr="Label is dominated by a preceding case label 'E d'">A</error>: return -1;
}
return switch (i) {
case Integer ii when <warning descr="Condition is always true">true</warning> -> 1;
case <error descr="Label is dominated by a preceding case label 'Integer ii'">2</error> -> 2;
default -> 3;
};
}
enum E {A, B}
}