From ae521524d637276fa02c3d76ee56ef1ff3fa3e4a Mon Sep 17 00:00:00 2001 From: Nikolay Lunyak Date: Wed, 18 Oct 2023 17:50:36 +0300 Subject: [PATCH] [FIR] Add tests highlighting false errors in K2 regarding equalities Some overlooked corner-cases found by Denis. --- .../equalityCompatibilityCommonCases.fir.kt | 14 ++++++++++++++ .../equalityCompatibilityCommonCases.kt | 14 ++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/compiler/testData/diagnostics/testsWithStdLib/equalityCompatibilityCommonCases.fir.kt b/compiler/testData/diagnostics/testsWithStdLib/equalityCompatibilityCommonCases.fir.kt index da89a77159f..d3fdbbdcf87 100644 --- a/compiler/testData/diagnostics/testsWithStdLib/equalityCompatibilityCommonCases.fir.kt +++ b/compiler/testData/diagnostics/testsWithStdLib/equalityCompatibilityCommonCases.fir.kt @@ -96,3 +96,17 @@ fun incompatibleIdentityRegardlessNullabilityWithValueClassesSmartCast(c: Any?, c === d } } + +enum class F + +fun incompatibleEnumComparisonWithTypeParameters(e: T, f: K) { + e == f +} + +interface A +enum class G : B + +fun incompatibleEnumAndUnrelatedInterfaceThroughTypeParameter(x: G?, i: I?) { + x == i +} + diff --git a/compiler/testData/diagnostics/testsWithStdLib/equalityCompatibilityCommonCases.kt b/compiler/testData/diagnostics/testsWithStdLib/equalityCompatibilityCommonCases.kt index 642896c4767..6fe6db70755 100644 --- a/compiler/testData/diagnostics/testsWithStdLib/equalityCompatibilityCommonCases.kt +++ b/compiler/testData/diagnostics/testsWithStdLib/equalityCompatibilityCommonCases.kt @@ -96,3 +96,17 @@ fun incompatibleIdentityRegardlessNullabilityWithValueClassesSmartCast(c: Any?, c === d } } + +enum class F + +fun incompatibleEnumComparisonWithTypeParameters(e: T, f: K) { + e == f +} + +interface A +enum class G : B + +fun incompatibleEnumAndUnrelatedInterfaceThroughTypeParameter(x: G?, i: I?) { + x == i +} +