diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorResolver.java index fadc2ea659c..c5f96ec1e87 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorResolver.java @@ -21,7 +21,6 @@ import com.google.common.collect.Maps; import com.google.common.collect.Sets; import com.intellij.lang.ASTNode; import com.intellij.psi.PsiElement; -import com.intellij.psi.util.PsiTreeUtil; import kotlin.Function0; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -937,11 +936,13 @@ public class DescriptorResolver { } } - ReceiverParameterDescriptor receiverDescriptor = DescriptorFactory.createReceiverParameterForCallable(propertyDescriptor, - receiverType); + ReceiverParameterDescriptor receiverDescriptor = + DescriptorFactory.createReceiverParameterForCallable(propertyDescriptor, receiverType); + + ReceiverParameterDescriptor implicitInitializerReceiver = property.hasDelegate() ? NO_RECEIVER_PARAMETER : receiverDescriptor; JetScope propertyScope = JetScopeUtils.getPropertyDeclarationInnerScope(propertyDescriptor, scope, typeParameterDescriptors, - NO_RECEIVER_PARAMETER, trace); + implicitInitializerReceiver, trace); JetType type = getVariableType(propertyDescriptor, propertyScope, property, dataFlowInfo, true, trace); diff --git a/compiler/testData/diagnostics/tests/scopes/initializerScopeOfExtensionProperty.kt b/compiler/testData/diagnostics/tests/scopes/initializerScopeOfExtensionProperty.kt index a907e4057dd..e5ffcb22b19 100644 --- a/compiler/testData/diagnostics/tests/scopes/initializerScopeOfExtensionProperty.kt +++ b/compiler/testData/diagnostics/tests/scopes/initializerScopeOfExtensionProperty.kt @@ -1,10 +1,10 @@ package i -val List.length = size() +val List.length = size() val List.length1 : Int get() = size() -val String.bd = this + "!" +val String.bd = this + "!" val String.bd1 : String get() = this + "!" @@ -13,7 +13,7 @@ class A { val ii : Int = 1 } -val A.foo = ii +val A.foo = ii val A.foo1 : Int get() = ii