--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Wed Nov 19 13:46:04 2014 +0100
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Thu Nov 20 09:43:13 2014 -0800
@@ -3233,6 +3233,10 @@
// Determine the symbol represented by the selection.
env.info.pendingResolutionPhase = null;
Symbol sym = selectSym(tree, sitesym, site, env, resultInfo);
+ if (sym.kind == VAR && sym.name != names._super && env.info.defaultSuperCallSite != null) {
+ log.error(tree.selected.pos(), "not.encl.class", site.tsym);
+ sym = syms.errSymbol;
+ }
if (sym.exists() && !isType(sym) && pkind().contains(KindSelector.TYP_PCK)) {
site = capture(site);
sym = selectSym(tree, sitesym, site, env, resultInfo);