blob: 5c725d5ba3dcc2066149b367f39095d608283994 [file] [log] [blame]
// constant expressions in switch
import java.util.Date;
class a {
final int f = -3;
void f1() {
switch (0) {
case <error descr="Constant expression required">new Integer(0).MAX_VALUE</error>:
}
int k=0;
switch (0) {
case <error descr="Constant expression required">false ? k : 0</error>:
case <error descr="Constant expression required">true ? 1 : k</error>:
}
boolean b=true;
switch (0) {
case <error descr="Constant expression required">false && b ? 0 : 1</error>:
case <error descr="Constant expression required">true || b ? 2 : 0</error>:
}
final Object obj="";
switch (0) {
case <error descr="Constant expression required">obj=="" ? 0 : 0</error>:
case <error descr="Constant expression required">this.f</error>:
}
int i = 0;
final Integer I = null;
switch (0) {
case <error descr="Constant expression required">i</error>:
case <error descr="Constant expression required">I.MAX_VALUE</error>:
case Integer.MAX_VALUE:
}
}
static class b {
static final int c = 8;
}
void cf1() {
final int i = 9;
switch (0) {
case i:
case 2+4:
case f:
case a.b.c:
}
switch (0) {
case true ^ true ? 0 : 0:
}
}
}