test/tools/javac/StringsInSwitch/NonConstantLabel.java

Wed, 01 Sep 2010 03:19:16 -0700

author
jrose
date
Wed, 01 Sep 2010 03:19:16 -0700
changeset 665
d3ead6731a91
parent 611
4172cfff05f0
child 2525
2eb010b6cb22
permissions
-rw-r--r--

6979683: inconsistent interaction of reference cast with box/unbox conversions leaves out a useful case
Summary: Allow casts which narrow and then unbox.
Reviewed-by: mcimadamore

darcy@430 1 /*
darcy@430 2 * @test /nodynamiccopyright/
darcy@430 3 * @bug 6827009
darcy@430 4 * @summary Check for non-constant case labels.
darcy@430 5 * @compile/fail -source 6 NonConstantLabel.java
jjg@611 6 * @compile/fail/ref=NonConstantLabel.out -XDrawDiagnostics NonConstantLabel.java
darcy@430 7 */
darcy@430 8 class NonConstantLabel {
darcy@430 9 String m(String s) {
darcy@430 10 String fauxConstant = "Goodbye Cruel World";
darcy@430 11 switch(s) {
darcy@430 12 case "Hello World":
darcy@430 13 return(s);
darcy@430 14 case fauxConstant:
darcy@430 15 return (s + s);
darcy@430 16 }
darcy@430 17 }
darcy@430 18 }

mercurial