From 0bd482d271369d4e0fa841cc80605ca2ce0f5205 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Thu, 22 May 2014 16:34:57 +0400 Subject: [PATCH] Minor, don't create unnecessary map in OverrideResolver --- .../jet/lang/resolve/OverrideResolver.java | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/OverrideResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/OverrideResolver.java index ae8e8f743b7..4dfc6bc8d36 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/OverrideResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/OverrideResolver.java @@ -482,16 +482,13 @@ public class OverrideResolver { are overridden by some other function and corresponding directly overridden descriptor is not relevant. */ - Map> relevantOverriddenByParent = Maps.newLinkedHashMap(overriddenByParent); - - for (Map.Entry> entry : overriddenByParent.entrySet()) { - CallableMemberDescriptor directlyOverridden = entry.getKey(); - Set declarationSet = entry.getValue(); - if (!isRelevant(declarationSet, relevantOverriddenByParent.values(), allFilteredOverriddenDeclarations)) { - relevantOverriddenByParent.remove(directlyOverridden); + for (Iterator>> iterator = + overriddenByParent.entrySet().iterator(); iterator.hasNext(); ) { + if (!isRelevant(iterator.next().getValue(), overriddenByParent.values(), allFilteredOverriddenDeclarations)) { + iterator.remove(); } } - return relevantOverriddenByParent.keySet(); + return overriddenByParent.keySet(); } private static boolean isRelevant(