--- a/langtools/src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java Tue Oct 15 15:57:13 2013 -0700
+++ b/langtools/src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java Wed Oct 16 10:47:21 2013 -0700
@@ -30,7 +30,6 @@
import com.sun.tools.javac.tree.TreeMaker;
import com.sun.tools.javac.tree.TreeTranslator;
import com.sun.tools.javac.code.Attribute;
-import com.sun.tools.javac.code.Flags;
import com.sun.tools.javac.code.Kinds;
import com.sun.tools.javac.code.Scope;
import com.sun.tools.javac.code.Symbol;
@@ -1756,7 +1755,7 @@
((VarSymbol)ret).pos = ((VarSymbol)sym).pos;
break;
case CAPTURED_VAR:
- ret = new VarSymbol(SYNTHETIC | FINAL | PARAMETER, name, types.erasure(sym.type), translatedSym) {
+ ret = new VarSymbol(SYNTHETIC | FINAL, name, types.erasure(sym.type), translatedSym) {
@Override
public Symbol baseSymbol() {
//keep mapping with original captured symbol
@@ -1764,13 +1763,6 @@
}
};
break;
- case LOCAL_VAR:
- ret = new VarSymbol(FINAL, name, types.erasure(sym.type), translatedSym);
- break;
- case PARAM:
- ret = new VarSymbol(FINAL | PARAMETER, name, types.erasure(sym.type), translatedSym);
- ((VarSymbol) ret).adr = ((VarSymbol) sym).adr;
- break;
default:
ret = makeSyntheticVar(FINAL, name, types.erasure(sym.type), translatedSym);
}
@@ -1853,7 +1845,7 @@
// If instance access isn't needed, make it static.
// Interface instance methods must be default methods.
// Lambda methods are private synthetic.
- translatedSym.flags_field = SYNTHETIC | LAMBDA_METHOD |
+ translatedSym.flags_field = SYNTHETIC |
PRIVATE |
(thisReferenced? (inInterface? DEFAULT : 0) : STATIC);