From 6695ddd1d55bada5732399734327976650f87d47 Mon Sep 17 00:00:00 2001 From: Dmitry Savvinov Date: Thu, 4 Jul 2019 17:35:37 +0300 Subject: [PATCH] Change 'hashCode' of 'TypeProjection' according to bug when there was exception in `hashCode` call when projection has some `SpecialType` like `NO_EXPECTED_TYPE` --- .../src/org/jetbrains/kotlin/types/TypeProjectionBase.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/descriptors/src/org/jetbrains/kotlin/types/TypeProjectionBase.java b/core/descriptors/src/org/jetbrains/kotlin/types/TypeProjectionBase.java index b6a84fe6494..cefaff484d3 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/types/TypeProjectionBase.java +++ b/core/descriptors/src/org/jetbrains/kotlin/types/TypeProjectionBase.java @@ -46,7 +46,11 @@ public abstract class TypeProjectionBase implements TypeProjection { @Override public int hashCode() { int result = getProjectionKind().hashCode(); - result = 31 * result + (isStarProjection() ? 17 : getType().hashCode()); + if (TypeUtils.noExpectedType(getType())) { + result = 31 * result +19; + } else { + result = 31 * result + (isStarProjection() ? 17 : getType().hashCode()); + } return result; } }