src/share/classes/com/sun/tools/javac/comp/Check.java

changeset 1441
c78acf6c2f3e
parent 1415
01c9d4161882
child 1445
376d6c1b49e5
     1.1 --- a/src/share/classes/com/sun/tools/javac/comp/Check.java	Tue Dec 04 17:19:42 2012 +0000
     1.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Check.java	Mon Dec 10 12:10:50 2012 +0000
     1.3 @@ -1833,13 +1833,15 @@
     1.4          for (Scope.Entry e1 = t1.tsym.members().elems; e1 != null; e1 = e1.sibling) {
     1.5              Symbol s1 = e1.sym;
     1.6              Type st1 = null;
     1.7 -            if (s1.kind != MTH || !s1.isInheritedIn(site.tsym, types)) continue;
     1.8 +            if (s1.kind != MTH || !s1.isInheritedIn(site.tsym, types) ||
     1.9 +                    (s1.flags() & SYNTHETIC) != 0) continue;
    1.10              Symbol impl = ((MethodSymbol)s1).implementation(site.tsym, types, false);
    1.11              if (impl != null && (impl.flags() & ABSTRACT) == 0) continue;
    1.12              for (Scope.Entry e2 = t2.tsym.members().lookup(s1.name); e2.scope != null; e2 = e2.next()) {
    1.13                  Symbol s2 = e2.sym;
    1.14                  if (s1 == s2) continue;
    1.15 -                if (s2.kind != MTH || !s2.isInheritedIn(site.tsym, types)) continue;
    1.16 +                if (s2.kind != MTH || !s2.isInheritedIn(site.tsym, types) ||
    1.17 +                        (s2.flags() & SYNTHETIC) != 0) continue;
    1.18                  if (st1 == null) st1 = types.memberType(t1, s1);
    1.19                  Type st2 = types.memberType(t2, s2);
    1.20                  if (types.overrideEquivalent(st1, st2)) {

mercurial