mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-03-10 08:31:29 +00:00
[Jspecify] Use arguments of enhancement of type instead of arguments of base type during getting enhancement of type deeply
This commit is contained in:
@@ -40,10 +40,10 @@ fun main(
|
||||
|
||||
b: AnnotatedBoundsOfWildcard
|
||||
): Unit {
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superAsIs(aAnyNotNullNotNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superAsIs(aAnyNotNullNotNullNull)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superAsIs(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNotNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superAsIs(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNotNullNull<!>)
|
||||
b.superAsIs(aAnyNotNullNullNotNull)
|
||||
b.superAsIs(aAnyNotNullNullNull)
|
||||
|
||||
@@ -52,14 +52,14 @@ fun main(
|
||||
b.superNotNull(aAnyNotNullNullNotNull)
|
||||
b.superNotNull(aAnyNotNullNullNull)
|
||||
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superNullable(aAnyNotNullNotNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superNullable(aAnyNotNullNotNullNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superNullable(aAnyNotNullNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superNullable(aAnyNotNullNullNull)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superNullable(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNotNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superNullable(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNotNullNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superNullable(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superNullable(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNullNull<!>)
|
||||
|
||||
b.extendsAsIs(aNotNullNotNullNotNull)
|
||||
b.extendsAsIs(aNotNullNotNullNull)
|
||||
@@ -67,12 +67,12 @@ fun main(
|
||||
b.extendsAsIs(aNotNullNullNull)
|
||||
|
||||
b.extendsNotNull(aNotNullNotNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.extendsNotNull(aNotNullNotNullNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.extendsNotNull(aNotNullNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.extendsNotNull(aNotNullNullNull)
|
||||
// jspecify_nullness_mismatch
|
||||
b.extendsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNotNullNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.extendsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.extendsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNull<!>)
|
||||
|
||||
b.extendsNullable(aNotNullNotNullNotNull)
|
||||
b.extendsNullable(aNotNullNotNullNull)
|
||||
|
||||
@@ -40,10 +40,10 @@ fun main(
|
||||
|
||||
b: AnnotatedBoundsOfWildcard
|
||||
): Unit {
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superAsIs(aAnyNotNullNotNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superAsIs(aAnyNotNullNotNullNull)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superAsIs(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNotNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superAsIs(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNotNullNull<!>)
|
||||
b.superAsIs(aAnyNotNullNullNotNull)
|
||||
b.superAsIs(aAnyNotNullNullNull)
|
||||
|
||||
@@ -52,14 +52,14 @@ fun main(
|
||||
b.superNotNull(aAnyNotNullNullNotNull)
|
||||
b.superNotNull(aAnyNotNullNullNull)
|
||||
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superNullable(aAnyNotNullNotNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superNullable(aAnyNotNullNotNullNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superNullable(aAnyNotNullNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.superNullable(aAnyNotNullNullNull)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superNullable(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNotNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superNullable(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNotNullNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superNullable(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.superNullable(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aAnyNotNullNullNull<!>)
|
||||
|
||||
b.extendsAsIs(aNotNullNotNullNotNull)
|
||||
b.extendsAsIs(aNotNullNotNullNull)
|
||||
@@ -67,12 +67,12 @@ fun main(
|
||||
b.extendsAsIs(aNotNullNullNull)
|
||||
|
||||
b.extendsNotNull(aNotNullNotNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.extendsNotNull(aNotNullNotNullNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.extendsNotNull(aNotNullNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.extendsNotNull(aNotNullNullNull)
|
||||
// jspecify_nullness_mismatch
|
||||
b.extendsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNotNullNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.extendsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.extendsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNull<!>)
|
||||
|
||||
b.extendsNullable(aNotNullNotNullNotNull)
|
||||
b.extendsNullable(aNotNullNotNullNull)
|
||||
|
||||
@@ -31,12 +31,12 @@ fun main(
|
||||
a: A, b: B
|
||||
): Unit {
|
||||
a.bar(aNotNullNotNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
a.bar(aNotNullNotNullNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
a.bar(aNotNullNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
a.bar(aNotNullNullNull)
|
||||
// jspecify_nullness_mismatch
|
||||
a.bar(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNotNullNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
a.bar(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
a.bar(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNull<!>)
|
||||
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.bar(aNotNullNotNullNotNull)
|
||||
|
||||
@@ -31,12 +31,12 @@ fun main(
|
||||
a: A, b: B
|
||||
): Unit {
|
||||
a.bar(aNotNullNotNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
a.bar(aNotNullNotNullNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
a.bar(aNotNullNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
a.bar(aNotNullNullNull)
|
||||
// jspecify_nullness_mismatch
|
||||
a.bar(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNotNullNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
a.bar(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
a.bar(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNull<!>)
|
||||
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.bar(aNotNullNotNullNotNull)
|
||||
|
||||
@@ -21,12 +21,12 @@ fun main(
|
||||
b: WildcardsWithDefault
|
||||
): Unit {
|
||||
b.noBoundsNotNull(aNotNullNotNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.noBoundsNotNull(aNotNullNotNullNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.noBoundsNotNull(aNotNullNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.noBoundsNotNull(aNotNullNullNull)
|
||||
// jspecify_nullness_mismatch
|
||||
b.noBoundsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNotNullNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.noBoundsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.noBoundsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNull<!>)
|
||||
|
||||
b.noBoundsNullable(aNotNullNotNullNotNull)
|
||||
b.noBoundsNullable(aNotNullNotNullNull)
|
||||
|
||||
@@ -21,12 +21,12 @@ fun main(
|
||||
b: WildcardsWithDefault
|
||||
): Unit {
|
||||
b.noBoundsNotNull(aNotNullNotNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.noBoundsNotNull(aNotNullNotNullNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.noBoundsNotNull(aNotNullNullNotNull)
|
||||
// jspecify_nullness_mismatch{mute}
|
||||
b.noBoundsNotNull(aNotNullNullNull)
|
||||
// jspecify_nullness_mismatch
|
||||
b.noBoundsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNotNullNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.noBoundsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNotNull<!>)
|
||||
// jspecify_nullness_mismatch
|
||||
b.noBoundsNotNull(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>aNotNullNullNull<!>)
|
||||
|
||||
b.noBoundsNullable(aNotNullNotNullNotNull)
|
||||
b.noBoundsNullable(aNotNullNotNullNull)
|
||||
|
||||
@@ -118,6 +118,7 @@ private fun KotlinType.wereTypeArgumentsChanged(newArguments: List<TypeProjectio
|
||||
}
|
||||
|
||||
private fun KotlinType.getEnhancementDeeplyInternal(): KotlinType {
|
||||
val arguments = if (this is TypeWithEnhancement) enhancement.arguments else arguments
|
||||
val newArguments = arguments.enhanceTypeArguments()
|
||||
val newArgumentsForUpperBound = if (this is FlexibleType) upperBound.arguments.enhanceTypeArguments() else newArguments
|
||||
val enhancedType = if (this is TypeWithEnhancement) enhancement else this
|
||||
|
||||
Reference in New Issue
Block a user