RFR: JDK-8224031: Cannot parse switch expressions after type cast
Jan Lahoda
jan.lahoda at oracle.com
Thu May 16 09:38:27 UTC 2019
Hi,
JavacParser.analyzeParens is used to categorize parentheses to be either
cast, parenthesized expression or lambda parameters. It needs to be
updated to categorize parentheses followed by switch as a cast:
---
public class SE {
private void t(Integer i) {
String s = (String) switch (i) { default -> null; };
}
}
---
(Currently, it categorizes the above "(String)" as a parenthesized
expression and then fails to parse the rest of the expression.)
Proposed patch:
http://cr.openjdk.java.net/~jlahoda/8224031/webrev.00/
JBS: https://bugs.openjdk.java.net/browse/JDK-8224031
How does this look?
Thanks,
Jan
More information about the compiler-dev
mailing list