From ba158de84890b0bcfcc6ab8f0f55f174911bf370 Mon Sep 17 00:00:00 2001 From: Victor Petukhov Date: Wed, 11 May 2022 20:59:40 +0200 Subject: [PATCH] [FE] Use `errorTypesEqualToAnything` and `stubTypesEqualToAnything` for type checker context which is used for type intersection emptiness check --- .../org/jetbrains/kotlin/types/model/TypeSystemContext.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/compiler.common/src/org/jetbrains/kotlin/types/model/TypeSystemContext.kt b/core/compiler.common/src/org/jetbrains/kotlin/types/model/TypeSystemContext.kt index 53155f75e27..f1685a85fb3 100644 --- a/core/compiler.common/src/org/jetbrains/kotlin/types/model/TypeSystemContext.kt +++ b/core/compiler.common/src/org/jetbrains/kotlin/types/model/TypeSystemContext.kt @@ -347,7 +347,11 @@ interface TypeSystemInferenceExtensionContext : TypeSystemContext, TypeSystemBui private fun areIncompatibleSuperTypes(firstType: KotlinTypeMarker, secondType: KotlinTypeMarker): Boolean = firstType.typeConstructor() == secondType.typeConstructor() - && !AbstractTypeChecker.equalTypes(context = this, firstType, secondType) + && !AbstractTypeChecker.equalTypes( + newTypeCheckerState(errorTypesEqualToAnything = true, stubTypesEqualToAnything = true), + firstType, + secondType + ) // interface A // interface B : A