langtools/src/share/classes/com/sun/tools/javac/comp/TransTypes.java
changeset 25443 9187d77f2c64
parent 25306 6c8fc76bf383
child 25445 603f0c93d5c9
--- a/langtools/src/share/classes/com/sun/tools/javac/comp/TransTypes.java	Tue Jul 08 18:26:34 2014 -0700
+++ b/langtools/src/share/classes/com/sun/tools/javac/comp/TransTypes.java	Wed Jul 09 16:32:05 2014 +0200
@@ -37,6 +37,7 @@
 
 import static com.sun.tools.javac.code.Flags.*;
 import static com.sun.tools.javac.code.Kinds.*;
+import static com.sun.tools.javac.code.Scope.LookupKind.NON_RECURSIVE;
 import static com.sun.tools.javac.code.TypeTag.CLASS;
 import static com.sun.tools.javac.code.TypeTag.TYPEVAR;
 import static com.sun.tools.javac.code.TypeTag.VOID;
@@ -449,8 +450,8 @@
                     TypeSymbol i,
                     ClassSymbol origin,
                     ListBuffer<JCTree> bridges) {
-        for (Scope.Entry e = i.members().elems; e != null; e = e.sibling)
-            addBridgeIfNeeded(pos, e.sym, origin, bridges);
+        for (Symbol sym : i.members().getSymbols(NON_RECURSIVE))
+            addBridgeIfNeeded(pos, sym, origin, bridges);
         for (List<Type> l = types.interfaces(i.type); l.nonEmpty(); l = l.tail)
             addBridges(pos, l.head.tsym, origin, bridges);
     }
@@ -529,14 +530,12 @@
         }
 
         // Check that we do not introduce a name clash by erasing types.
-        for (Scope.Entry e = tree.sym.owner.members().lookup(tree.name);
-             e.sym != null;
-             e = e.next()) {
-            if (e.sym != tree.sym &&
-                types.isSameType(erasure(e.sym.type), tree.type)) {
+        for (Symbol sym : tree.sym.owner.members().getSymbolsByName(tree.name)) {
+            if (sym != tree.sym &&
+                types.isSameType(erasure(sym.type), tree.type)) {
                 log.error(tree.pos(),
                           "name.clash.same.erasure", tree.sym,
-                          e.sym);
+                          sym);
                 return;
             }
         }