diff --git a/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt b/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt index f82e1b29b9c..7183dbd0748 100644 --- a/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt +++ b/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt @@ -283,6 +283,15 @@ enum class LanguageFeature( // 2.0 EnhanceNullabilityOfPrimitiveArrays(KOTLIN_2_0, kind = BUG_FIX), // KT-54521 + + /** + * This feature is highly related to ForbidInferringTypeVariablesIntoEmptyIntersection and while they belong to the same LV, + * they might be used interchangeably. + * + * But there might be the case that we may postpone ForbidInferringTypeVariablesIntoEmptyIntersection but leave AllowEmptyIntersectionsInResultTypeResolver in 2.0. + * In that case, we would stick to the simple behavior of just inferring empty intersection (without complicated logic of filtering out expected constraints), + * but we would report a warning instead of an error (until ForbidInferringTypeVariablesIntoEmptyIntersection is enabled). + */ AllowEmptyIntersectionsInResultTypeResolver(KOTLIN_2_0, kind = OTHER), // KT-51221 ProhibitSmartcastsOnPropertyFromAlienBaseClassInheritedInInvisibleClass(KOTLIN_2_0, kind = BUG_FIX), // KT-57290 ForbidInferringPostponedTypeVariableIntoDeclaredUpperBound(KOTLIN_2_0, kind = BUG_FIX), // KT-47986