diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/elements/KtLightFieldImpl.kt b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/elements/KtLightFieldImpl.kt index 8ffbbe06776..2f27a57175a 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/elements/KtLightFieldImpl.kt +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/elements/KtLightFieldImpl.kt @@ -60,9 +60,10 @@ sealed class KtLightFieldImpl( } override fun equals(other: Any?): Boolean = - other is KtLightFieldImpl<*> && - this.name == other.name && - this.containingClass == other.containingClass + this === other || + (other is KtLightFieldImpl<*> && + this.name == other.name && + this.containingClass == other.containingClass) override fun hashCode() = 31 * containingClass.hashCode() + name.hashCode() diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/elements/KtLightMethodImpl.kt b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/elements/KtLightMethodImpl.kt index 39f8598cc5d..c029a5438dd 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/elements/KtLightMethodImpl.kt +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/elements/KtLightMethodImpl.kt @@ -147,11 +147,12 @@ class KtLightMethodImpl private constructor( for source elements index is unique to each member */ override fun equals(other: Any?): Boolean = - other is KtLightMethodImpl && - this.name == other.name && - this.containingClass == other.containingClass && - this.lightMemberOrigin == other.lightMemberOrigin && - this._memberIndex == other._memberIndex + this === other || + (other is KtLightMethodImpl && + this.name == other.name && + this.containingClass == other.containingClass && + this.lightMemberOrigin == other.lightMemberOrigin && + this._memberIndex == other._memberIndex) override fun hashCode(): Int = ((getName().hashCode() * 31 + (lightMemberOrigin?.hashCode() ?: 0)) * 31 + containingClass.hashCode()) * 31 + (_memberIndex?.hashCode() ?: 0)