jdk-24/test/langtools/tools/javac/switchexpr/ExpressionSwitchNotExhaustive.java
Jan Lahoda b3b644438e 8206986: Compiler support for Switch Expressions (Preview)
8207405: Compiler Tree API support for Switch Expressions (Preview)

Support for switch expression, switch with rules and multiple constants for cases.

Reviewed-by: jjg, mcimadamore, vromero
2018-08-29 09:36:17 +02:00

38 lines
914 B
Java

/*
* @test /nodynamiccopyright/
* @bug 8206986
* @summary Verify behavior of not exhaustive switch expressions.
* @compile/fail/ref=ExpressionSwitchNotExhaustive.out -XDrawDiagnostics --enable-preview -source 12 ExpressionSwitchNotExhaustive.java
*/
public class ExpressionSwitchNotExhaustive {
private String print(int i) {
return switch (i) {
case 42 -> "42";
case 43 -> "43";
};
}
private String e(E e) {
return switch (e) {
case A -> "42";
};
}
private String f(int i, E e) {
return switch (i) {
case 0:
String s;
switch (e) {
case A:
s = "42";
break;
}
break s;
default:
break "43";
};
}
enum E {
A, B;
}
}