diff --git a/core/descriptors/src/org/jetbrains/jet/lang/resolve/OverridingUtil.java b/core/descriptors/src/org/jetbrains/jet/lang/resolve/OverridingUtil.java index 9ae925fa88a..5975c2c6e6c 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/resolve/OverridingUtil.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/resolve/OverridingUtil.java @@ -99,7 +99,10 @@ public class OverridingUtil { List subValueParameters = compiledValueParameters(subDescriptor); if (forOverride) { - if (superDescriptor.getTypeParameters().size() != subDescriptor.getTypeParameters().size()) { + List superTypeParameters = superDescriptor.getTypeParameters(); + List subTypeParameters = subDescriptor.getTypeParameters(); + + if (superTypeParameters.size() != subTypeParameters.size()) { for (int i = 0; i < superValueParameters.size(); ++i) { JetType superValueParameterType = getUpperBound(superValueParameters.get(i)); JetType subValueParameterType = getUpperBound(subValueParameters.get(i)); @@ -110,12 +113,6 @@ public class OverridingUtil { } return OverrideCompatibilityInfo.valueParameterTypeMismatch(null, null, OverrideCompatibilityInfo.Result.CONFLICT); } - } - - if (forOverride) { - - List superTypeParameters = superDescriptor.getTypeParameters(); - List subTypeParameters = subDescriptor.getTypeParameters(); BiMap axioms = HashBiMap.create(); for (int i = 0, typeParametersSize = superTypeParameters.size(); i < typeParametersSize; i++) {