Rename LF: DefinitelyNotNullTypeParameters -> DefinitelyNonNullableTypes

This commit is contained in:
Denis.Zharkov
2021-08-11 17:40:03 +03:00
committed by teamcityserver
parent 0e7d51b04d
commit d91155558b
27 changed files with 33 additions and 32 deletions
@@ -308,11 +308,11 @@ class TypeResolver(
} }
} }
if (!languageVersionSettings.supportsFeature(LanguageFeature.DefinitelyNotNullTypeParameters)) { if (!languageVersionSettings.supportsFeature(LanguageFeature.DefinitelyNonNullableTypes)) {
c.trace.report( c.trace.report(
UNSUPPORTED_FEATURE.on( UNSUPPORTED_FEATURE.on(
intersectionType, intersectionType,
LanguageFeature.DefinitelyNotNullTypeParameters to languageVersionSettings LanguageFeature.DefinitelyNonNullableTypes to languageVersionSettings
) )
) )
return return
@@ -366,7 +366,7 @@ abstract class AbstractTypeApproximator(
return typeWithErasedNullability return typeWithErasedNullability
} }
return if (conf.definitelyNotNullType || languageVersionSettings.supportsFeature(LanguageFeature.DefinitelyNotNullTypeParameters)) { return if (conf.definitelyNotNullType || languageVersionSettings.supportsFeature(LanguageFeature.DefinitelyNonNullableTypes)) {
approximatedOriginalType?.makeDefinitelyNotNullOrNotNull() approximatedOriginalType?.makeDefinitelyNotNullOrNotNull()
} else { } else {
if (toSuper) if (toSuper)
@@ -193,7 +193,7 @@ class DescriptorSerializer private constructor(
if (metDefinitelyNotNullType) { if (metDefinitelyNotNullType) {
builder.addVersionRequirement( builder.addVersionRequirement(
writeLanguageVersionRequirement(LanguageFeature.DefinitelyNotNullTypeParameters, versionRequirementTable) writeLanguageVersionRequirement(LanguageFeature.DefinitelyNonNullableTypes, versionRequirementTable)
) )
} }
@@ -320,7 +320,7 @@ class DescriptorSerializer private constructor(
} }
if (local.metDefinitelyNotNullType) { if (local.metDefinitelyNotNullType) {
builder.addVersionRequirement(writeVersionRequirement(LanguageFeature.DefinitelyNotNullTypeParameters)) builder.addVersionRequirement(writeVersionRequirement(LanguageFeature.DefinitelyNonNullableTypes))
} }
} }
@@ -407,7 +407,7 @@ class DescriptorSerializer private constructor(
} }
if (local.metDefinitelyNotNullType) { if (local.metDefinitelyNotNullType) {
builder.addVersionRequirement(writeVersionRequirement(LanguageFeature.DefinitelyNotNullTypeParameters)) builder.addVersionRequirement(writeVersionRequirement(LanguageFeature.DefinitelyNonNullableTypes))
} }
} }
@@ -447,7 +447,7 @@ class DescriptorSerializer private constructor(
} }
if (local.metDefinitelyNotNullType) { if (local.metDefinitelyNotNullType) {
builder.addVersionRequirement(writeVersionRequirement(LanguageFeature.DefinitelyNotNullTypeParameters)) builder.addVersionRequirement(writeVersionRequirement(LanguageFeature.DefinitelyNonNullableTypes))
} }
} }
@@ -513,7 +513,7 @@ class DescriptorSerializer private constructor(
builder.addAllVersionRequirement(serializeVersionRequirements(descriptor)) builder.addAllVersionRequirement(serializeVersionRequirements(descriptor))
if (local.metDefinitelyNotNullType) { if (local.metDefinitelyNotNullType) {
builder.addVersionRequirement( builder.addVersionRequirement(
writeLanguageVersionRequirement(LanguageFeature.DefinitelyNotNullTypeParameters, versionRequirementTable) writeLanguageVersionRequirement(LanguageFeature.DefinitelyNonNullableTypes, versionRequirementTable)
) )
} }
} }
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters +ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated // !LANGUAGE: +DefinitelyNonNullableTypes +ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated
// TARGET_BACKEND: JVM // TARGET_BACKEND: JVM
// IGNORE_BACKEND: JVM_IR // IGNORE_BACKEND: JVM_IR
// IGNORE_BACKEND_FIR: JVM_IR // IGNORE_BACKEND_FIR: JVM_IR
@@ -1,4 +1,4 @@
// !LANGUAGE: +StrictJavaNullabilityAssertions +ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated +DefinitelyNotNullTypeParameters // !LANGUAGE: +StrictJavaNullabilityAssertions +ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated +DefinitelyNonNullableTypes
// TARGET_BACKEND: JVM // TARGET_BACKEND: JVM
// IGNORE_BACKEND: JVM // IGNORE_BACKEND: JVM
// IGNORE_LIGHT_ANALYSIS // IGNORE_LIGHT_ANALYSIS
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
fun <T> foo(x: T, y: T & Any) = x!! fun <T> foo(x: T, y: T & Any) = x!!
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
fun <T> foo(x: T, y: T & Any) = x!! fun <T> foo(x: T, y: T & Any) = x!!
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
fun main(x: Collection<String>) { fun main(x: Collection<String>) {
if (x is List<!SYNTAX!><!> <!SYNTAX!><!SYNTAX!><!>& Any)<!> {} if (x is List<!SYNTAX!><!> <!SYNTAX!><!SYNTAX!><!>& Any)<!> {}
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
fun main(x: Collection<String>) { fun main(x: Collection<String>) {
if (x is List<!SYNTAX!><!> <!SYNTAX!><!SYNTAX!><!>& Any)<!> {} if (x is List<!SYNTAX!><!> <!SYNTAX!><!SYNTAX!><!>& Any)<!> {}
@@ -1,3 +1,3 @@
// !LANGUAGE: -DefinitelyNotNullTypeParameters // !LANGUAGE: -DefinitelyNonNullableTypes
fun <T> foo(x: T, y: T & Any): List<T & Any>? = null fun <T> foo(x: T, y: T & Any): List<T & Any>? = null
@@ -1,3 +1,3 @@
// !LANGUAGE: -DefinitelyNotNullTypeParameters // !LANGUAGE: -DefinitelyNonNullableTypes
fun <T> foo(x: T, y: <!UNSUPPORTED_FEATURE!>T & Any<!>): List<<!UNSUPPORTED_FEATURE!>T & Any<!>>? = null fun <T> foo(x: T, y: <!UNSUPPORTED_FEATURE!>T & Any<!>): List<<!UNSUPPORTED_FEATURE!>T & Any<!>>? = null
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
fun <T> toDefNotNull(s: T): T & Any = s!! fun <T> toDefNotNull(s: T): T & Any = s!!
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
fun <T> toDefNotNull(s: T): T & Any = s!! fun <T> toDefNotNull(s: T): T & Any = s!!
@@ -1,6 +1,6 @@
// FIR_IDENTICAL // FIR_IDENTICAL
// SKIP_TXT // SKIP_TXT
// !LANGUAGE: -DefinitelyNotNullTypeParameters // !LANGUAGE: -DefinitelyNonNullableTypes
fun Any.bar() {} fun Any.bar() {}
fun Boolean.baz() {} fun Boolean.baz() {}
@@ -1,6 +1,6 @@
// FIR_IDENTICAL // FIR_IDENTICAL
// SKIP_TXT // SKIP_TXT
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
fun Any.bar() {} fun Any.bar() {}
fun Boolean.baz() {} fun Boolean.baz() {}
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
fun <T : Any> foo(x: T & Any, y: List<String & Any> & Any) {} fun <T : Any> foo(x: T & Any, y: List<String & Any> & Any) {}
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
fun <T : Any> foo(x: <!INCORRECT_LEFT_COMPONENT_OF_INTERSECTION!>T<!> & Any, y: <!INCORRECT_LEFT_COMPONENT_OF_INTERSECTION!>List<<!INCORRECT_LEFT_COMPONENT_OF_INTERSECTION!>String<!> & Any><!> & Any) {} fun <T : Any> foo(x: <!INCORRECT_LEFT_COMPONENT_OF_INTERSECTION!>T<!> & Any, y: <!INCORRECT_LEFT_COMPONENT_OF_INTERSECTION!>List<<!INCORRECT_LEFT_COMPONENT_OF_INTERSECTION!>String<!> & Any><!> & Any) {}
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
interface A<T> { interface A<T> {
fun foo(x: T): T fun foo(x: T): T
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
interface A<T> { interface A<T> {
fun foo(x: T): T fun foo(x: T): T
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters +ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated // !LANGUAGE: +DefinitelyNonNullableTypes +ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated
// FILE: A.java // FILE: A.java
import org.jetbrains.annotations.*; import org.jetbrains.annotations.*;
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters +ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated // !LANGUAGE: +DefinitelyNonNullableTypes +ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated
// FILE: A.java // FILE: A.java
import org.jetbrains.annotations.*; import org.jetbrains.annotations.*;
@@ -1,5 +1,5 @@
// SKIP_TXT // SKIP_TXT
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
inline fun <reified T : Any> foo() {} inline fun <reified T : Any> foo() {}
@@ -1,5 +1,5 @@
// SKIP_TXT // SKIP_TXT
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
inline fun <reified T : Any> foo() {} inline fun <reified T : Any> foo() {}
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
fun <T> foo(x: T, y: T & Any): T & Any = x ?: y fun <T> foo(x: T, y: T & Any): T & Any = x ?: y
@@ -1,4 +1,4 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
fun <T> foo(x: T, y: T & Any): T & Any = x ?: y fun <T> foo(x: T, y: T & Any): T & Any = x ?: y
@@ -1,5 +1,5 @@
// !LANGUAGE: +DefinitelyNotNullTypeParameters // !LANGUAGE: +DefinitelyNonNullableTypes
// COMPILER_ARGUMENTS: -XXLanguage:+DefinitelyNotNullTypeParameters // COMPILER_ARGUMENTS: -XXLanguage:+DefinitelyNonNullableTypes
package test package test
fun <T> foo(x: T & Any, y: List<T & Any>, z: (T & Any) -> T & Any): T & Any = x fun <T> foo(x: T & Any, y: List<T & Any>, z: (T & Any) -> T & Any): T & Any = x
@@ -229,6 +229,7 @@ enum class LanguageFeature(
ProhibitSmartcastsOnPropertyFromAlienBaseClass(KOTLIN_1_7, kind = BUG_FIX), ProhibitSmartcastsOnPropertyFromAlienBaseClass(KOTLIN_1_7, kind = BUG_FIX),
ProhibitInvalidCharsInNativeIdentifiers(KOTLIN_1_7, kind = BUG_FIX), ProhibitInvalidCharsInNativeIdentifiers(KOTLIN_1_7, kind = BUG_FIX),
DefinitelyNotNullTypeParameters(KOTLIN_1_7), DefinitelyNotNullTypeParameters(KOTLIN_1_7),
DefinitelyNonNullableTypes(KOTLIN_1_7),
// Temporarily disabled, see KT-27084/KT-22379 // Temporarily disabled, see KT-27084/KT-22379
SoundSmartcastFromLoopConditionForLoopAssignedVariables(sinceVersion = null, kind = BUG_FIX), SoundSmartcastFromLoopConditionForLoopAssignedVariables(sinceVersion = null, kind = BUG_FIX),