2021-07-07 07:26:41 +00:00
|
|
|
/*
|
|
|
|
* @test /nodynamiccopyright/
|
|
|
|
* @bug 8268859
|
|
|
|
* @summary Verify error recovery/disambiguation of case labels that mix expressions and patterns
|
2022-11-17 00:49:53 +00:00
|
|
|
* @compile/fail/ref=PatternCaseErrorRecovery.out -XDrawDiagnostics PatternCaseErrorRecovery.java
|
2021-07-07 07:26:41 +00:00
|
|
|
*/
|
2023-05-22 04:24:06 +00:00
|
|
|
|
2021-07-07 07:26:41 +00:00
|
|
|
public class PatternCaseErrorRecovery {
|
|
|
|
Object expressionLikeType(Object o1, Object o2) {
|
|
|
|
final int a = 1;
|
|
|
|
final int b = 2;
|
|
|
|
return switch (o1) {
|
|
|
|
case true t -> o2;
|
|
|
|
case 1 + 1 e -> o2;
|
|
|
|
case a < b ? a : b e -> o2;
|
|
|
|
default -> null;
|
|
|
|
};
|
|
|
|
}
|
|
|
|
}
|