Revert "FIR: don't report EQUALITY_NOT_APPLICABLE for classes from java.*"
This reverts commit 73a8b4544a.
This commit is contained in:
committed by
TeamCityServer
parent
fdd069ddec
commit
0ae18372c5
+4
-5
@@ -15,7 +15,6 @@ import org.jetbrains.kotlin.fir.symbols.ConeClassLikeLookupTag
|
||||
import org.jetbrains.kotlin.fir.symbols.ConeTypeParameterLookupTag
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.*
|
||||
import org.jetbrains.kotlin.fir.types.*
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.StandardClassIds
|
||||
import org.jetbrains.kotlin.types.Variance
|
||||
|
||||
@@ -209,10 +208,10 @@ internal object ConeTypeCompatibilityChecker {
|
||||
val classes = classesOrInterfaces.filter { !it.isInterface }
|
||||
// Java force single inheritance, so any pair of unrelated classes are incompatible.
|
||||
if (classes.size >= 2) {
|
||||
return when {
|
||||
classes.any { it.firClass.classId.packageFqName.startsWith(Name.identifier("java")) } -> Compatibility.SOFT_INCOMPATIBLE
|
||||
classes.any { it.getHasPredefinedEqualityContract(this) } -> compatibilityUpperBound
|
||||
else -> Compatibility.SOFT_INCOMPATIBLE
|
||||
return if (classes.any { it.getHasPredefinedEqualityContract(this) }) {
|
||||
compatibilityUpperBound
|
||||
} else {
|
||||
Compatibility.SOFT_INCOMPATIBLE
|
||||
}
|
||||
}
|
||||
val finalClass = classes.firstOrNull { it.isFinal } ?: return null
|
||||
|
||||
Reference in New Issue
Block a user