RFR: 8312619: Strange error message when switching over long
Jan Lahoda
jlahoda at openjdk.org
Tue Jul 25 14:45:07 UTC 2023
For code like:
public class SelectorTypeNotAllowed {
private void noLong(long sel) {
switch (sel) {
case 0L -> {}
default -> {}
}
}
}
which is invalid (due to the `long` selector) produces this compile-time error:
/tmp/SelectorTypeNotAllowed.java:4: error: constant label of type long is not compatible with switch selector type long
case 0L -> {}
^
1 error
This is a confusing error message. The proposal here is to change the error message to:
/tmp/SelectorTypeNotAllowed.java:3: error: selector type long is not allowed
switch (sel) {
^
1 error
-------------
Commit messages:
- 8312619: Strange error message when switching over long
Changes: https://git.openjdk.org/jdk/pull/15020/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=15020&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8312619
Stats: 50 lines in 4 files changed: 43 ins; 0 del; 7 mod
Patch: https://git.openjdk.org/jdk/pull/15020.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/15020/head:pull/15020
PR: https://git.openjdk.org/jdk/pull/15020
More information about the compiler-dev
mailing list