From d3b81cf376bddf2fb425f81519e3507e55fabfdb Mon Sep 17 00:00:00 2001 From: Stanislav Erokhin Date: Fri, 25 Sep 2015 18:19:24 +0300 Subject: [PATCH] Mute assert in ReferenceVariantsHelper for scopes. Now there are several places, where we can get JetScope and write wrapper by LexicalScope key. Assertions is minor here, because in worse case we just added some wrong descriptors to completion. --- .../idea/codeInsight/ReferenceVariantsHelper.kt | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/idea/ide-common/src/org/jetbrains/kotlin/idea/codeInsight/ReferenceVariantsHelper.kt b/idea/ide-common/src/org/jetbrains/kotlin/idea/codeInsight/ReferenceVariantsHelper.kt index 213e6e5852a..ce45a1396c9 100644 --- a/idea/ide-common/src/org/jetbrains/kotlin/idea/codeInsight/ReferenceVariantsHelper.kt +++ b/idea/ide-common/src/org/jetbrains/kotlin/idea/codeInsight/ReferenceVariantsHelper.kt @@ -154,13 +154,8 @@ public class ReferenceVariantsHelper( else { descriptors.processAll(implicitReceiverTypes, implicitReceiverTypes, resolutionScope, CallType.NORMAL, kindFilter, nameFilter) - // process non-instance members + // process non-instance members. for (descriptor in resolutionScope.getDescriptorsFiltered(kindFilter, nameFilter)) { - if (descriptor is CallableDescriptor) { - assert(descriptor is SyntheticFieldDescriptor || descriptor.dispatchReceiverParameter == null) { - "Resolution scope with member descriptor: $descriptor. Scope structure: ${JetScopeUtils.printStructure(resolutionScope)}" - } - } if (!descriptor.isExtension) { descriptors.add(descriptor) } @@ -271,9 +266,7 @@ public class ReferenceVariantsHelper( } for (descriptor in resolutionScope.getDescriptors(kindFilter exclude DescriptorKindExclude.NonExtensions, nameFilter)) { - assert(descriptor !is CallableDescriptor || descriptor is SyntheticFieldDescriptor || descriptor.dispatchReceiverParameter == null) { - "Resolution scope with member descriptor: $descriptor. Scope structure: ${JetScopeUtils.printStructure(resolutionScope)}" - } + // todo: sometimes resolution scope here is LazyJavaClassMemberScope. see ea.jetbrains.com/browser/ea_problems/72572 if (descriptor.isExtension) { process(descriptor as CallableDescriptor) }