[FIR, IR] Check for strict subtypes during actualization

^KT-65775 Fixed
Review: https://jetbrains.team/p/kt/reviews/14906/timeline
This commit is contained in:
Nikita Bobko
2024-03-12 17:34:47 +01:00
committed by Space Team
parent 0fec50135f
commit a8275c99a3
12 changed files with 102 additions and 16 deletions
@@ -393,11 +393,11 @@ internal abstract class IrExpectActualMatchingContext(
return typeContext.newTypeCheckerState(errorTypesEqualToAnything = true, stubTypesEqualToAnything = false)
}
override fun actualTypeIsSubtypeOfExpectType(expectType: KotlinTypeMarker, actualType: KotlinTypeMarker): Boolean {
override fun isSubtypeOf(superType: KotlinTypeMarker, subType: KotlinTypeMarker): Boolean {
return AbstractTypeChecker.isSubtypeOf(
createTypeCheckerState(),
subType = actualType.actualize(),
superType = expectType.actualize()
subType = subType.actualize(),
superType = superType.actualize()
)
}