Description
Created by: jwoLondon
Description
The following code displays the error ' on 'switch' has been suppressed, which is perhaps related to this problem
without displaying the text of the actual error that caused the problem.
enum Option {
CAT, DOG;
}
void setup() {
Option option = Option.CAT;
String noise;
switch (option) {
case CAT:
noise = "miaow";
break;
case DOG:
noise = "woof";
break;
}
println(noise);
}
The full and correct error message is The local variable noise may not have been initialised. Note that a problem regarding missing 'default' on 'switch' has been suppressed, which is perhaps related to this problem
. Without this context, the 'on switch has been suppressed' message will be confusing, especially to newer programmers.
The full message is temporarily displayed in the status line above the console when typing the line that first attempts to use 'noise' (println(noise);
above), but not on running the program.
Expected Behavior
I would expect the full message to be displayed in the console on running. Or perhaps more helpfully just the first sentence The local variable noise may not have been initialised.
since the switch error is a bit misleading.
Your Environment
- Processing version: 4 beta 8
- Operating System and OS version: MacOS 11.6.5 (Bug Sur)