diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java index 69038aff6dd..6a8497f0256 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java @@ -472,6 +472,17 @@ public class BodyResolver { @NotNull PropertyDescriptor propertyDescriptor, @NotNull JetExpression delegateExpression, @NotNull JetScope parentScopeForAccessor + ) { + JetScope propertyDeclarationInnerScope = getScopeForProperty(jetProperty); + resolvePropertyDelegate(jetProperty, propertyDescriptor, delegateExpression, parentScopeForAccessor, propertyDeclarationInnerScope); + } + + public void resolvePropertyDelegate( + @NotNull JetProperty jetProperty, + @NotNull PropertyDescriptor propertyDescriptor, + @NotNull JetExpression delegateExpression, + @NotNull JetScope parentScopeForAccessor, + @NotNull JetScope propertyScope ) { JetPropertyAccessor getter = jetProperty.getGetter(); if (getter != null) { @@ -483,7 +494,6 @@ public class BodyResolver { trace.report(ACCESSOR_FOR_DELEGATED_PROPERTY.on(setter)); } - JetScope propertyScope = getScopeForProperty(jetProperty); JetScope propertyDeclarationInnerScope = descriptorResolver.getPropertyDeclarationInnerScopeForInitializer( propertyScope, propertyDescriptor.getTypeParameters(), NO_RECEIVER_PARAMETER, trace); JetType delegateType = expressionTypingServices.safeGetType(propertyDeclarationInnerScope, delegateExpression, NO_EXPECTED_TYPE,