Files
openide/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlightingPatternsInSwitch/FallthroughDefault.java
Nikita Eshkeev ee954bc169 [java switch resolve] IDEA-277110 Compilation error not highlighted when using Pattern Matching for switch
Fallthrough to default is not acceptable according to JEP 406. This patch eliminates the default cases from a special case rules and leaves only `case null` as the only special case rule.

GitOrigin-RevId: 06c865f92fed01a41c5c87e1aa0a852acb3e7ee0
2021-08-31 20:52:55 +00:00

38 lines
889 B
Java

class Main {
void f(Object o) {
switch (o) {
case Integer i :
System.out.println(i);
break;
case String s:
default:
System.out.println(<error descr="Cannot resolve symbol 's'">s</error>);
}
}
void g(Object o) {
switch (o) {
case Integer i :
System.out.println(i);
break;
case String s:
case default:
System.out.println(<error descr="Cannot resolve symbol 's'">s</error>);
}
}
void ff(Object o) {
switch (o) {
case Integer i -> System.out.println(i);
case String s, default -> System.out.println(<error descr="Cannot resolve symbol 's'">s</error>);
}
}
void gg(Object o) {
switch (o) {
case Integer i -> System.out.println(i);
case default, String s -> System.out.println(<error descr="Cannot resolve symbol 's'">s</error>);
}
}
}