1.1 --- a/src/share/classes/com/sun/tools/javac/comp/Check.java Fri May 20 16:04:23 2011 -0700 1.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Check.java Mon May 23 11:55:55 2011 +0100 1.3 @@ -2098,10 +2098,10 @@ 1.4 void checkOverrideClashes(DiagnosticPosition pos, Type site, MethodSymbol sym) { 1.5 ClashFilter cf = new ClashFilter(site); 1.6 //for each method m1 that is a member of 'site'... 1.7 - for (Symbol s1 : types.membersClosure(site).getElementsByName(sym.name, cf)) { 1.8 + for (Symbol s1 : types.membersClosure(site, false).getElementsByName(sym.name, cf)) { 1.9 //...find another method m2 that is overridden (directly or indirectly) 1.10 //by method 'sym' in 'site' 1.11 - for (Symbol s2 : types.membersClosure(site).getElementsByName(sym.name, cf)) { 1.12 + for (Symbol s2 : types.membersClosure(site, false).getElementsByName(sym.name, cf)) { 1.13 if (s1 == s2 || !sym.overrides(s2, site.tsym, types, false)) continue; 1.14 //if (i) the signature of 'sym' is not a subsignature of m1 (seen as 1.15 //a member of 'site') and (ii) m1 has the same erasure as m2, issue an error 1.16 @@ -2134,7 +2134,7 @@ 1.17 void checkHideClashes(DiagnosticPosition pos, Type site, MethodSymbol sym) { 1.18 ClashFilter cf = new ClashFilter(site); 1.19 //for each method m1 that is a member of 'site'... 1.20 - for (Symbol s : types.membersClosure(site).getElementsByName(sym.name, cf)) { 1.21 + for (Symbol s : types.membersClosure(site, true).getElementsByName(sym.name, cf)) { 1.22 //if (i) the signature of 'sym' is not a subsignature of m1 (seen as 1.23 //a member of 'site') and (ii) 'sym' has the same erasure as m1, issue an error 1.24 if (!types.isSubSignature(sym.type, types.memberType(site, s), false) &&