--- a/langtools/src/share/classes/com/sun/tools/javac/comp/Lower.java Wed Jul 27 11:53:17 2011 -0700
+++ b/langtools/src/share/classes/com/sun/tools/javac/comp/Lower.java Thu Aug 04 11:15:37 2011 -0700
@@ -3450,6 +3450,7 @@
JCExpression expression = oneCase.getExpression();
if (expression != null) { // expression for a "default" case is null
+ expression = TreeInfo.skipParens(expression);
String labelExpr = (String) expression.type.constValue();
Integer mapping = caseLabelToPosition.put(labelExpr, casePosition);
Assert.checkNull(mapping);
@@ -3555,8 +3556,8 @@
if (isDefault)
caseExpr = null;
else {
- caseExpr = make.Literal(caseLabelToPosition.get((String)oneCase.
- getExpression().
+ caseExpr = make.Literal(caseLabelToPosition.get((String)TreeInfo.skipParens(oneCase.
+ getExpression()).
type.constValue()));
}