diff --git a/compiler/fir/analysis-tests/testData/builtIns/kotlin-collections.txt b/compiler/fir/analysis-tests/testData/builtIns/kotlin-collections.txt index bd04691f1f4..6ae2c2fa494 100644 --- a/compiler/fir/analysis-tests/testData/builtIns/kotlin-collections.txt +++ b/compiler/fir/analysis-tests/testData/builtIns/kotlin-collections.txt @@ -1,5 +1,5 @@ public/*package*/ open class ArraysUtilJVM : R|kotlin/Any| { - public/*package*/ open static fun !|> asList(p0: ): + public/*package*/ open static fun !|> asList(p0: ): public/*package*/ constructor(): R|kotlin/collections/ArraysUtilJVM| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/NonNullNever.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/NonNullNever.fir.txt index 8ce65f344fe..161025c1fc1 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/NonNullNever.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/NonNullNever.fir.txt @@ -3,9 +3,9 @@ } public open class NonNullNever : R|kotlin/Any| { - @R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.NEVER|()) public open field field: R|kotlin/String?| + @R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.NEVER|()) public open field field: R|@FlexibleNullability kotlin/String?| - @R|MyNullable|() public open fun foo(@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.NEVER|()) x: R|kotlin/String?|, @R|MyNullable|() y: R|kotlin/CharSequence?|): R|kotlin/String?| + @R|MyNullable|() public open fun foo(@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.NEVER|()) x: R|@FlexibleNullability kotlin/String?|, @R|MyNullable|() y: R|@FlexibleNullability kotlin/CharSequence?|): R|@FlexibleNullability kotlin/String?| public constructor(): R|NonNullNever| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/Simple.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/Simple.fir.txt index e0df603af60..4d457f18346 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/Simple.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/Simple.fir.txt @@ -1,7 +1,7 @@ public open class Simple : R|kotlin/Any| { - @R|javax/annotation/Nullable|() public open field field: R|kotlin/String?| + @R|javax/annotation/Nullable|() public open field field: R|@FlexibleNullability kotlin/String?| - @R|javax/annotation/Nullable|() public open fun foo(@R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence?|): R|kotlin/String?| + @R|javax/annotation/Nullable|() public open fun foo(@R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|@FlexibleNullability kotlin/CharSequence?|): R|@FlexibleNullability kotlin/String?| @R|javax/annotation/Nonnull|() public open fun bar(): R|@EnhancedNullability kotlin/String| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/Strange.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/Strange.fir.txt index 260ec9f45c4..8488d8a9c4c 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/Strange.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/Strange.fir.txt @@ -1,7 +1,7 @@ public open class Strange : R|kotlin/Any| { - @R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.UNKNOWN|()) public open field field: R|ft!| + @R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.UNKNOWN|()) public open field field: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| - @R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.MAYBE|()) public open fun foo(@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.ALWAYS|()) x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.NEVER|()) y: R|kotlin/CharSequence?|): R|kotlin/String?| + @R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.MAYBE|()) public open fun foo(@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.ALWAYS|()) x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.NEVER|()) y: R|@FlexibleNullability kotlin/CharSequence?|): R|@FlexibleNullability kotlin/String?| @R|javax/annotation/Nonnull|() public open fun bar(): R|@EnhancedNullability kotlin/String| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/FieldsAreNullable.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/FieldsAreNullable.fir.txt index 372f9072a83..ad6909b7480 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/FieldsAreNullable.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/FieldsAreNullable.fir.txt @@ -1,9 +1,9 @@ @R|FieldsAreNullable|() public open class A : R|kotlin/Any| { - public open field field: R|kotlin/String?| + public open field field: R|@FlexibleNullability kotlin/String?| @R|javax/annotation/Nonnull|() public open field nonNullField: R|@EnhancedNullability kotlin/String| - public open fun foo(q: R|ft!|, @R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence?|): R|ft!| + public open fun foo(q: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, @R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|@FlexibleNullability kotlin/CharSequence?|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| @R|javax/annotation/Nonnull|() public open fun bar(): R|@EnhancedNullability kotlin/String| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ForceFlexibility.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ForceFlexibility.fir.txt index 336254b586f..f62cdd4dae6 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ForceFlexibility.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ForceFlexibility.fir.txt @@ -1,7 +1,7 @@ @R|spr/NonNullApi|() public open class A : R|kotlin/Any| { - public open fun foo(x: R|kotlin/String|, @R|spr/Nullable|() y: R|kotlin/CharSequence?|): R|kotlin/String| + public open fun foo(x: R|@FlexibleNullability kotlin/String|, @R|spr/Nullable|() y: R|@FlexibleNullability kotlin/CharSequence?|): R|@FlexibleNullability kotlin/String| - @R|spr/ForceFlexibility|() public open fun bar(x: R|ft!|, @R|javax/annotation/Nonnull|() y: R|@EnhancedNullability kotlin/CharSequence|): R|ft!| + @R|spr/ForceFlexibility|() public open fun bar(x: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, @R|javax/annotation/Nonnull|() y: R|@EnhancedNullability kotlin/CharSequence|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public constructor(): R|A| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ForceFlexibleOverOverrides.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ForceFlexibleOverOverrides.fir.txt index cb880e8f5c5..7baebbc698e 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ForceFlexibleOverOverrides.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ForceFlexibleOverOverrides.fir.txt @@ -1,11 +1,11 @@ @R|spr/NonNullApi|() public open class A : R|kotlin/Any|, R|B| { - @R|spr/ForceFlexibility|() public open fun foo(x: R|kotlin/String|): R|kotlin/Unit| + @R|spr/ForceFlexibility|() public open fun foo(x: R|@FlexibleNullability kotlin/String|): R|kotlin/Unit| - public open fun bar(@R|spr/ForceFlexibility|() x: R|kotlin/String|): R|kotlin/Unit| + public open fun bar(@R|spr/ForceFlexibility|() x: R|@FlexibleNullability kotlin/String|): R|kotlin/Unit| - public open fun baz(@R|spr/UnknownNullability|() x: R|kotlin/String|): R|kotlin/Unit| + public open fun baz(@R|spr/UnknownNullability|() x: R|@FlexibleNullability kotlin/String|): R|kotlin/Unit| - public open fun foobar(@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.UNKNOWN|()) x: R|ft!|): R|kotlin/Unit| + public open fun foobar(@R|javax/annotation/Nonnull|(R|javax/annotation/meta/When.UNKNOWN|()) x: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| public constructor(): R|A| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/NullabilityFromOverridden.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/NullabilityFromOverridden.fir.txt index 3701f432020..64945db905e 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/NullabilityFromOverridden.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/NullabilityFromOverridden.fir.txt @@ -1,55 +1,55 @@ @R|NonNullApi|() public open class A : R|kotlin/Any| { - public open fun foo1(x: R|kotlin/String|): R|kotlin/String| + public open fun foo1(x: R|@FlexibleNullability kotlin/String|): R|@FlexibleNullability kotlin/String| - public open fun foo2(x: R|kotlin/String|): R|kotlin/String| + public open fun foo2(x: R|@FlexibleNullability kotlin/String|): R|@FlexibleNullability kotlin/String| - public open fun foo3(x: R|kotlin/String|): R|kotlin/String| + public open fun foo3(x: R|@FlexibleNullability kotlin/String|): R|@FlexibleNullability kotlin/String| - @R|javax/annotation/Nullable|() public open fun bar1(@R|javax/annotation/Nullable|() x: R|kotlin/String?|): R|kotlin/String?| + @R|javax/annotation/Nullable|() public open fun bar1(@R|javax/annotation/Nullable|() x: R|@FlexibleNullability kotlin/String?|): R|@FlexibleNullability kotlin/String?| - @R|javax/annotation/Nullable|() public open fun bar2(@R|javax/annotation/Nullable|() x: R|kotlin/String?|): R|kotlin/String?| + @R|javax/annotation/Nullable|() public open fun bar2(@R|javax/annotation/Nullable|() x: R|@FlexibleNullability kotlin/String?|): R|@FlexibleNullability kotlin/String?| - public open fun baz(@R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|): R|kotlin/String| + public open fun baz(@R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|): R|@FlexibleNullability kotlin/String| public constructor(): R|A| } @R|NonNullApi|() public abstract interface AInt : R|kotlin/Any| { - public abstract fun foo1(x: R|kotlin/String|): R|kotlin/CharSequence| + public abstract fun foo1(x: R|@FlexibleNullability kotlin/String|): R|@FlexibleNullability kotlin/CharSequence| - public abstract fun foo2(x: R|kotlin/String|): R|kotlin/CharSequence| + public abstract fun foo2(x: R|@FlexibleNullability kotlin/String|): R|@FlexibleNullability kotlin/CharSequence| - public abstract fun foo3(x: R|kotlin/String|): R|kotlin/CharSequence| + public abstract fun foo3(x: R|@FlexibleNullability kotlin/String|): R|@FlexibleNullability kotlin/CharSequence| - @R|javax/annotation/Nullable|() public abstract fun bar1(@R|javax/annotation/Nullable|() x: R|kotlin/String?|): R|kotlin/CharSequence?| + @R|javax/annotation/Nullable|() public abstract fun bar1(@R|javax/annotation/Nullable|() x: R|@FlexibleNullability kotlin/String?|): R|@FlexibleNullability kotlin/CharSequence?| - @R|javax/annotation/Nullable|() public abstract fun bar2(@R|javax/annotation/Nullable|() x: R|kotlin/String?|): R|kotlin/CharSequence?| + @R|javax/annotation/Nullable|() public abstract fun bar2(@R|javax/annotation/Nullable|() x: R|@FlexibleNullability kotlin/String?|): R|@FlexibleNullability kotlin/CharSequence?| - public abstract fun baz(@R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|): R|kotlin/CharSequence| + public abstract fun baz(@R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|): R|@FlexibleNullability kotlin/CharSequence| } @R|NullableApi|() public open class B : R|A|, R|AInt| { - public open fun foo1(x: R|kotlin/String|): R|kotlin/String| + public open fun foo1(x: R|@FlexibleNullability kotlin/String|): R|@FlexibleNullability kotlin/String| @R|javax/annotation/Nonnull|() public open fun foo2(@R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|): R|@EnhancedNullability kotlin/String| - public open fun bar1(x: R|kotlin/String?|): R|kotlin/String?| + public open fun bar1(x: R|@FlexibleNullability kotlin/String?|): R|@FlexibleNullability kotlin/String?| - public open fun baz(x: R|kotlin/String|): R|kotlin/String| + public open fun baz(x: R|@FlexibleNullability kotlin/String|): R|@FlexibleNullability kotlin/String| public constructor(): R|B| } @R|NonNullApi|() public open class C : R|A|, R|AInt| { - public open fun foo1(x: R|kotlin/String|): R|kotlin/String| + public open fun foo1(x: R|@FlexibleNullability kotlin/String|): R|@FlexibleNullability kotlin/String| - public open fun foo2(@R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|): R|kotlin/String| + public open fun foo2(@R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|): R|@FlexibleNullability kotlin/String| - public open fun bar1(x: R|kotlin/String?|): R|kotlin/String?| + public open fun bar1(x: R|@FlexibleNullability kotlin/String?|): R|@FlexibleNullability kotlin/String?| - @R|javax/annotation/Nullable|() public open fun bar2(@R|javax/annotation/Nullable|() x: R|kotlin/String?|): R|kotlin/String?| + @R|javax/annotation/Nullable|() public open fun bar2(@R|javax/annotation/Nullable|() x: R|@FlexibleNullability kotlin/String?|): R|@FlexibleNullability kotlin/String?| - public open fun baz(x: R|kotlin/String|): R|kotlin/String| + public open fun baz(x: R|@FlexibleNullability kotlin/String|): R|@FlexibleNullability kotlin/String| public constructor(): R|C| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/OverridingDefaultQualifier.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/OverridingDefaultQualifier.fir.txt index 82219eb5895..5b850fc9c7c 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/OverridingDefaultQualifier.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/OverridingDefaultQualifier.fir.txt @@ -1,13 +1,13 @@ @R|NonNullApi|() public open class A : R|kotlin/Any| { - public open field field: R|kotlin/String| + public open field field: R|@FlexibleNullability kotlin/String| - public open fun foo(x: R|kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence?|): R|kotlin/String| + public open fun foo(x: R|@FlexibleNullability kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|@FlexibleNullability kotlin/CharSequence?|): R|@FlexibleNullability kotlin/String| - @R|NullableApi|() public open fun foobar(x: R|kotlin/String?|, @R|NonNullApi|() y: R|kotlin/CharSequence|): R|kotlin/String?| + @R|NullableApi|() public open fun foobar(x: R|@FlexibleNullability kotlin/String?|, @R|NonNullApi|() y: R|@FlexibleNullability kotlin/CharSequence|): R|@FlexibleNullability kotlin/String?| - public open fun bar(): R|kotlin/String| + public open fun bar(): R|@FlexibleNullability kotlin/String| - @R|javax/annotation/Nullable|() public open fun baz(): R|ft!>?, kotlin/collections/List!>?>?| + @R|javax/annotation/Nullable|() public open fun baz(): R|ft<@FlexibleNullability kotlin/collections/MutableList!>?, kotlin/collections/List!>?>?| public constructor(): R|A| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ParametersAreNonnullByDefault.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ParametersAreNonnullByDefault.fir.txt index 123389cd236..c5f7d7e6690 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ParametersAreNonnullByDefault.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ParametersAreNonnullByDefault.fir.txt @@ -1,7 +1,7 @@ @R|javax/annotation/ParametersAreNonnullByDefault|() public open class A : R|kotlin/Any| { - @R|javax/annotation/Nullable|() public open field field: R|kotlin/String?| + @R|javax/annotation/Nullable|() public open field field: R|@FlexibleNullability kotlin/String?| - public open fun foo(q: R|kotlin/String|, @R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence?|): R|ft!| + public open fun foo(q: R|@FlexibleNullability kotlin/String|, @R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|@FlexibleNullability kotlin/CharSequence?|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| @R|javax/annotation/Nonnull|() public open fun bar(): R|@EnhancedNullability kotlin/String| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ParametersAreNonnullByDefaultPackage.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ParametersAreNonnullByDefaultPackage.fir.txt index 8e60410e6d3..7d4ed3a7e23 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ParametersAreNonnullByDefaultPackage.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/ParametersAreNonnullByDefaultPackage.fir.txt @@ -1,7 +1,7 @@ public open class A : R|kotlin/Any| { - @R|javax/annotation/Nullable|() public open field field: R|kotlin/String?| + @R|javax/annotation/Nullable|() public open field field: R|@FlexibleNullability kotlin/String?| - public open fun foo(q: R|ft!|, @R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence?|): R|ft!| + public open fun foo(q: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, @R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|@FlexibleNullability kotlin/CharSequence?|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| @R|javax/annotation/Nonnull|() public open fun bar(): R|@EnhancedNullability kotlin/String| @@ -9,9 +9,9 @@ public open class A : R|kotlin/Any| { } public open class A2 : R|kotlin/Any| { - @R|javax/annotation/Nullable|() public open field field: R|kotlin/String?| + @R|javax/annotation/Nullable|() public open field field: R|@FlexibleNullability kotlin/String?| - public open fun foo(q: R|ft!|, @R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|kotlin/CharSequence?|): R|ft!| + public open fun foo(q: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, @R|javax/annotation/Nonnull|() x: R|@EnhancedNullability kotlin/String|, @R|javax/annotation/CheckForNull|() y: R|@FlexibleNullability kotlin/CharSequence?|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| @R|javax/annotation/Nonnull|() public open fun bar(): R|@EnhancedNullability kotlin/String| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/SpringNullable.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/SpringNullable.fir.txt index 7b90385c6e7..5568d4bb56f 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/SpringNullable.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/SpringNullable.fir.txt @@ -1,11 +1,11 @@ @R|spr/NonNullApi|() public open class A : R|kotlin/Any| { - public open field field: R|ft!| + public open field field: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| - public open fun foo(x: R|kotlin/String|, @R|spr/Nullable|() y: R|kotlin/CharSequence?|): R|kotlin/String| + public open fun foo(x: R|@FlexibleNullability kotlin/String|, @R|spr/Nullable|() y: R|@FlexibleNullability kotlin/CharSequence?|): R|@FlexibleNullability kotlin/String| - public open fun bar(): R|kotlin/String| + public open fun bar(): R|@FlexibleNullability kotlin/String| - @R|spr/Nullable|() public open fun baz(): R|ft!>?, kotlin/collections/List!>?>?| + @R|spr/Nullable|() public open fun baz(): R|ft<@FlexibleNullability kotlin/collections/MutableList!>?, kotlin/collections/List!>?>?| public constructor(): R|A| diff --git a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/SpringNullablePackage.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/SpringNullablePackage.fir.txt index 22dddd0a533..cbf1eb777ed 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/SpringNullablePackage.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/jsr305/typeQualifierDefault/SpringNullablePackage.fir.txt @@ -1,11 +1,11 @@ public open class A : R|kotlin/Any| { - public open field field: R|ft!| + public open field field: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| - public open fun foo(x: R|ft!|, @R|spr/Nullable|() y: R|kotlin/CharSequence?|): R|ft!| + public open fun foo(x: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, @R|spr/Nullable|() y: R|@FlexibleNullability kotlin/CharSequence?|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| - public open fun bar(): R|ft!| + public open fun bar(): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| - @R|spr/Nullable|() public open fun baz(): R|ft!>?, kotlin/collections/List!>?>?| + @R|spr/Nullable|() public open fun baz(): R|ft<@FlexibleNullability kotlin/collections/MutableList!>?, kotlin/collections/List!>?>?| public constructor(): R|test/A| diff --git a/compiler/fir/analysis-tests/testData/enhancement/mapping/AbstractMap.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/mapping/AbstractMap.fir.txt index be553283c51..e998133e4e1 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/mapping/AbstractMap.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/mapping/AbstractMap.fir.txt @@ -1,4 +1,4 @@ -public abstract class AbstractMap : R|kotlin/Any|, R|kotlin/collections/MutableMap!, ft!>| { +public abstract class AbstractMap : R|kotlin/Any|, R|kotlin/collections/MutableMap!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>| { public constructor(): R|AbstractMap| } diff --git a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultEnum.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultEnum.fir.txt index 4aa3a27d177..330f35301ef 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultEnum.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultEnum.fir.txt @@ -1,17 +1,17 @@ public/*package*/ open class A : R|kotlin/Any| { - public open fun a(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(HELLO)) arg: R|ft!| = R|/Signs.HELLO|): R|ft!| + public open fun a(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(HELLO)) arg: R|ft<@FlexibleNullability Signs, Signs?>!| = R|/Signs.HELLO|): R|ft<@FlexibleNullability Signs, Signs?>!| - public open fun bar(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(X)) arg: R|ft!| = R|/Signs.X|): R|ft!| + public open fun bar(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(X)) arg: R|ft<@FlexibleNullability Signs, Signs?>!| = R|/Signs.X|): R|ft<@FlexibleNullability Signs, Signs?>!| - public open fun baz(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(NOT_ENTRY_EITHER)) arg: R|ft!|): R|ft!| + public open fun baz(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(NOT_ENTRY_EITHER)) arg: R|ft<@FlexibleNullability Signs, Signs?>!|): R|ft<@FlexibleNullability Signs, Signs?>!| - public open fun bam(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(NOT_ENTRY_EITHER)) arg: R|ft!| = R|/Mixed.NOT_ENTRY_EITHER|): R|ft!| + public open fun bam(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(NOT_ENTRY_EITHER)) arg: R|ft<@FlexibleNullability Mixed, Mixed?>!| = R|/Mixed.NOT_ENTRY_EITHER|): R|ft<@FlexibleNullability Mixed, Mixed?>!| public/*package*/ constructor(): R|A| } -public final enum class Mixed : R|kotlin/Enum!>| { - public final static enum entry NOT_ENTRY_EITHER: R|Mixed| +public final enum class Mixed : R|kotlin/Enum!>| { + public final static enum entry NOT_ENTRY_EITHER: R|@FlexibleNullability Mixed| public final static fun values(): R|kotlin/Array| { } @@ -19,10 +19,10 @@ public final enum class Mixed : R|kotlin/Enum!>| { } } -public final enum class Signs : R|kotlin/Enum!>| { - public final static enum entry HELLO: R|Signs| - public final static enum entry WORLD: R|Signs| - public final static field X: R|ft!| +public final enum class Signs : R|kotlin/Enum!>| { + public final static enum entry HELLO: R|@FlexibleNullability Signs| + public final static enum entry WORLD: R|@FlexibleNullability Signs| + public final static field X: R|ft<@FlexibleNullability Signs, Signs?>!| public final static fun values(): R|kotlin/Array| { } diff --git a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultLongLiteral.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultLongLiteral.fir.txt index dc92ec4082f..c1955e3f730 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultLongLiteral.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultLongLiteral.fir.txt @@ -1,23 +1,23 @@ public open class A : R|kotlin/Any| { - public open fun first(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0x1F)) value: R|ft!| = Long(31)): R|kotlin/Unit| + public open fun first(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0x1F)) value: R|ft<@FlexibleNullability kotlin/Long, kotlin/Long?>!| = Long(31)): R|kotlin/Unit| - public open fun second(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0X1F)) value: R|ft!| = Long(31)): R|kotlin/Unit| + public open fun second(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0X1F)) value: R|ft<@FlexibleNullability kotlin/Long, kotlin/Long?>!| = Long(31)): R|kotlin/Unit| - public open fun third(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0b1010)) value: R|ft!| = Long(10)): R|kotlin/Unit| + public open fun third(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0b1010)) value: R|ft<@FlexibleNullability kotlin/Long, kotlin/Long?>!| = Long(10)): R|kotlin/Unit| - public open fun fourth(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0B1010)) value: R|ft!| = Long(10)): R|kotlin/Unit| + public open fun fourth(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0B1010)) value: R|ft<@FlexibleNullability kotlin/Long, kotlin/Long?>!| = Long(10)): R|kotlin/Unit| public constructor(): R|A| } public open class B : R|kotlin/Any| { - public open fun first(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0x)) value: R|ft!|): R|kotlin/Unit| + public open fun first(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0x)) value: R|ft<@FlexibleNullability kotlin/Long, kotlin/Long?>!|): R|kotlin/Unit| - public open fun second(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0xZZ)) value: R|ft!|): R|kotlin/Unit| + public open fun second(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0xZZ)) value: R|ft<@FlexibleNullability kotlin/Long, kotlin/Long?>!|): R|kotlin/Unit| - public open fun third(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0b)) value: R|ft!|): R|kotlin/Unit| + public open fun third(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0b)) value: R|ft<@FlexibleNullability kotlin/Long, kotlin/Long?>!|): R|kotlin/Unit| - public open fun fourth(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0B1234)) value: R|ft!|): R|kotlin/Unit| + public open fun fourth(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(0B1234)) value: R|ft<@FlexibleNullability kotlin/Long, kotlin/Long?>!|): R|kotlin/Unit| public constructor(): R|B| diff --git a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultNull.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultNull.fir.txt index 1243895032e..dabe74a9ee5 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultNull.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultNull.fir.txt @@ -1,5 +1,5 @@ public open class A : R|kotlin/Any| { - public open fun foo(@R|kotlin/annotations/jvm/internal/DefaultNull|() x: R|ft!| = Null(null)): R|kotlin/Unit| + public open fun foo(@R|kotlin/annotations/jvm/internal/DefaultNull|() x: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!| = Null(null)): R|kotlin/Unit| public open fun bar(@R|kotlin/annotations/jvm/internal/DefaultNull|() x: R|kotlin/Int| = Null(null)): R|kotlin/Unit| @@ -7,7 +7,7 @@ public open class A : R|kotlin/Any| { } public open class B!|> : R|kotlin/Any| { - public open fun foo(@R|kotlin/annotations/jvm/internal/DefaultNull|() t: R|ft!| = Null(null)): R|kotlin/Unit| + public open fun foo(@R|kotlin/annotations/jvm/internal/DefaultNull|() t: R|ft<@FlexibleNullability T, T?>!| = Null(null)): R|kotlin/Unit| public constructor!|>(): R|B| diff --git a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultNullAndParameter.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultNullAndParameter.fir.txt index 1bf73e44a09..e9f356b4f8c 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultNullAndParameter.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultNullAndParameter.fir.txt @@ -1,27 +1,27 @@ public open class A : R|kotlin/Any| { - public open fun foo(@R|kotlin/annotations/jvm/internal/DefaultNull|() i: R|ft!| = Null(null)): R|kotlin/Unit| + public open fun foo(@R|kotlin/annotations/jvm/internal/DefaultNull|() i: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!| = Null(null)): R|kotlin/Unit| - public open fun bar(@R|kotlin/annotations/jvm/internal/DefaultNull|() a: R|ft!| = Null(null)): R|kotlin/Unit| + public open fun bar(@R|kotlin/annotations/jvm/internal/DefaultNull|() a: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!| = Null(null)): R|kotlin/Unit| - public open fun bam(@R|kotlin/annotations/jvm/internal/DefaultNull|() a: R|ft!| = Null(null)): R|kotlin/Unit| + public open fun bam(@R|kotlin/annotations/jvm/internal/DefaultNull|() a: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!| = Null(null)): R|kotlin/Unit| - public open fun baz(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(42)) a: R|ft!| = Int(42)): R|kotlin/Unit| + public open fun baz(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(42)) a: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!| = Int(42)): R|kotlin/Unit| public constructor(): R|A| } public abstract interface AInt : R|kotlin/Any| { - public abstract fun foo(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(42)) i: R|ft!| = Int(42)): R|kotlin/Unit| + public abstract fun foo(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(42)) i: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!| = Int(42)): R|kotlin/Unit| - public abstract fun bar(@R|kotlin/annotations/jvm/internal/DefaultNull|() a: R|ft!| = Null(null)): R|kotlin/Unit| + public abstract fun bar(@R|kotlin/annotations/jvm/internal/DefaultNull|() a: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!| = Null(null)): R|kotlin/Unit| } public open class B : R|A| { - public open fun foo(i: R|ft!|): R|kotlin/Unit| + public open fun foo(i: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!|): R|kotlin/Unit| - public open fun bar(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(42)) a: R|ft!| = Int(42)): R|kotlin/Unit| + public open fun bar(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(42)) a: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!| = Int(42)): R|kotlin/Unit| - public open fun bam(@R|kotlin/annotations/jvm/internal/DefaultNull|() @R|kotlin/annotations/jvm/internal/DefaultValue|(String(42)) a: R|ft!| = Int(42)): R|kotlin/Unit| + public open fun bam(@R|kotlin/annotations/jvm/internal/DefaultNull|() @R|kotlin/annotations/jvm/internal/DefaultValue|(String(42)) a: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!| = Int(42)): R|kotlin/Unit| public constructor(): R|B| diff --git a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultParameter.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultParameter.fir.txt index b06d35c2685..f7075d724e5 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultParameter.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/DefaultParameter.fir.txt @@ -1,13 +1,13 @@ public/*package*/ open class A : R|kotlin/Any| { - public open fun first(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(hello)) value: R|ft!| = String(hello)): R|kotlin/Unit| + public open fun first(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(hello)) value: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = String(hello)): R|kotlin/Unit| - public open fun second(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(first)) a: R|ft!| = String(first), @R|kotlin/annotations/jvm/internal/DefaultValue|(String(second)) b: R|ft!| = String(second)): R|kotlin/Unit| + public open fun second(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(first)) a: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = String(first), @R|kotlin/annotations/jvm/internal/DefaultValue|(String(second)) b: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = String(second)): R|kotlin/Unit| - public open fun third(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(first)) a: R|ft!| = String(first), b: R|ft!|): R|kotlin/Unit| + public open fun third(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(first)) a: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = String(first), b: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| - public open fun fourth(first: R|ft!|, @R|kotlin/annotations/jvm/internal/DefaultValue|(String(second)) second: R|ft!| = String(second)): R|kotlin/Unit| + public open fun fourth(first: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, @R|kotlin/annotations/jvm/internal/DefaultValue|(String(second)) second: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = String(second)): R|kotlin/Unit| - public open fun wrong(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(hello)) i: R|ft!|): R|kotlin/Unit| + public open fun wrong(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(hello)) i: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!|): R|kotlin/Unit| public/*package*/ constructor(): R|A| diff --git a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/EmptyParameterName.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/EmptyParameterName.fir.txt index df83a692002..950fee2ec14 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/EmptyParameterName.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/EmptyParameterName.fir.txt @@ -1,9 +1,9 @@ public/*package*/ open class A : R|kotlin/Any| { - public open fun emptyName(@R|kotlin/annotations/jvm/internal/ParameterName|(String()) first: R|ft!|, @R|kotlin/annotations/jvm/internal/ParameterName|(String(ok)) second: R|kotlin/Int|): R|kotlin/Unit| + public open fun emptyName(@R|kotlin/annotations/jvm/internal/ParameterName|(String()) first: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, @R|kotlin/annotations/jvm/internal/ParameterName|(String(ok)) second: R|kotlin/Int|): R|kotlin/Unit| - public open fun missingName(@R|kotlin/annotations/jvm/internal/ParameterName|() first: R|ft!|): R|kotlin/Unit| + public open fun missingName(@R|kotlin/annotations/jvm/internal/ParameterName|() first: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| - public open fun numberName(@R|kotlin/annotations/jvm/internal/ParameterName|(Int(42)) first: R|ft!|): R|kotlin/Unit| + public open fun numberName(@R|kotlin/annotations/jvm/internal/ParameterName|(Int(42)) first: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| public/*package*/ constructor(): R|A| diff --git a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/ReorderedParameterNames.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/ReorderedParameterNames.fir.txt index 06ce0ed7930..5b1de90168c 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/ReorderedParameterNames.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/ReorderedParameterNames.fir.txt @@ -1,5 +1,5 @@ public open class A : R|kotlin/Any| { - public open fun connect(@R|kotlin/annotations/jvm/internal/ParameterName|(String(host)) host: R|ft!|, @R|kotlin/annotations/jvm/internal/ParameterName|(String(port)) port: R|kotlin/Int|): R|kotlin/Unit| + public open fun connect(@R|kotlin/annotations/jvm/internal/ParameterName|(String(host)) host: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, @R|kotlin/annotations/jvm/internal/ParameterName|(String(port)) port: R|kotlin/Int|): R|kotlin/Unit| public constructor(): R|A| diff --git a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/SameParameterName.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/SameParameterName.fir.txt index e56ddaf0148..8496ac8c6e7 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/SameParameterName.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/SameParameterName.fir.txt @@ -1,5 +1,5 @@ public open class A : R|kotlin/Any| { - public open fun same(@R|kotlin/annotations/jvm/internal/ParameterName|(String(ok)) first: R|ft!|, @R|kotlin/annotations/jvm/internal/ParameterName|(String(ok)) second: R|ft!|): R|kotlin/Unit| + public open fun same(@R|kotlin/annotations/jvm/internal/ParameterName|(String(ok)) first: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, @R|kotlin/annotations/jvm/internal/ParameterName|(String(ok)) second: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| public constructor(): R|A| diff --git a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/SpecialCharsParameterName.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/SpecialCharsParameterName.fir.txt index c71fc3e0e10..7bbbe502442 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/SpecialCharsParameterName.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/SpecialCharsParameterName.fir.txt @@ -1,7 +1,7 @@ public open class A : R|kotlin/Any| { - public open fun dollarName(@R|kotlin/annotations/jvm/internal/ParameterName|(String($)) host: R|ft!|): R|kotlin/Unit| + public open fun dollarName(@R|kotlin/annotations/jvm/internal/ParameterName|(String($)) host: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| - public open fun numberName(@R|kotlin/annotations/jvm/internal/ParameterName|(String(42)) field: R|ft!|): R|kotlin/Unit| + public open fun numberName(@R|kotlin/annotations/jvm/internal/ParameterName|(String(42)) field: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| public constructor(): R|A| diff --git a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/StaticMethodWithDefaultValue.fir.txt b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/StaticMethodWithDefaultValue.fir.txt index d35168c69a1..4b39e431056 100644 --- a/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/StaticMethodWithDefaultValue.fir.txt +++ b/compiler/fir/analysis-tests/testData/enhancement/signatureAnnotations/StaticMethodWithDefaultValue.fir.txt @@ -1,5 +1,5 @@ public/*package*/ open class A : R|kotlin/Any| { - public open static fun withDefault(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(OK)) arg: R|ft!| = String(OK)): R|ft!| + public open static fun withDefault(@R|kotlin/annotations/jvm/internal/DefaultValue|(String(OK)) arg: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = String(OK)): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public/*package*/ constructor(): R|A| diff --git a/compiler/fir/analysis-tests/testData/extendedCheckers/canBeReplacedWithOperatorAssignment/flexibleTypeBug.txt b/compiler/fir/analysis-tests/testData/extendedCheckers/canBeReplacedWithOperatorAssignment/flexibleTypeBug.txt index 9ad108acef4..c298e4ac41a 100644 --- a/compiler/fir/analysis-tests/testData/extendedCheckers/canBeReplacedWithOperatorAssignment/flexibleTypeBug.txt +++ b/compiler/fir/analysis-tests/testData/extendedCheckers/canBeReplacedWithOperatorAssignment/flexibleTypeBug.txt @@ -1,6 +1,6 @@ FILE: flexibleTypeBug.kt public final fun foo(): R|kotlin/Unit| { - lvar list1: R|ft!>, kotlin/collections/List!>?>!| = Q|java/util/Collections|.R|java/util/Collections.emptyList|!|>() + lvar list1: R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!| = Q|java/util/Collections|.R|java/util/Collections.emptyList|!|>() lval list2: R|kotlin/collections/List| = R|kotlin/collections/listOf|(String(b)) R|/list1| = R|/list1|.R|kotlin/collections/plus|!|>(R|/list2|) } diff --git a/compiler/fir/analysis-tests/testData/resolve/exhaustiveWhenAndFlexibleType.txt b/compiler/fir/analysis-tests/testData/resolve/exhaustiveWhenAndFlexibleType.txt index 9e39732060b..2608d92bed6 100644 --- a/compiler/fir/analysis-tests/testData/resolve/exhaustiveWhenAndFlexibleType.txt +++ b/compiler/fir/analysis-tests/testData/resolve/exhaustiveWhenAndFlexibleType.txt @@ -15,7 +15,7 @@ FILE: main.kt } public final fun test_1(): R|kotlin/Unit| { - lval e: R|ft!| = Q|Utils|.R|/Utils.getEnum|() + lval e: R|ft<@FlexibleNullability E, E?>!| = Q|Utils|.R|/Utils.getEnum|() lval s: R|kotlin/String| = when (R|/e|) { ==($subj$, Null(null)) -> { ^test_1 Unit @@ -34,7 +34,7 @@ FILE: main.kt R|/s|.R|kotlin/String.length| } public final fun test_2(): R|kotlin/Unit| { - lval e: R|ft!| = Q|Utils|.R|/Utils.getEnum|() + lval e: R|ft<@FlexibleNullability E, E?>!| = Q|Utils|.R|/Utils.getEnum|() lval s: R|kotlin/String| = when (R|/e|) { ==($subj$, Q|E|.R|/E.A|) -> { String() diff --git a/compiler/fir/analysis-tests/testData/resolve/expresssions/genericDiagnostic.txt b/compiler/fir/analysis-tests/testData/resolve/expresssions/genericDiagnostic.txt index 5e723192c7e..5fbd7f0c474 100644 --- a/compiler/fir/analysis-tests/testData/resolve/expresssions/genericDiagnostic.txt +++ b/compiler/fir/analysis-tests/testData/resolve/expresssions/genericDiagnostic.txt @@ -16,7 +16,7 @@ FILE: test.kt private final val DERIVED_FACTORY: R|DiagnosticFactory0!>| = R|/DiagnosticFactory0.DiagnosticFactory0|!|>() private get(): R|DiagnosticFactory0!>| public final fun createViaFactory(d: R|EmptyDiagnostic|): R|kotlin/Unit| { - lval casted: R|Diagnostic!>| = R|/DERIVED_FACTORY|.R|SubstitutionOverride!>|>|(R|/d|) + lval casted: R|@FlexibleNullability Diagnostic!>| = R|/DERIVED_FACTORY|.R|SubstitutionOverride!>|>|(R|/d|) lval element: R|DerivedElement| = R|/casted|.R|/Diagnostic.element| R|/Fix.Fix|(R|/element|) } diff --git a/compiler/fir/analysis-tests/testData/resolve/expresssions/javaFieldCallable.txt b/compiler/fir/analysis-tests/testData/resolve/expresssions/javaFieldCallable.txt index 2ffa96454fd..9245e6a1512 100644 --- a/compiler/fir/analysis-tests/testData/resolve/expresssions/javaFieldCallable.txt +++ b/compiler/fir/analysis-tests/testData/resolve/expresssions/javaFieldCallable.txt @@ -1,5 +1,5 @@ FILE: test.kt public final fun test(): R|kotlin/Unit| { - lval staticReference: R|kotlin/reflect/KMutableProperty0!>| = Q|JavaClass|::R|/JavaClass.staticField| - lval nonStaticReference: R|kotlin/reflect/KMutableProperty1!>| = Q|JavaClass|::R|/JavaClass.nonStaticField| + lval staticReference: R|kotlin/reflect/KMutableProperty0!>| = Q|JavaClass|::R|/JavaClass.staticField| + lval nonStaticReference: R|kotlin/reflect/KMutableProperty1!>| = Q|JavaClass|::R|/JavaClass.nonStaticField| } diff --git a/compiler/fir/analysis-tests/testData/resolve/expresssions/outerMemberAccesses.txt b/compiler/fir/analysis-tests/testData/resolve/expresssions/outerMemberAccesses.txt index 6840cf1e02e..0dcfc0f5422 100644 --- a/compiler/fir/analysis-tests/testData/resolve/expresssions/outerMemberAccesses.txt +++ b/compiler/fir/analysis-tests/testData/resolve/expresssions/outerMemberAccesses.txt @@ -37,7 +37,7 @@ FILE: O.kt } public final fun local(): R|kotlin/Unit| { - lval y: R|ft!| = this@R|/O.Derived|.R|/Base.foo|() + lval y: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = this@R|/O.Derived|.R|/Base.foo|() } public final val oo: R|| = object : R|kotlin/Any| { @@ -66,7 +66,7 @@ FILE: O.kt } public final fun local(): R|kotlin/Unit| { - lval y: R|ft!| = this@R|/O.Derived|.R|/Base.foo|() + lval y: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = this@R|/O.Derived|.R|/Base.foo|() } } diff --git a/compiler/fir/analysis-tests/testData/resolve/expresssions/syntheticSmartCast.txt b/compiler/fir/analysis-tests/testData/resolve/expresssions/syntheticSmartCast.txt index cdae761ca29..610f43dbe2d 100644 --- a/compiler/fir/analysis-tests/testData/resolve/expresssions/syntheticSmartCast.txt +++ b/compiler/fir/analysis-tests/testData/resolve/expresssions/syntheticSmartCast.txt @@ -20,7 +20,7 @@ FILE: test.kt R|/x|.R|/AnotherClass.bar| } public final fun test2(x: R|SomeClass?|): R|kotlin/Unit| { - lval bar: R|kotlin/CharSequence| = R|/x|?.{ $subj$.R|/SomeClass.bar| } ?: ^test2 Unit + lval bar: R|@FlexibleNullability kotlin/CharSequence| = R|/x|?.{ $subj$.R|/SomeClass.bar| } ?: ^test2 Unit R|/x|.R|/SomeClass.bar| } public final fun test3(x: R|AnotherClass?|): R|kotlin/Unit| { @@ -33,7 +33,7 @@ FILE: test.kt } public final fun test4(x: R|SomeClass?|): R|kotlin/Unit| { - lval bar: R|kotlin/CharSequence?| = R|/x|?.{ $subj$.R|/SomeClass.bar| } + lval bar: R|@FlexibleNullability kotlin/CharSequence?| = R|/x|?.{ $subj$.R|/SomeClass.bar| } when () { !=(R|/bar|, Null(null)) -> { R|/x|.R|/SomeClass.bar|.# diff --git a/compiler/fir/analysis-tests/testData/resolve/inference/capturedTypeForJavaTypeParameter.txt b/compiler/fir/analysis-tests/testData/resolve/inference/capturedTypeForJavaTypeParameter.txt index ddfbabd241b..a9624fb2e6a 100644 --- a/compiler/fir/analysis-tests/testData/resolve/inference/capturedTypeForJavaTypeParameter.txt +++ b/compiler/fir/analysis-tests/testData/resolve/inference/capturedTypeForJavaTypeParameter.txt @@ -4,5 +4,5 @@ FILE: main.kt public final fun foo(b: R|B|): R|kotlin/Unit| { } public final fun main(b: R|B<*>|): R|kotlin/Unit| { - R|/foo|!|>(R|/b|) + R|/foo|!|>(R|/b|) } diff --git a/compiler/fir/analysis-tests/testData/resolve/javaFieldVsAccessor.txt b/compiler/fir/analysis-tests/testData/resolve/javaFieldVsAccessor.txt index 261a6dbb0d6..6482843e933 100644 --- a/compiler/fir/analysis-tests/testData/resolve/javaFieldVsAccessor.txt +++ b/compiler/fir/analysis-tests/testData/resolve/javaFieldVsAccessor.txt @@ -1,5 +1,5 @@ FILE: main.kt public final fun test(a: R|A|): R|kotlin/Unit| { lval int: R|kotlin/Int| = R|/a|.R|/A.x| - lval string: R|ft!| = R|/a|.R|/A.getX|() + lval string: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/a|.R|/A.getX|() } diff --git a/compiler/fir/analysis-tests/testData/resolve/javaStaticScopeInheritance.txt b/compiler/fir/analysis-tests/testData/resolve/javaStaticScopeInheritance.txt index 242b737e00b..5d6b59f7be2 100644 --- a/compiler/fir/analysis-tests/testData/resolve/javaStaticScopeInheritance.txt +++ b/compiler/fir/analysis-tests/testData/resolve/javaStaticScopeInheritance.txt @@ -1,4 +1,4 @@ FILE: main.kt public final fun main(): R|kotlin/Unit| { - lval b: R|ft!| = Q|B|.R|/B.VALUE| + lval b: R|ft<@FlexibleNullability B, B?>!| = Q|B|.R|/B.VALUE| } diff --git a/compiler/fir/analysis-tests/testData/resolve/properties/javaAccessorConversion.txt b/compiler/fir/analysis-tests/testData/resolve/properties/javaAccessorConversion.txt index 74283bc868c..30060d84ced 100644 --- a/compiler/fir/analysis-tests/testData/resolve/properties/javaAccessorConversion.txt +++ b/compiler/fir/analysis-tests/testData/resolve/properties/javaAccessorConversion.txt @@ -1,10 +1,10 @@ FILE: main.kt public final fun test_1(x: R|A|): R|kotlin/Unit| { - lval str1: R|ft!| = R|/x|.R|/A.vmParameters| + lval str1: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/x|.R|/A.vmParameters| lval str2: R|ERROR CLASS: Unresolved name: vMParameters| = R|/x|.# } public final fun test_2(x: R|B|): R|kotlin/Unit| { - lval int: R|ft!| = R|/x|.R|/B.vmParameters| + lval int: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!| = R|/x|.R|/B.vmParameters| lval error: R|ERROR CLASS: Unresolved name: vMParameters| = R|/x|.# } public final fun test_3(x: R|C|): R|kotlin/Unit| { diff --git a/compiler/fir/analysis-tests/testData/resolve/rawTypeSam.txt b/compiler/fir/analysis-tests/testData/resolve/rawTypeSam.txt index e06e80d4aa7..3f45b125029 100644 --- a/compiler/fir/analysis-tests/testData/resolve/rawTypeSam.txt +++ b/compiler/fir/analysis-tests/testData/resolve/rawTypeSam.txt @@ -1,6 +1,6 @@ FILE: main.kt public final fun foo(): R|kotlin/Unit| { - Q|RawType|.R|/RawType.bar|( = bar@fun (it: R|ft!|): R|kotlin/Boolean| { + Q|RawType|.R|/RawType.bar|( = bar@fun (it: R|ft<@FlexibleNullability kotlin/CharSequence, @FlexibleNullability kotlin/CharSequence?>!|): R|kotlin/Boolean| { ^ CMP(>, R|/it|.R|kotlin/CharSequence.length|.R|kotlin/Int.compareTo|(Int(0))) } ) diff --git a/compiler/fir/analysis-tests/testData/resolve/samConversions/genericSam.txt b/compiler/fir/analysis-tests/testData/resolve/samConversions/genericSam.txt index f6758085a0f..7df65bfaa24 100644 --- a/compiler/fir/analysis-tests/testData/resolve/samConversions/genericSam.txt +++ b/compiler/fir/analysis-tests/testData/resolve/samConversions/genericSam.txt @@ -1,14 +1,14 @@ FILE: main.kt public final fun main(): R|kotlin/Unit| { - Q|JavaUsage|.R|/JavaUsage.foo1|( = foo1@fun (x: R|ft!|): R|ft!| { + Q|JavaUsage|.R|/JavaUsage.foo1|( = foo1@fun (x: R|ft<@FlexibleNullability kotlin/Int, @FlexibleNullability kotlin/Int?>!|): R|ft<@FlexibleNullability kotlin/String, @FlexibleNullability kotlin/String?>!| { ^ R|/x|.R|kotlin/Int.toInt|().R|kotlin/Any.toString|() } ) - Q|JavaUsage|.R|/JavaUsage.foo2|( = foo2@fun (x: R|ft!|): R|ft!| { + Q|JavaUsage|.R|/JavaUsage.foo2|( = foo2@fun (x: R|ft<@FlexibleNullability kotlin/Number, @FlexibleNullability kotlin/Number?>!|): R|ft<@FlexibleNullability kotlin/CharSequence, @FlexibleNullability kotlin/CharSequence?>!| { ^ R|/x|.R|kotlin/Number.toInt|().R|kotlin/Any.toString|() } ) - Q|JavaUsage|.#( = foo2@fun (x: R|kotlin/Int|): R|ft!| { + Q|JavaUsage|.#( = foo2@fun (x: R|kotlin/Int|): R|ft<@FlexibleNullability kotlin/CharSequence, @FlexibleNullability kotlin/CharSequence?>!| { ^ R|/x|.R|kotlin/Any.toString|() } ) diff --git a/compiler/fir/analysis-tests/testData/resolve/samConversions/samSupertypeWithOverride.txt b/compiler/fir/analysis-tests/testData/resolve/samConversions/samSupertypeWithOverride.txt index b3cda246e11..2cfa6ec3e37 100644 --- a/compiler/fir/analysis-tests/testData/resolve/samConversions/samSupertypeWithOverride.txt +++ b/compiler/fir/analysis-tests/testData/resolve/samConversions/samSupertypeWithOverride.txt @@ -2,11 +2,11 @@ FILE: main.kt public final fun foo(m: R|MyRunnable|): R|kotlin/Unit| { } public final fun main(): R|kotlin/Unit| { - Q|JavaUsage|.R|/JavaUsage.foo|( = foo@fun (x: R|kotlin/Int|): R|ft!| { + Q|JavaUsage|.R|/JavaUsage.foo|( = foo@fun (x: R|kotlin/Int|): R|ft<@FlexibleNullability kotlin/Boolean, kotlin/Boolean?>!| { ^ CMP(>, R|/x|.R|kotlin/Int.compareTo|(Int(1))) } ) - Q|JavaUsage|.R|/JavaUsage.foo|(foo@fun (it: R|kotlin/Int|): R|ft!| { + Q|JavaUsage|.R|/JavaUsage.foo|(foo@fun (it: R|kotlin/Int|): R|ft<@FlexibleNullability kotlin/Boolean, kotlin/Boolean?>!| { ^ CMP(>, R|/it|.R|kotlin/Int.compareTo|(Int(1))) } ) diff --git a/compiler/fir/analysis-tests/testData/resolve/samConversions/samWithEquals.txt b/compiler/fir/analysis-tests/testData/resolve/samConversions/samWithEquals.txt index a6d69638131..3cd01d2b6ea 100644 --- a/compiler/fir/analysis-tests/testData/resolve/samConversions/samWithEquals.txt +++ b/compiler/fir/analysis-tests/testData/resolve/samConversions/samWithEquals.txt @@ -5,7 +5,7 @@ FILE: main.kt } public final fun main(): R|kotlin/Unit| { - Q|OverridingUtil|.R|/OverridingUtil.createWithEqualityAxioms|( = l1@fun (c1: R|ft!|, c2: R|ft!|): R|kotlin/Boolean| { + Q|OverridingUtil|.R|/OverridingUtil.createWithEqualityAxioms|( = l1@fun (c1: R|ft<@FlexibleNullability TypeConstructor, TypeConstructor?>!|, c2: R|ft<@FlexibleNullability TypeConstructor, TypeConstructor?>!|): R|kotlin/Boolean| { when () { ==(R|/c1|.R|/TypeConstructor.x|, R|/c2|.R|/TypeConstructor.x|) -> { ^@l1 Boolean(true) diff --git a/compiler/fir/analysis-tests/testData/resolve/spreadOperator.txt b/compiler/fir/analysis-tests/testData/resolve/spreadOperator.txt index 196fc39dbae..307f214df0d 100644 --- a/compiler/fir/analysis-tests/testData/resolve/spreadOperator.txt +++ b/compiler/fir/analysis-tests/testData/resolve/spreadOperator.txt @@ -16,7 +16,7 @@ FILE: Main.kt R|/takeStrings|(R|/list|) } public final fun testFromJava(): R|kotlin/Unit| { - lval values: R|ft!>, kotlin/Array!>?>!| = Q|Utils|.R|/Utils.getStrings|() - lval list: R|kotlin/collections/List!>| = R|/myListOf|!|>(vararg(*R|/values|)) + lval values: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!| = Q|Utils|.R|/Utils.getStrings|() + lval list: R|kotlin/collections/List!>| = R|/myListOf|!|>(vararg(*R|/values|)) R|/takeStrings|(R|/list|) } diff --git a/compiler/fir/analysis-tests/testData/resolve/stdlib/j+k/ArrayInGenericArguments.txt b/compiler/fir/analysis-tests/testData/resolve/stdlib/j+k/ArrayInGenericArguments.txt index 605b27477c0..f18dc2a03e0 100644 --- a/compiler/fir/analysis-tests/testData/resolve/stdlib/j+k/ArrayInGenericArguments.txt +++ b/compiler/fir/analysis-tests/testData/resolve/stdlib/j+k/ArrayInGenericArguments.txt @@ -1,5 +1,5 @@ FILE: main.kt public final fun main(): R|kotlin/Unit| { - Q|Keys|.R|/Keys.getData|!>, kotlin/Array!>?>!|>(Q|Keys|.R|/Keys.X|).R|SubstitutionOverride!|>|(Int(0)).R|kotlin/String.length| - Q|Keys|.R|/Keys.getData|!|>(Q|Keys|.R|/Keys.Y|).R|kotlin/String.length| + Q|Keys|.R|/Keys.getData|!>, kotlin/Array!>?>!|>(Q|Keys|.R|/Keys.X|).R|SubstitutionOverride!|>|(Int(0)).R|kotlin/String.length| + Q|Keys|.R|/Keys.getData|!|>(Q|Keys|.R|/Keys.Y|).R|kotlin/String.length| } diff --git a/compiler/fir/analysis-tests/testData/resolve/stdlib/j+k/flexibleWildcard.txt b/compiler/fir/analysis-tests/testData/resolve/stdlib/j+k/flexibleWildcard.txt index 8a458e211f8..d2149970776 100644 --- a/compiler/fir/analysis-tests/testData/resolve/stdlib/j+k/flexibleWildcard.txt +++ b/compiler/fir/analysis-tests/testData/resolve/stdlib/j+k/flexibleWildcard.txt @@ -1,5 +1,5 @@ FILE: main.kt public final fun main(x: R|kotlin/collections/MutableCollection>|): R|kotlin/Unit| { - lval y: R|ft!>, kotlin/collections/List!>?>!| = Q|ContainerUtil|.R|/ContainerUtil.flatten|!|>(R|/x|) + lval y: R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!| = Q|ContainerUtil|.R|/ContainerUtil.flatten|!|>(R|/x|) R|/y|.R|SubstitutionOverride!|>|(Int(0)).R|kotlin/String.length| } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/inference/flexibleTypeInSystem.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/inference/flexibleTypeInSystem.txt index 2e77b232377..c7e4f338927 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/inference/flexibleTypeInSystem.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/inference/flexibleTypeInSystem.txt @@ -1,3 +1,3 @@ FILE: main.kt - public final val enumMap: R|java/util/EnumMap!, ft!>| = R|java/util/EnumMap.EnumMap|!|, R|ft!|>(R|kotlin/collections/mapOf|!|, R|kotlin/String|>(Q|JavaEnum|.R|/JavaEnum.A|.R|kotlin/to|(String(A)))) - public get(): R|java/util/EnumMap!, ft!>| + public final val enumMap: R|java/util/EnumMap!, ft!>| = R|java/util/EnumMap.EnumMap|!|, R|ft!|>(R|kotlin/collections/mapOf|!|, R|kotlin/String|>(Q|JavaEnum|.R|/JavaEnum.A|.R|kotlin/to|(String(A)))) + public get(): R|java/util/EnumMap!, ft!>| diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/BasicWithAnnotatedOverriddenJava.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/BasicWithAnnotatedOverriddenJava.txt index fd3000d39f7..a4c1c4407b2 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/BasicWithAnnotatedOverriddenJava.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/BasicWithAnnotatedOverriddenJava.txt @@ -5,8 +5,8 @@ FILE: jvm.kt } public final fun test(): R|kotlin/Unit| { - lval x: R|kotlin/String| = this@R|/User|.R|/AnnotatedDerived.foo|(String(123)) - lval y: R|kotlin/String| = this@R|/User|.R|/AnnotatedDerived.foo|(Null(null)) + lval x: R|@FlexibleNullability kotlin/String| = this@R|/User|.R|/AnnotatedDerived.foo|(String(123)) + lval y: R|@FlexibleNullability kotlin/String| = this@R|/User|.R|/AnnotatedDerived.foo|(Null(null)) } } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/BasicWithPrimitiveJava.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/BasicWithPrimitiveJava.txt index ed62ac94baf..fc3cb28c590 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/BasicWithPrimitiveJava.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/BasicWithPrimitiveJava.txt @@ -7,7 +7,7 @@ FILE: jvm.kt public final fun test(): R|kotlin/Unit| { lval res1: R|kotlin/Boolean| = this@R|/A|.R|/Some.foo|(Int(1)) lval res2: R|kotlin/Boolean| = this@R|/A|.R|/Some.foo|(Int(-1)) - lval res3: R|ft!>, kotlin/Array!>?>!| = this@R|/A|.R|/Some.bar|(R|kotlin/intArrayOf|(vararg(Int(0), Int(2), Int(-2)))) + lval res3: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!| = this@R|/A|.R|/Some.bar|(R|kotlin/intArrayOf|(vararg(Int(0), Int(2), Int(-2)))) } } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/FunctionTypeInJava.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/FunctionTypeInJava.txt index a9aed2b659c..51ffabae66e 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/FunctionTypeInJava.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/FunctionTypeInJava.txt @@ -1,14 +1,14 @@ FILE: main.kt public final fun main(): R|kotlin/Unit| { - Q|JavaClass|.R|/JavaClass.foo1|( = foo1@fun (): R|ft!| { + Q|JavaClass|.R|/JavaClass.foo1|( = foo1@fun (): R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!| { ^ Int(123) } ) - Q|JavaClass|.R|/JavaClass.foo2|( = foo2@fun (it: R|ft!|): R|ft!| { + Q|JavaClass|.R|/JavaClass.foo2|( = foo2@fun (it: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| { ^ R|/it|.R|kotlin/Int.plus|(Int(2)).R|kotlin/Any.toString|() } ) - Q|JavaClass|.R|/JavaClass.foo2|(foo2@fun (it: R|ft!|): R|ft!| { + Q|JavaClass|.R|/JavaClass.foo2|(foo2@fun (it: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| { ^ R|/it|.R|kotlin/Int.plus|(Int(3)).R|kotlin/Any.toString|() } ) @@ -17,7 +17,7 @@ FILE: main.kt } Q|JavaClass|.R|/JavaClass.foo2|(R|/y|) - Q|JavaClass|.R|/JavaClass.foo3|!|>(foo3@fun (it: R|ft!|): R|ft!| { + Q|JavaClass|.R|/JavaClass.foo3|!|>(foo3@fun (it: R|ft!|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| { ^ R|/it|.R|kotlin/Int.plus|(Int(4)).R|kotlin/Any.toString|() } , Int(5)) diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/JavaGetPrefixConflict.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/JavaGetPrefixConflict.txt index 3ed448a15ad..0328ae65888 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/JavaGetPrefixConflict.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/JavaGetPrefixConflict.txt @@ -1,8 +1,8 @@ FILE: Test.kt public final fun test(): R|kotlin/Unit| { lval jc: R|JavaClass| = R|/JavaClass.JavaClass|() - lval result: R|ft!| = R|/jc|.R|/JavaClass.text| + lval result: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/jc|.R|/JavaClass.text| } public final fun otherTest(jc: R|JavaClass|): R|kotlin/Unit| { - lval result: R|ft!| = R|/jc|.R|/JavaClass.text| + lval result: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/jc|.R|/JavaClass.text| } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/JavaSyntheticProperty.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/JavaSyntheticProperty.txt index a751a98a432..bd1f495d347 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/JavaSyntheticProperty.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/JavaSyntheticProperty.txt @@ -1,3 +1,3 @@ FILE: test.kt - public final val x: R|ft!| = R|/JavaClass.JavaClass|().R|/JavaClass.foo| - public get(): R|ft!| + public final val x: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/JavaClass.JavaClass|().R|/JavaClass.foo| + public get(): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/KJKInheritanceGeneric.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/KJKInheritanceGeneric.txt index c73fe5ddeef..a605f4c656b 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/KJKInheritanceGeneric.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/KJKInheritanceGeneric.txt @@ -16,7 +16,7 @@ FILE: K2.kt } public final fun bar(): R|kotlin/Unit| { - this@R|/K2|.R|SubstitutionOverride!|>|(Int(1)) + this@R|/K2|.R|SubstitutionOverride!|>|(Int(1)) this@R|/K2|.R|/J1.baz|() } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/KotlinClassParameterGeneric.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/KotlinClassParameterGeneric.txt index f14d31a1cfa..3e84bb2e8f9 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/KotlinClassParameterGeneric.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/KotlinClassParameterGeneric.txt @@ -7,7 +7,7 @@ FILE: K1.kt } FILE: K2.kt public final fun main(): R|kotlin/Unit| { - Q|JavaClass|.R|/JavaClass.baz|(R|/KotlinClass.KotlinClass|!|>()) + Q|JavaClass|.R|/JavaClass.baz|(R|/KotlinClass.KotlinClass|!|>()) Q|JavaClass|.R|/JavaClass.baz|(R|/KotlinClass.KotlinClass|()) Q|JavaClass|.#(R|/KotlinClass.KotlinClass|()) Q|JavaClass|.#(String()) diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/LoggerInstance.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/LoggerInstance.txt index 5ee849464da..9a4cf367e7b 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/LoggerInstance.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/LoggerInstance.txt @@ -1,6 +1,6 @@ FILE: test.kt public final fun test(): R|kotlin/Unit| { - lval logger: R|ft!| = Q|Logger|.R|/Logger.getInstance|(String(test)) + lval logger: R|ft<@FlexibleNullability Logger, Logger?>!| = Q|Logger|.R|/Logger.getInstance|(String(test)) } public final class MyTest : R|kotlin/Any| { public constructor(): R|MyTest| { @@ -10,7 +10,7 @@ FILE: test.kt private final val klass: R|java/lang/Class| = (this@R|/MyTest|).R|kotlin/jvm/java| private get(): R|java/lang/Class| - private final val logger: R|ft!| = Q|Logger|.R|/Logger.getInstance|(this@R|/MyTest|.R|/MyTest.klass|) - private get(): R|ft!| + private final val logger: R|ft<@FlexibleNullability Logger, Logger?>!| = Q|Logger|.R|/Logger.getInstance|(this@R|/MyTest|.R|/MyTest.klass|) + private get(): R|ft<@FlexibleNullability Logger, Logger?>!| } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MapEntry.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MapEntry.txt index 51d578095bb..65ec39f0290 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MapEntry.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MapEntry.txt @@ -7,7 +7,7 @@ FILE: main.kt } public final fun test(): R|kotlin/Unit| { lval b: R|MyMapEntry| = R|/MyMapEntry.MyMapEntry|() - lval key: R|ft!| = R|/b|.R|/Test.MapEntryImpl.key| - lval value: R|ft!| = R|/b|.R|/Test.MapEntryImpl.value| + lval key: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/b|.R|/Test.MapEntryImpl.key| + lval value: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/b|.R|/Test.MapEntryImpl.value| R|/b|.R|/Test.MapEntryImpl.setValue|(Null(null)) } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyException.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyException.txt index 9851d0be53c..0acf4385041 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyException.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyException.txt @@ -8,15 +8,15 @@ FILE: test.kt public final fun test(e: R|MyException|, stream: R|java/io/PrintStream|): R|kotlin/Unit| { R|/e|.R|java/lang/Throwable.printStackTrace|() R|/e|.R|java/lang/Throwable.printStackTrace|(R|/stream|) - lval result: R|ft!| = R|/e|.R|java/lang/Throwable.getLocalizedMessage|() + lval result: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/e|.R|java/lang/Throwable.getLocalizedMessage|() } public final fun test(e: R|YourException|, stream: R|java/io/PrintStream|): R|kotlin/Unit| { R|/e|.R|java/lang/Throwable.printStackTrace|() R|/e|.R|java/lang/Throwable.printStackTrace|(R|/stream|) - lval result: R|ft!| = R|/e|.R|java/lang/Throwable.getLocalizedMessage|() + lval result: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/e|.R|java/lang/Throwable.getLocalizedMessage|() } public final fun test(e: R|kotlin/Exception|, stream: R|java/io/PrintStream|): R|kotlin/Unit| { R|/e|.R|java/lang/Throwable.printStackTrace|() R|/e|.R|java/lang/Throwable.printStackTrace|(R|/stream|) - lval result: R|ft!| = R|/e|.R|java/lang/Throwable.getLocalizedMessage|() + lval result: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/e|.R|java/lang/Throwable.getLocalizedMessage|() } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyIterable.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyIterable.txt index f1345d9a36b..ce966796c07 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyIterable.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyIterable.txt @@ -2,11 +2,11 @@ FILE: test.kt public abstract interface UseIterable : R|MyIterable| { public open fun test(): R|kotlin/Unit| { lval it: R|kotlin/collections/MutableIterator!>| = this@R|/UseIterable|.R|SubstitutionOverride!>|>|() - lval split: R|java/util/Spliterator!>| = this@R|/UseIterable|.R|SubstitutionOverride!>|>|() + lval split: R|@FlexibleNullability java/util/Spliterator!>| = this@R|/UseIterable|.R|SubstitutionOverride!>|>|() } } public final fun test(some: R|kotlin/collections/Iterable|): R|kotlin/Unit| { lval it: R|kotlin/collections/Iterator| = R|/some|.R|SubstitutionOverride|>|() - lval split: R|java/util/Spliterator!>| = R|/some|.R|SubstitutionOverride!>|>|() + lval split: R|@FlexibleNullability java/util/Spliterator!>| = R|/some|.R|SubstitutionOverride!>|>|() } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyMap.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyMap.txt index 918cf56b99c..5b1e9a42bf7 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyMap.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/MyMap.txt @@ -1,20 +1,20 @@ FILE: test.kt public final fun test(map: R|MyMap|): R|kotlin/Unit| { - lval result: R|ft!| = R|/map|.R|kotlin/collections/getOrPut|!|, R|ft!|>(String(key), = getOrPut@fun (): R|kotlin/String| { + lval result: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/map|.R|kotlin/collections/getOrPut|!|, R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|>(String(key), = getOrPut@fun (): R|kotlin/String| { ^ String(value) } ) - lval otherResult: R|ft!| = R|/map|.R|SubstitutionOverride!|>|(String(key), String(value)) - lval anotherResult: R|kotlin/String?| = R|/map|.R|SubstitutionOverride|(String(key), String(value)) - R|/map|.R|SubstitutionOverride|( = forEach@fun (key: R|ft!|, value: R|ft!|): R|kotlin/Unit| { + lval otherResult: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/map|.R|SubstitutionOverride!|>|(String(key), String(value)) + lval anotherResult: R|@FlexibleNullability kotlin/String?| = R|/map|.R|SubstitutionOverride|(String(key), String(value)) + R|/map|.R|SubstitutionOverride|( = forEach@fun (key: R|ft<@FlexibleNullability kotlin/String, @FlexibleNullability kotlin/String?>!|, value: R|ft<@FlexibleNullability kotlin/String, @FlexibleNullability kotlin/String?>!|): R|kotlin/Unit| { R|kotlin/io/println|((R|/key|.R|kotlin/Any.toString|(), String(: ), R|/value|.R|kotlin/Any.toString|())) R|/key|.R|kotlin/String.length| R|/value|.R|kotlin/String.length| } ) - R|/map|.R|kotlin/collections/forEach|!|, R|ft!|>( = forEach@fun (: R|kotlin/collections/Map.Entry!, ft!>|): R|kotlin/Unit| { - lval key: R|ft!| = R|/|.R|kotlin/collections/component1|!|, R|ft!|>() - lval value: R|ft!| = R|/|.R|kotlin/collections/component2|!|, R|ft!|>() + R|/map|.R|kotlin/collections/forEach|!|, R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|>( = forEach@fun (: R|kotlin/collections/Map.Entry!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>|): R|kotlin/Unit| { + lval key: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/|.R|kotlin/collections/component1|!|, R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|>() + lval value: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/|.R|kotlin/collections/component2|!|, R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|>() R|kotlin/io/println|((R|/key|.R|kotlin/Any.toString|(), String(: ), R|/value|.R|kotlin/Any.toString|())) R|/key|.R|kotlin/String.length| R|/value|.R|kotlin/String.length| diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/StaticFromBaseClass.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/StaticFromBaseClass.txt index 4f5ef00241c..5a22a85ba88 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/StaticFromBaseClass.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/StaticFromBaseClass.txt @@ -1,5 +1,5 @@ FILE: main.kt public final fun test(): R|kotlin/Unit| { - lval project: R|ft!| = Q|PlatformDataKeys|.R|/CommonDataKeys.PROJECT| - lval member: R|ft!| = R|/PlatformDataKeys.PlatformDataKeys|().R|/CommonDataKeys.MEMBER| + lval project: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = Q|PlatformDataKeys|.R|/CommonDataKeys.PROJECT| + lval member: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = R|/PlatformDataKeys.PlatformDataKeys|().R|/CommonDataKeys.MEMBER| } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/SyntheticWithForEach.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/SyntheticWithForEach.txt index c456e26a268..ff3a816c2b6 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/SyntheticWithForEach.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/SyntheticWithForEach.txt @@ -1,13 +1,13 @@ FILE: test.kt public final fun R|Call|.testForEach(): R|kotlin/Unit| { - this@R|/testForEach|.R|/Call.arguments|.R|SubstitutionOverride|( = forEach@fun (key: R|ft!|, value: R|ft!|): R|kotlin/Unit| { + this@R|/testForEach|.R|/Call.arguments|.R|SubstitutionOverride|( = forEach@fun (key: R|ft<@FlexibleNullability kotlin/String, @FlexibleNullability kotlin/String?>!|, value: R|ft<@FlexibleNullability kotlin/String, @FlexibleNullability kotlin/String?>!|): R|kotlin/Unit| { R|/key|.R|kotlin/String.length| R|/value|.R|kotlin/String.length| } ) - this@R|/testForEach|.R|/Call.arguments|.R|kotlin/collections/forEach|!|, R|ft!|>( = forEach@fun (it: R|kotlin/collections/Map.Entry!, ft!>|): R|kotlin/Unit| { - R|/it|.R|SubstitutionOverride!|>|.R|kotlin/String.length| - R|/it|.R|SubstitutionOverride!|>|.R|kotlin/String.length| + this@R|/testForEach|.R|/Call.arguments|.R|kotlin/collections/forEach|!|, R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|>( = forEach@fun (it: R|kotlin/collections/Map.Entry!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>|): R|kotlin/Unit| { + R|/it|.R|SubstitutionOverride!|>|.R|kotlin/String.length| + R|/it|.R|SubstitutionOverride!|>|.R|kotlin/String.length| } ) } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/capturedFlexible.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/capturedFlexible.txt index a287c0292f3..21a5bd6ed63 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/capturedFlexible.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/capturedFlexible.txt @@ -1,4 +1,4 @@ FILE: capturedFlexible.kt public final fun foo(z: R|java/util/zip/ZipFile|): R|kotlin/Unit| { - R|/z|.R|java/util/zip/ZipFile.entries|().R|kotlin/sequences/asSequence|!|>() + R|/z|.R|java/util/zip/ZipFile.entries|().R|kotlin/sequences/asSequence|!|>() } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/complexFlexibleInference.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/complexFlexibleInference.txt index 66ee2e62e45..5d370cbd9af 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/complexFlexibleInference.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/complexFlexibleInference.txt @@ -1,4 +1,4 @@ FILE: main.kt public final fun bar(bindingContext: R|BindingContext|): R|kotlin/Unit| { - R|/bindingContext|.R|/BindingContext.get|!|, R|ft!|>(Q|Slices|.R|/Slices.X|, R|/bindingContext|.R|/BindingContext.get|!|, R|ft!|>(Q|Slices|.R|/Slices.Y|, Int(1))) + R|/bindingContext|.R|/BindingContext.get|!|, R|ft<@FlexibleNullability kotlin/Double, kotlin/Double?>!|>(Q|Slices|.R|/Slices.X|, R|/bindingContext|.R|/BindingContext.get|!|, R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|>(Q|Slices|.R|/Slices.Y|, Int(1))) } diff --git a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/flexibleTypeAliases.txt b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/flexibleTypeAliases.txt index 12c0220f823..d1b7da1b13e 100644 --- a/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/flexibleTypeAliases.txt +++ b/compiler/fir/analysis-tests/testData/resolveWithStdlib/j+k/flexibleTypeAliases.txt @@ -4,5 +4,5 @@ FILE: main.kt public final typealias ImmutableLinkedHashSet = R|imm/LinkedHashSet| private final typealias ImmutableMultimap = R|ImmutableMap>| private final fun R|ImmutableMultimap|.put(key: R|K|, value: R|V|): R|kotlin/Unit| { - this@R|/put|.R|SubstitutionOverride, ImmutableSet?>!>, imm/Option, ImmutableSet?>!>?>!|>|(R|/key|).R|SubstitutionOverride, ImmutableSet?>!|>|(Q|ImmutableLinkedHashSet|.R|imm/LinkedHashSet.empty|!|>()) + this@R|/put|.R|SubstitutionOverride, ImmutableSet?>!>, imm/Option, ImmutableSet?>!>?>!|>|(R|/key|).R|SubstitutionOverride, ImmutableSet?>!|>|(Q|ImmutableLinkedHashSet|.R|imm/LinkedHashSet.empty|!|>()) } diff --git a/compiler/fir/cones/src/org/jetbrains/kotlin/fir/types/CompilerConeAttributes.kt b/compiler/fir/cones/src/org/jetbrains/kotlin/fir/types/CompilerConeAttributes.kt index d0dfaaaccd5..c58362c2d60 100644 --- a/compiler/fir/cones/src/org/jetbrains/kotlin/fir/types/CompilerConeAttributes.kt +++ b/compiler/fir/cones/src/org/jetbrains/kotlin/fir/types/CompilerConeAttributes.kt @@ -59,6 +59,18 @@ object CompilerConeAttributes { override fun toString(): String = "@ExtensionFunctionType" } + object FlexibleNullability : ConeAttribute() { + val ANNOTATION_CLASS_ID = ClassId(FqName("kotlin.internal.ir"), Name.identifier("FlexibleNullability")) + + override fun union(other: FlexibleNullability?): FlexibleNullability? = other + override fun intersect(other: FlexibleNullability?): FlexibleNullability? = this + override fun isSubtypeOf(other: FlexibleNullability?): Boolean = true + + override val key: KClass = FlexibleNullability::class + + override fun toString(): String = "@FlexibleNullability" + } + object UnsafeVariance : ConeAttribute() { val ANNOTATION_CLASS_ID = ClassId(FqName("kotlin"), Name.identifier("UnsafeVariance")) @@ -76,6 +88,7 @@ val ConeAttributes.exact: CompilerConeAttributes.Exact? by ConeAttributes.attrib val ConeAttributes.noInfer: CompilerConeAttributes.NoInfer? by ConeAttributes.attributeAccessor() val ConeAttributes.enhancedNullability: CompilerConeAttributes.EnhancedNullability? by ConeAttributes.attributeAccessor() val ConeAttributes.extensionFunctionType: CompilerConeAttributes.ExtensionFunctionType? by ConeAttributes.attributeAccessor() +val ConeAttributes.flexibleNullability: CompilerConeAttributes.FlexibleNullability? by ConeAttributes.attributeAccessor() val ConeAttributes.unsafeVarianceType: CompilerConeAttributes.UnsafeVariance? by ConeAttributes.attributeAccessor() val ConeKotlinType.hasEnhancedNullability: Boolean @@ -83,3 +96,6 @@ val ConeKotlinType.hasEnhancedNullability: Boolean val ConeKotlinType.isExtensionFunctionType: Boolean get() = attributes.extensionFunctionType != null + +val ConeKotlinType.hasFlexibleNullability: Boolean + get() = attributes.flexibleNullability != null diff --git a/compiler/fir/cones/src/org/jetbrains/kotlin/fir/types/ConeAttributes.kt b/compiler/fir/cones/src/org/jetbrains/kotlin/fir/types/ConeAttributes.kt index a7b35cc3a42..411b2b88eb7 100644 --- a/compiler/fir/cones/src/org/jetbrains/kotlin/fir/types/ConeAttributes.kt +++ b/compiler/fir/cones/src/org/jetbrains/kotlin/fir/types/ConeAttributes.kt @@ -34,6 +34,7 @@ class ConeAttributes private constructor(attributes: List>) : A } val Empty: ConeAttributes = ConeAttributes(emptyList()) + val WithFlexibleNullability: ConeAttributes = ConeAttributes(listOf(CompilerConeAttributes.FlexibleNullability)) fun create(attributes: List>): ConeAttributes { return if (attributes.isEmpty()) { @@ -48,8 +49,17 @@ class ConeAttributes private constructor(attributes: List>) : A for (attribute in attributes) { registerComponent(attribute.key, attribute) } + assert(!hasEnhancedNullability || !hasFlexibleNullability) { + "It doesn't make sense to have @EnhancedNullability and @FlexibleNullability at the same time." + } } + val hasEnhancedNullability: Boolean + get() = enhancedNullability != null + + val hasFlexibleNullability: Boolean + get() = flexibleNullability != null + fun union(other: ConeAttributes): ConeAttributes { return perform(other) { this.union(it) } } @@ -58,6 +68,13 @@ class ConeAttributes private constructor(attributes: List>) : A return perform(other) { this.intersect(it) } } + fun intersectUnless(other: ConeAttributes, predicate: (ConeAttributes) -> Boolean): ConeAttributes { + return if (predicate.invoke(this)) + this + else + perform(other) { this.intersect(it) } + } + override fun iterator(): Iterator> { return arrayMap.iterator() } diff --git a/compiler/fir/fir2ir/jvm-backend/src/org/jetbrains/kotlin/fir/backend/jvm/Fir2IrJvmSpecialAnnotationSymbolProvider.kt b/compiler/fir/fir2ir/jvm-backend/src/org/jetbrains/kotlin/fir/backend/jvm/Fir2IrJvmSpecialAnnotationSymbolProvider.kt index f529c0af247..e48f20a0e59 100644 --- a/compiler/fir/fir2ir/jvm-backend/src/org/jetbrains/kotlin/fir/backend/jvm/Fir2IrJvmSpecialAnnotationSymbolProvider.kt +++ b/compiler/fir/fir2ir/jvm-backend/src/org/jetbrains/kotlin/fir/backend/jvm/Fir2IrJvmSpecialAnnotationSymbolProvider.kt @@ -10,11 +10,15 @@ import org.jetbrains.kotlin.descriptors.ClassKind import org.jetbrains.kotlin.fir.backend.Fir2IrSpecialSymbolProvider import org.jetbrains.kotlin.ir.builders.declarations.addConstructor import org.jetbrains.kotlin.ir.builders.declarations.buildClass +import org.jetbrains.kotlin.ir.declarations.IrClass +import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.declarations.impl.IrExternalPackageFragmentImpl +import org.jetbrains.kotlin.ir.descriptors.IrBuiltIns import org.jetbrains.kotlin.ir.symbols.IrClassSymbol import org.jetbrains.kotlin.ir.symbols.impl.DescriptorlessExternalPackageFragmentSymbol import org.jetbrains.kotlin.load.java.JvmAnnotationNames import org.jetbrains.kotlin.name.ClassId +import org.jetbrains.kotlin.name.Name class Fir2IrJvmSpecialAnnotationSymbolProvider : Fir2IrSpecialSymbolProvider() { @@ -25,21 +29,35 @@ class Fir2IrJvmSpecialAnnotationSymbolProvider : Fir2IrSpecialSymbolProvider() { ) } - override fun getClassSymbolById(id: ClassId): IrClassSymbol? { - if (id != ENHANCED_NULLABILITY_ID) return null - return components.irFactory.buildClass { + private val kotlinInternalIrPackage by lazy { + IrExternalPackageFragmentImpl( + DescriptorlessExternalPackageFragmentSymbol(), + FLEXIBLE_NULLABILITY_ID.packageFqName + ) + } + + override fun getClassSymbolById(id: ClassId): IrClassSymbol? = + when (id) { + ENHANCED_NULLABILITY_ID -> id.toIrClass(kotlinJvmInternalPackage).symbol + FLEXIBLE_NULLABILITY_ID -> id.toIrClass(kotlinInternalIrPackage).symbol + else -> null + } + + private fun ClassId.toIrClass(parent: IrDeclarationParent): IrClass = + components.irFactory.buildClass { kind = ClassKind.ANNOTATION_CLASS - name = ENHANCED_NULLABILITY_ID.shortClassName + name = shortClassName }.apply { createImplicitParameterDeclarationWithWrappedDescriptor() - this.parent = kotlinJvmInternalPackage + this.parent = parent addConstructor { isPrimary = true } - }.symbol - } + } companion object { private val ENHANCED_NULLABILITY_ID = ClassId.topLevel(JvmAnnotationNames.ENHANCED_NULLABILITY_ANNOTATION) + private val FLEXIBLE_NULLABILITY_ID = + ClassId.topLevel(IrBuiltIns.KOTLIN_INTERNAL_IR_FQN.child(Name.identifier("FlexibleNullability"))) } } \ No newline at end of file diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrBuiltIns.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrBuiltIns.kt index de380a2fae5..a9cd66793e4 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrBuiltIns.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrBuiltIns.kt @@ -37,6 +37,13 @@ class Fir2IrBuiltIns( internal fun enhancedNullabilityAnnotationConstructorCall(): IrConstructorCall? = enhancedNullabilityAnnotationSymbol?.toConstructorCall() + private val flexibleNullabilityAnnotationSymbol by lazy { + annotationSymbolById(CompilerConeAttributes.FlexibleNullability.ANNOTATION_CLASS_ID) + } + + internal fun flexibleNullabilityAnnotationConstructorCall(): IrConstructorCall? = + flexibleNullabilityAnnotationSymbol?.toConstructorCall() + private fun annotationSymbolById(id: ClassId): IrClassSymbol? = provider?.getClassSymbolById(id) ?: session.firSymbolProvider.getClassLikeSymbolByFqName(id)?.toSymbol( session, classifierStorage, ConversionTypeContext.DEFAULT diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrTypeConverter.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrTypeConverter.kt index 15a5d50738a..9b1b4064bb8 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrTypeConverter.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrTypeConverter.kt @@ -99,6 +99,11 @@ class Fir2IrTypeConverter( typeAnnotations += it } } + if (hasFlexibleNullability) { + builtIns.flexibleNullabilityAnnotationConstructorCall()?.let { + typeAnnotations += it + } + } IrSimpleTypeImpl( irSymbol, !typeContext.definitelyNotNull && this.isMarkedNullable, fullyExpandedType(session).typeArguments.map { it.toIrTypeArgument(typeContext) }, diff --git a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/JavaUtils.kt b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/JavaUtils.kt index 6b25f9326f6..6e570a862a4 100644 --- a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/JavaUtils.kt +++ b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/JavaUtils.kt @@ -197,7 +197,11 @@ private fun ClassId.toConeFlexibleType( typeArgumentsForUpper: Array = typeArguments, attributes: ConeAttributes = ConeAttributes.Empty ) = ConeFlexibleType( - toConeKotlinType(typeArguments, isNullable = false, attributes), + toConeKotlinType( + typeArguments, + isNullable = false, + attributes.intersectUnless(ConeAttributes.WithFlexibleNullability) { it.hasEnhancedNullability } + ), toConeKotlinType(typeArgumentsForUpper, isNullable = true, attributes) ) @@ -233,7 +237,15 @@ private fun JavaClassifierType.toConeKotlinTypeWithoutEnhancement( attributes = attributes ) - return if (isRaw) ConeRawType(lowerBound, upperBound) else ConeFlexibleType(lowerBound, upperBound) + return if (isRaw) + ConeRawType(lowerBound, upperBound) + else + ConeFlexibleType( + lowerBound.withAttributes( + lowerBound.attributes.intersectUnless(ConeAttributes.WithFlexibleNullability) { it.hasEnhancedNullability } + ), + upperBound + ) } private fun computeRawProjection( @@ -303,7 +315,9 @@ private fun getErasedVersionOfFirstUpperBound( if (firstUpperBound.upperBound is ConeTypeParameterType) { // Avoid exponential complexity ConeFlexibleType( - lowerBound, + lowerBound.withAttributes( + lowerBound.attributes.intersectUnless(ConeAttributes.WithFlexibleNullability) { it.hasEnhancedNullability } + ), lowerBound.withNullability(ConeNullability.NULLABLE) ) } else { diff --git a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/javaTypeUtils.kt b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/javaTypeUtils.kt index 37a6135f0d4..d95d1533e57 100644 --- a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/javaTypeUtils.kt +++ b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/javaTypeUtils.kt @@ -88,22 +88,29 @@ private fun ConeKotlinType.enhanceConeKotlinType( ): ConeKotlinType { return when (this) { is ConeFlexibleType -> { + val needsFlexibleNullabilityAttribute = lowerBound.nullability != upperBound.nullability && !lowerBound.hasEnhancedNullability val lowerResult = lowerBound.enhanceInflexibleType( - session, TypeComponentPosition.FLEXIBLE_LOWER, qualifiers, index + session, TypeComponentPosition.FLEXIBLE_LOWER, qualifiers, index, + attributes = if (needsFlexibleNullabilityAttribute) + lowerBound.attributes.intersect(ConeAttributes.WithFlexibleNullability) + else + lowerBound.attributes ) val upperResult = upperBound.enhanceInflexibleType( - session, TypeComponentPosition.FLEXIBLE_UPPER, qualifiers, index + session, TypeComponentPosition.FLEXIBLE_UPPER, qualifiers, index, upperBound.attributes ) when { - lowerResult === lowerBound && upperResult === upperBound -> this + !needsFlexibleNullabilityAttribute && lowerResult === lowerBound && upperResult === upperBound -> this this is ConeRawType -> ConeRawType(lowerResult, upperResult) else -> coneFlexibleOrSimpleType( session, lowerResult, upperResult, isNotNullTypeParameter = qualifiers(index).isNotNullTypeParameter ) } } - is ConeSimpleKotlinType -> enhanceInflexibleType(session, TypeComponentPosition.INFLEXIBLE, qualifiers, index) + is ConeSimpleKotlinType -> enhanceInflexibleType( + session, TypeComponentPosition.INFLEXIBLE, qualifiers, index, attributes + ) else -> this } } @@ -158,7 +165,8 @@ private fun ConeKotlinType.enhanceInflexibleType( session: FirSession, position: TypeComponentPosition, qualifiers: IndexedJavaTypeQualifiers, - index: Int + index: Int, + attributes: ConeAttributes = this.attributes ): ConeKotlinType { require(this !is ConeFlexibleType) { "$this should not be flexible" @@ -198,7 +206,7 @@ private fun ConeKotlinType.enhanceInflexibleType( if (!wereChangesInArgs && originalTag == enhancedTag && enhancedNullability == isNullable) return this - val enhancedType = enhancedTag.constructType(enhancedArguments, enhancedNullability) + val enhancedType = enhancedTag.constructType(enhancedArguments, enhancedNullability, attributes) // TODO: why all of these is needed // val enhancement = if (effectiveQualifiers.isNotNullTypeParameter) NotNullTypeParameter(enhancedType) else enhancedType diff --git a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaClassMembersEnhancementScope.kt b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaClassMembersEnhancementScope.kt index 04887b974fc..87ebbfc6d89 100644 --- a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaClassMembersEnhancementScope.kt +++ b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaClassMembersEnhancementScope.kt @@ -104,7 +104,14 @@ class JavaClassMembersEnhancementScope( emptyArray(), valueParameter.returnTypeRef.isMarkedNullable == true ) if (valueParameter.returnTypeRef.coneType is ConeFlexibleType) { - ConeFlexibleType(type, type.withNullability(ConeNullability.NULLABLE)) + ConeFlexibleType( + type.withAttributes( + type.attributes.intersectUnless(ConeAttributes.WithFlexibleNullability) { + it.hasEnhancedNullability + } + ), + type.withNullability(ConeNullability.NULLABLE) + ) } else { type } @@ -129,8 +136,8 @@ class JavaClassMembersEnhancementScope( newParameterTypes = valueParameters.zip(newParameterTypes).map { (valueParameter, newType) -> newType ?: valueParameter.returnTypeRef.coneType }, - newDispatchReceiverType = dispatchReceiverType, - ) + newDispatchReceiverType = dispatchReceiverType, + ) } return this diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/types/TypeUtils.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/types/TypeUtils.kt index 6812f529e10..9fe8a454905 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/types/TypeUtils.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/types/TypeUtils.kt @@ -105,8 +105,12 @@ fun ConeTypeContext.hasNullableSuperType(type: ConeKotlinType): Boolean { return false } -fun T.withNullability(nullability: ConeNullability, typeContext: ConeInferenceContext? = null): T { - if (this.nullability == nullability) { +fun T.withNullability( + nullability: ConeNullability, + typeContext: ConeInferenceContext? = null, + attributes: ConeAttributes = this.attributes, +): T { + if (this.nullability == nullability && this.attributes == attributes) { return this } @@ -188,6 +192,9 @@ fun FirTypeRef.isUnsafeVarianceType(session: FirSession): Boolean { fun FirTypeRef.hasEnhancedNullability(): Boolean = coneTypeSafe()?.hasEnhancedNullability == true +fun FirTypeRef.hasFlexibleNullability(): Boolean = + coneTypeSafe()?.hasFlexibleNullability == true + fun FirTypeRef.withoutEnhancedNullability(): FirTypeRef { require(this is FirResolvedTypeRef) if (!hasEnhancedNullability()) return this diff --git a/compiler/fir/tree/src/org/jetbrains/kotlin/fir/types/TypeConstructionUtils.kt b/compiler/fir/tree/src/org/jetbrains/kotlin/fir/types/TypeConstructionUtils.kt index 5f4469e30dd..20be3ebc486 100644 --- a/compiler/fir/tree/src/org/jetbrains/kotlin/fir/types/TypeConstructionUtils.kt +++ b/compiler/fir/tree/src/org/jetbrains/kotlin/fir/types/TypeConstructionUtils.kt @@ -15,11 +15,12 @@ import org.jetbrains.kotlin.name.ClassId fun ConeClassifierLookupTag.constructType( typeArguments: Array, - isNullable: Boolean + isNullable: Boolean, + attributes: ConeAttributes = ConeAttributes.Empty ): ConeLookupTagBasedType { return when (this) { - is ConeTypeParameterLookupTag -> ConeTypeParameterTypeImpl(this, isNullable) - is ConeClassLikeLookupTag -> this.constructClassType(typeArguments, isNullable) + is ConeTypeParameterLookupTag -> ConeTypeParameterTypeImpl(this, isNullable, attributes) + is ConeClassLikeLookupTag -> this.constructClassType(typeArguments, isNullable, attributes) else -> error("! ${this::class}") } } diff --git a/compiler/testData/diagnostics/testsWithStdLib/inference/recursiveFlexibleAssertions.fir.kt b/compiler/testData/diagnostics/testsWithStdLib/inference/recursiveFlexibleAssertions.fir.kt index 74d1efb30f0..b47ca4ecb79 100644 --- a/compiler/testData/diagnostics/testsWithStdLib/inference/recursiveFlexibleAssertions.fir.kt +++ b/compiler/testData/diagnostics/testsWithStdLib/inference/recursiveFlexibleAssertions.fir.kt @@ -75,5 +75,5 @@ fun test() { } // TODO: FIR // {AbstractAssert<*, out Any!>! & EnumerableAssert<*, {Comparable<*> & java.io.Serializable!}>!} with unfolded flexible nullability - & EnumerableAssert<*, out kotlin.Comparable & java.io.Serializable..kotlin.Comparable? & java.io.Serializable?>..AbstractAssert<*, out ERROR CLASS: CST(ERROR CLASS: Unexpected classifier: null, kotlin/String..ERROR CLASS: CST(ERROR CLASS: Unexpected classifier: null, kotlin/String?!>? & EnumerableAssert<*, out kotlin.Comparable & java.io.Serializable..kotlin.Comparable? & java.io.Serializable?>?")!>assertion + & EnumerableAssert<*, out kotlin.Comparable & java.io.Serializable..kotlin.Comparable? & java.io.Serializable?>..AbstractAssert<*, out ERROR CLASS: CST(ERROR CLASS: Unexpected classifier: null, @FlexibleNullability kotlin/String..ERROR CLASS: CST(ERROR CLASS: Unexpected classifier: null, @FlexibleNullability kotlin/String?!>? & EnumerableAssert<*, out kotlin.Comparable & java.io.Serializable..kotlin.Comparable? & java.io.Serializable?>?")!>assertion } diff --git a/compiler/testData/ir/irText/classes/delegatedImplementationOfJavaInterface.fir.txt b/compiler/testData/ir/irText/classes/delegatedImplementationOfJavaInterface.fir.txt index 47f3d55636d..d415e70da09 100644 --- a/compiler/testData/ir/irText/classes/delegatedImplementationOfJavaInterface.fir.txt +++ b/compiler/testData/ir/irText/classes/delegatedImplementationOfJavaInterface.fir.txt @@ -30,16 +30,16 @@ FILE fqName: fileName:/delegatedImplementationOfJavaInterface.kt $this: GET_FIELD 'FIELD DELEGATE name:<$$delegate_0> type:.J visibility:local [final]' type=.J origin=null receiver: GET_VAR ': .Test declared in .Test.takeNotNull' type=.Test origin=null x: GET_VAR 'x: @[EnhancedNullability] kotlin.String declared in .Test.takeNotNull' type=@[EnhancedNullability] kotlin.String origin=null - FUN DELEGATED_MEMBER name:takeNullable visibility:public modality:OPEN <> ($this:.Test, x:kotlin.String?) returnType:kotlin.Unit + FUN DELEGATED_MEMBER name:takeNullable visibility:public modality:OPEN <> ($this:.Test, x:@[FlexibleNullability] kotlin.String?) returnType:kotlin.Unit overridden: - public abstract fun takeNullable (x: kotlin.String?): kotlin.Unit declared in .J + public abstract fun takeNullable (x: @[FlexibleNullability] kotlin.String?): kotlin.Unit declared in .J $this: VALUE_PARAMETER name: type:.Test - VALUE_PARAMETER name:x index:0 type:kotlin.String? + VALUE_PARAMETER name:x index:0 type:@[FlexibleNullability] kotlin.String? BLOCK_BODY - CALL 'public abstract fun takeNullable (x: kotlin.String?): kotlin.Unit declared in .J' type=kotlin.Unit origin=null + CALL 'public abstract fun takeNullable (x: @[FlexibleNullability] kotlin.String?): kotlin.Unit declared in .J' type=kotlin.Unit origin=null $this: GET_FIELD 'FIELD DELEGATE name:<$$delegate_0> type:.J visibility:local [final]' type=.J origin=null receiver: GET_VAR ': .Test declared in .Test.takeNullable' type=.Test origin=null - x: GET_VAR 'x: kotlin.String? declared in .Test.takeNullable' type=kotlin.String? origin=null + x: GET_VAR 'x: @[FlexibleNullability] kotlin.String? declared in .Test.takeNullable' type=@[FlexibleNullability] kotlin.String? origin=null FUN DELEGATED_MEMBER name:takeFlexible visibility:public modality:OPEN <> ($this:.Test, x:kotlin.String?) returnType:kotlin.Unit overridden: public abstract fun takeFlexible (x: kotlin.String?): kotlin.Unit declared in .J @@ -59,13 +59,13 @@ FILE fqName: fileName:/delegatedImplementationOfJavaInterface.kt CALL 'public abstract fun returnNotNull (): @[EnhancedNullability] kotlin.String declared in .J' type=@[EnhancedNullability] kotlin.String origin=null $this: GET_FIELD 'FIELD DELEGATE name:<$$delegate_0> type:.J visibility:local [final]' type=.J origin=null receiver: GET_VAR ': .Test declared in .Test.returnNotNull' type=.Test origin=null - FUN DELEGATED_MEMBER name:returnNullable visibility:public modality:OPEN <> ($this:.Test) returnType:kotlin.String? + FUN DELEGATED_MEMBER name:returnNullable visibility:public modality:OPEN <> ($this:.Test) returnType:@[FlexibleNullability] kotlin.String? overridden: - public abstract fun returnNullable (): kotlin.String? declared in .J + public abstract fun returnNullable (): @[FlexibleNullability] kotlin.String? declared in .J $this: VALUE_PARAMETER name: type:.Test BLOCK_BODY - RETURN type=kotlin.Nothing from='public open fun returnNullable (): kotlin.String? declared in .Test' - CALL 'public abstract fun returnNullable (): kotlin.String? declared in .J' type=kotlin.String? origin=null + RETURN type=kotlin.Nothing from='public open fun returnNullable (): @[FlexibleNullability] kotlin.String? declared in .Test' + CALL 'public abstract fun returnNullable (): @[FlexibleNullability] kotlin.String? declared in .J' type=@[FlexibleNullability] kotlin.String? origin=null $this: GET_FIELD 'FIELD DELEGATE name:<$$delegate_0> type:.J visibility:local [final]' type=.J origin=null receiver: GET_VAR ': .Test declared in .Test.returnNullable' type=.Test origin=null FUN DELEGATED_MEMBER name:returnsFlexible visibility:public modality:OPEN <> ($this:.Test) returnType:kotlin.String? diff --git a/compiler/testData/ir/irText/classes/implicitNotNullOnDelegatedImplementation.fir.txt b/compiler/testData/ir/irText/classes/implicitNotNullOnDelegatedImplementation.fir.txt index cb48aec5b08..cca274e6190 100644 --- a/compiler/testData/ir/irText/classes/implicitNotNullOnDelegatedImplementation.fir.txt +++ b/compiler/testData/ir/irText/classes/implicitNotNullOnDelegatedImplementation.fir.txt @@ -22,9 +22,9 @@ FILE fqName: fileName:/implicitNotNullOnDelegatedImplementation.kt BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () [primary] declared in .JFoo' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:K1 modality:FINAL visibility:public superTypes:[.JFoo]' - FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN <> ($this:.JFoo) returnType:kotlin.String [fake_override] + FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN <> ($this:.JFoo) returnType:@[FlexibleNullability] kotlin.String [fake_override] overridden: - public open fun foo (): kotlin.String declared in .JFoo + public open fun foo (): @[FlexibleNullability] kotlin.String declared in .JFoo $this: VALUE_PARAMETER name: type:.JFoo FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: @@ -45,13 +45,13 @@ FILE fqName: fileName:/implicitNotNullOnDelegatedImplementation.kt BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () [primary] declared in .JFoo' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:K2 modality:FINAL visibility:public superTypes:[.JFoo]' - FUN name:foo visibility:public modality:FINAL <> ($this:.K2) returnType:kotlin.String + FUN name:foo visibility:public modality:FINAL <> ($this:.K2) returnType:@[FlexibleNullability] kotlin.String overridden: - public open fun foo (): kotlin.String declared in .JFoo + public open fun foo (): @[FlexibleNullability] kotlin.String declared in .JFoo $this: VALUE_PARAMETER name: type:.K2 BLOCK_BODY - RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.String declared in .K2' - CALL 'public open fun foo (): kotlin.String declared in .JFoo' superQualifier='CLASS IR_EXTERNAL_JAVA_DECLARATION_STUB CLASS name:JFoo modality:OPEN visibility:public superTypes:[kotlin.Any; .IFoo]' type=kotlin.String origin=null + RETURN type=kotlin.Nothing from='public final fun foo (): @[FlexibleNullability] kotlin.String declared in .K2' + CALL 'public open fun foo (): @[FlexibleNullability] kotlin.String declared in .JFoo' superQualifier='CLASS IR_EXTERNAL_JAVA_DECLARATION_STUB CLASS name:JFoo modality:OPEN visibility:public superTypes:[kotlin.Any; .IFoo]' type=@[FlexibleNullability] kotlin.String origin=null $this: GET_VAR ': .K2 declared in .K2.foo' type=.K2 origin=null FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: diff --git a/compiler/testData/ir/irText/classes/kt43217.fir.txt b/compiler/testData/ir/irText/classes/kt43217.fir.txt index aa03e783643..7a16b0895ec 100644 --- a/compiler/testData/ir/irText/classes/kt43217.fir.txt +++ b/compiler/testData/ir/irText/classes/kt43217.fir.txt @@ -17,7 +17,7 @@ FILE fqName: fileName:/kt43217.kt INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name: modality:FINAL visibility:local superTypes:[.DoubleExpression]' FUN name:get visibility:public modality:FINAL <> ($this:.A.b.) returnType:kotlin.Double [operator] overridden: - public abstract fun get (): T of .ObservableValue [operator] declared in .ObservableValue + public abstract fun get (): @[FlexibleNullability] T of .ObservableValue [operator] declared in .ObservableValue $this: VALUE_PARAMETER name: type:.A.b. BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun get (): kotlin.Double [operator] declared in .A.b.' @@ -69,7 +69,7 @@ FILE fqName: fileName:/kt43217.kt INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[.DoubleExpression]' FUN name:get visibility:public modality:FINAL <> ($this:.C) returnType:kotlin.Double [operator] overridden: - public abstract fun get (): T of .ObservableValue [operator] declared in .ObservableValue + public abstract fun get (): @[FlexibleNullability] T of .ObservableValue [operator] declared in .ObservableValue $this: VALUE_PARAMETER name: type:.C BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun get (): kotlin.Double [operator] declared in .C' diff --git a/compiler/testData/ir/irText/firProblems/AbstractMutableMap.fir.txt b/compiler/testData/ir/irText/firProblems/AbstractMutableMap.fir.txt index 4b18121f51d..88468b10bc9 100644 --- a/compiler/testData/ir/irText/firProblems/AbstractMutableMap.fir.txt +++ b/compiler/testData/ir/irText/firProblems/AbstractMutableMap.fir.txt @@ -104,7 +104,7 @@ FILE fqName: fileName:/AbstractMutableMap.kt FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any - public open fun equals (p0: kotlin.Any?): kotlin.Boolean [operator] declared in java.util.AbstractMap + public open fun equals (p0: @[FlexibleNullability] kotlin.Any?): kotlin.Boolean [operator] declared in java.util.AbstractMap $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] @@ -115,7 +115,7 @@ FILE fqName: fileName:/AbstractMutableMap.kt FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in kotlin.Any - public open fun toString (): kotlin.String declared in java.util.AbstractMap + public open fun toString (): @[FlexibleNullability] kotlin.String declared in java.util.AbstractMap $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:keySet visibility:public modality:OPEN <> ($this:java.util.AbstractMap) returnType:kotlin.collections.Set.MyMap?>? [fake_override] overridden: diff --git a/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.fir.txt b/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.fir.txt index 25a0cb0dd7c..f774624f25c 100644 --- a/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.fir.txt +++ b/compiler/testData/ir/irText/firProblems/ClashResolutionDescriptor.fir.txt @@ -152,7 +152,7 @@ FILE fqName: fileName:/ClashResolutionDescriptor.kt BLOCK type=kotlin.collections.Collection<.ComponentDescriptor> origin=ELVIS VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:kotlin.collections.Collection<.ComponentDescriptor>? [val] TYPE_OP type=kotlin.collections.Collection<.ComponentDescriptor>? origin=SAFE_CAST typeOperand=kotlin.collections.Collection<.ComponentDescriptor> - CALL 'public open fun get (p0: K of java.util.HashMap?): V of java.util.HashMap? [operator] declared in java.util.HashMap' type=kotlin.Any? origin=null + CALL 'public open fun get (p0: K of java.util.HashMap?): @[FlexibleNullability] V of java.util.HashMap? [operator] declared in java.util.HashMap' type=kotlin.Any? origin=null $this: CALL 'private final fun (): java.util.HashMap declared in ' type=java.util.HashMap origin=GET_PROPERTY p0: CALL 'public final fun (): java.lang.Class.PlatformExtensionsClashResolver> declared in .PlatformExtensionsClashResolver' type=java.lang.Class.PlatformSpecificExtension.PlatformSpecificExtension.PlatformSpecificExtension.PlatformSpecificExtension.PlatformSpecificExtension>>>>> origin=GET_PROPERTY $this: GET_VAR 'val resolver: .PlatformExtensionsClashResolver<*> [val] declared in .resolveClashesIfAny' type=.PlatformExtensionsClashResolver<*> origin=null diff --git a/compiler/testData/ir/irText/firProblems/MultiList.fir.txt b/compiler/testData/ir/irText/firProblems/MultiList.fir.txt index 607bced201f..7dcc48ba3f5 100644 --- a/compiler/testData/ir/irText/firProblems/MultiList.fir.txt +++ b/compiler/testData/ir/irText/firProblems/MultiList.fir.txt @@ -206,10 +206,10 @@ FILE fqName: fileName:/MultiList.kt public abstract fun isEmpty (): kotlin.Boolean declared in kotlin.collections.List public open fun isEmpty (): kotlin.Boolean declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:kotlin.collections.List - FUN FAKE_OVERRIDE name:iterator visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:kotlin.collections.MutableIterator<.Some.SomeList>?> [fake_override,operator] + FUN FAKE_OVERRIDE name:iterator visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:@[FlexibleNullability] kotlin.collections.MutableIterator<.Some.SomeList>?> [fake_override,operator] overridden: public abstract fun iterator (): kotlin.collections.Iterator<.Some.MyList>> [fake_override,operator] declared in .MyList - public open fun iterator (): kotlin.collections.MutableIterator [operator] declared in java.util.ArrayList + public open fun iterator (): @[FlexibleNullability] kotlin.collections.MutableIterator [operator] declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList FUN FAKE_OVERRIDE name:lastIndexOf visibility:public modality:OPEN <> ($this:kotlin.collections.List, element:.Some.SomeList>) returnType:kotlin.Int [fake_override] overridden: @@ -217,21 +217,21 @@ FILE fqName: fileName:/MultiList.kt public open fun lastIndexOf (p0: E of java.util.ArrayList?): kotlin.Int declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:kotlin.collections.List VALUE_PARAMETER name:element index:0 type:.Some.SomeList> - FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:kotlin.collections.MutableListIterator<.Some.SomeList>?> [fake_override] + FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:@[FlexibleNullability] kotlin.collections.MutableListIterator<.Some.SomeList>?> [fake_override] overridden: public abstract fun listIterator (): kotlin.collections.ListIterator<.Some.MyList>> [fake_override] declared in .MyList - public open fun listIterator (): kotlin.collections.MutableListIterator declared in java.util.ArrayList + public open fun listIterator (): @[FlexibleNullability] kotlin.collections.MutableListIterator declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList - FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int) returnType:kotlin.collections.MutableListIterator<.Some.SomeList>?> [fake_override] + FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int) returnType:@[FlexibleNullability] kotlin.collections.MutableListIterator<.Some.SomeList>?> [fake_override] overridden: public abstract fun listIterator (index: kotlin.Int): kotlin.collections.ListIterator<.Some.MyList>> [fake_override] declared in .MyList - public open fun listIterator (p0: kotlin.Int): kotlin.collections.MutableListIterator declared in java.util.ArrayList + public open fun listIterator (p0: kotlin.Int): @[FlexibleNullability] kotlin.collections.MutableListIterator declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList VALUE_PARAMETER name:p0 index:0 type:kotlin.Int - FUN FAKE_OVERRIDE name:subList visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int, p1:kotlin.Int) returnType:kotlin.collections.MutableList<.Some.SomeList>?> [fake_override] + FUN FAKE_OVERRIDE name:subList visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int, p1:kotlin.Int) returnType:@[FlexibleNullability] kotlin.collections.MutableList<.Some.SomeList>?> [fake_override] overridden: public abstract fun subList (fromIndex: kotlin.Int, toIndex: kotlin.Int): kotlin.collections.List<.Some.MyList>> [fake_override] declared in .MyList - public open fun subList (p0: kotlin.Int, p1: kotlin.Int): kotlin.collections.MutableList declared in java.util.ArrayList + public open fun subList (p0: kotlin.Int, p1: kotlin.Int): @[FlexibleNullability] kotlin.collections.MutableList declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList VALUE_PARAMETER name:p0 index:0 type:kotlin.Int VALUE_PARAMETER name:p1 index:1 type:kotlin.Int @@ -249,7 +249,7 @@ FILE fqName: fileName:/MultiList.kt FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any - public open fun equals (p0: kotlin.Any?): kotlin.Boolean [operator] declared in java.util.ArrayList + public open fun equals (p0: @[FlexibleNullability] kotlin.Any?): kotlin.Boolean [operator] declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] @@ -260,7 +260,7 @@ FILE fqName: fileName:/MultiList.kt FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in kotlin.Any - public open fun toString (): kotlin.String declared in java.util.ArrayList + public open fun toString (): @[FlexibleNullability] kotlin.String declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:elementData visibility:public/*package*/ modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int) returnType:.Some.SomeList>? [fake_override] overridden: @@ -276,9 +276,9 @@ FILE fqName: fileName:/MultiList.kt public open fun ensureCapacity (p0: kotlin.Int): kotlin.Unit declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList VALUE_PARAMETER name:p0 index:0 type:kotlin.Int - FUN FAKE_OVERRIDE name:clone visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:kotlin.Any [fake_override] + FUN FAKE_OVERRIDE name:clone visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:@[FlexibleNullability] kotlin.Any [fake_override] overridden: - public open fun clone (): kotlin.Any declared in java.util.ArrayList + public open fun clone (): @[FlexibleNullability] kotlin.Any declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList FUN FAKE_OVERRIDE name:toArray visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:kotlin.Array? [fake_override] overridden: @@ -321,17 +321,17 @@ FILE fqName: fileName:/MultiList.kt overridden: public open fun clear (): kotlin.Unit declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList - FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.collections.Collection.Some.SomeList>?>) returnType:kotlin.Boolean [fake_override] + FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:@[FlexibleNullability] kotlin.collections.Collection.Some.SomeList>?>) returnType:kotlin.Boolean [fake_override] overridden: - public open fun addAll (p0: kotlin.collections.Collection): kotlin.Boolean declared in java.util.ArrayList + public open fun addAll (p0: @[FlexibleNullability] kotlin.collections.Collection): kotlin.Boolean declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList - VALUE_PARAMETER name:p0 index:0 type:kotlin.collections.Collection.Some.SomeList>?> - FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int, p1:kotlin.collections.Collection.Some.SomeList>?>) returnType:kotlin.Boolean [fake_override] + VALUE_PARAMETER name:p0 index:0 type:@[FlexibleNullability] kotlin.collections.Collection.Some.SomeList>?> + FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int, p1:@[FlexibleNullability] kotlin.collections.Collection.Some.SomeList>?>) returnType:kotlin.Boolean [fake_override] overridden: - public open fun addAll (p0: kotlin.Int, p1: kotlin.collections.Collection): kotlin.Boolean declared in java.util.ArrayList + public open fun addAll (p0: kotlin.Int, p1: @[FlexibleNullability] kotlin.collections.Collection): kotlin.Boolean declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList VALUE_PARAMETER name:p0 index:0 type:kotlin.Int - VALUE_PARAMETER name:p1 index:1 type:kotlin.collections.Collection.Some.SomeList>?> + VALUE_PARAMETER name:p1 index:1 type:@[FlexibleNullability] kotlin.collections.Collection.Some.SomeList>?> FUN FAKE_OVERRIDE name:removeRange visibility:protected/*protected and package*/ modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int, p1:kotlin.Int) returnType:kotlin.Unit [fake_override] overridden: protected/*protected and package*/ open fun removeRange (p0: kotlin.Int, p1: kotlin.Int): kotlin.Unit declared in java.util.ArrayList @@ -354,21 +354,21 @@ FILE fqName: fileName:/MultiList.kt public open fun forEach (p0: java.util.function.Consumer?): kotlin.Unit declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.lang.Iterable VALUE_PARAMETER name:p0 index:0 type:java.util.function.Consumer.Some.SomeList>?>? - FUN FAKE_OVERRIDE name:spliterator visibility:public modality:OPEN <> ($this:java.util.Collection) returnType:java.util.Spliterator<.Some.SomeList>?> [fake_override] + FUN FAKE_OVERRIDE name:spliterator visibility:public modality:OPEN <> ($this:java.util.Collection) returnType:@[FlexibleNullability] java.util.Spliterator<.Some.SomeList>?> [fake_override] overridden: - public open fun spliterator (): java.util.Spliterator<.Some.MyList>?> declared in .MyList - public open fun spliterator (): java.util.Spliterator declared in java.util.ArrayList + public open fun spliterator (): @[FlexibleNullability] java.util.Spliterator<.Some.MyList>?> declared in .MyList + public open fun spliterator (): @[FlexibleNullability] java.util.Spliterator declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.Collection FUN FAKE_OVERRIDE name:removeIf visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:java.util.function.Predicate.Some.SomeList>?>?) returnType:kotlin.Boolean [fake_override] overridden: public open fun removeIf (p0: java.util.function.Predicate?): kotlin.Boolean declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList VALUE_PARAMETER name:p0 index:0 type:java.util.function.Predicate.Some.SomeList>?>? - FUN FAKE_OVERRIDE name:replaceAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:java.util.function.UnaryOperator<.Some.SomeList>?>) returnType:kotlin.Unit [fake_override] + FUN FAKE_OVERRIDE name:replaceAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:@[FlexibleNullability] java.util.function.UnaryOperator<.Some.SomeList>?>) returnType:kotlin.Unit [fake_override] overridden: - public open fun replaceAll (p0: java.util.function.UnaryOperator): kotlin.Unit declared in java.util.ArrayList + public open fun replaceAll (p0: @[FlexibleNullability] java.util.function.UnaryOperator): kotlin.Unit declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList - VALUE_PARAMETER name:p0 index:0 type:java.util.function.UnaryOperator<.Some.SomeList>?> + VALUE_PARAMETER name:p0 index:0 type:@[FlexibleNullability] java.util.function.UnaryOperator<.Some.SomeList>?> FUN FAKE_OVERRIDE name:sort visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:java.util.Comparator.Some.SomeList>?>?) returnType:kotlin.Unit [fake_override] overridden: public open fun sort (p0: java.util.Comparator?): kotlin.Unit declared in java.util.ArrayList @@ -411,27 +411,27 @@ FILE fqName: fileName:/MultiList.kt public abstract fun isEmpty (): kotlin.Boolean declared in kotlin.collections.List public open fun isEmpty (): kotlin.Boolean declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:kotlin.collections.List - FUN FAKE_OVERRIDE name:iterator visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:kotlin.collections.MutableIterator<.Some?> [fake_override,operator] + FUN FAKE_OVERRIDE name:iterator visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:@[FlexibleNullability] kotlin.collections.MutableIterator<.Some?> [fake_override,operator] overridden: - public open fun iterator (): kotlin.collections.MutableIterator [operator] declared in java.util.ArrayList + public open fun iterator (): @[FlexibleNullability] kotlin.collections.MutableIterator [operator] declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList FUN FAKE_OVERRIDE name:lastIndexOf visibility:public modality:OPEN <> ($this:kotlin.collections.List, element:.Some) returnType:kotlin.Int [fake_override] overridden: public abstract fun lastIndexOf (element: E of kotlin.collections.List): kotlin.Int declared in kotlin.collections.List $this: VALUE_PARAMETER name: type:kotlin.collections.List VALUE_PARAMETER name:element index:0 type:.Some - FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:kotlin.collections.MutableListIterator<.Some?> [fake_override] + FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:@[FlexibleNullability] kotlin.collections.MutableListIterator<.Some?> [fake_override] overridden: - public open fun listIterator (): kotlin.collections.MutableListIterator declared in java.util.ArrayList + public open fun listIterator (): @[FlexibleNullability] kotlin.collections.MutableListIterator declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList - FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int) returnType:kotlin.collections.MutableListIterator<.Some?> [fake_override] + FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int) returnType:@[FlexibleNullability] kotlin.collections.MutableListIterator<.Some?> [fake_override] overridden: - public open fun listIterator (p0: kotlin.Int): kotlin.collections.MutableListIterator declared in java.util.ArrayList + public open fun listIterator (p0: kotlin.Int): @[FlexibleNullability] kotlin.collections.MutableListIterator declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList VALUE_PARAMETER name:p0 index:0 type:kotlin.Int - FUN FAKE_OVERRIDE name:subList visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int, p1:kotlin.Int) returnType:kotlin.collections.MutableList<.Some?> [fake_override] + FUN FAKE_OVERRIDE name:subList visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int, p1:kotlin.Int) returnType:@[FlexibleNullability] kotlin.collections.MutableList<.Some?> [fake_override] overridden: - public open fun subList (p0: kotlin.Int, p1: kotlin.Int): kotlin.collections.MutableList declared in java.util.ArrayList + public open fun subList (p0: kotlin.Int, p1: kotlin.Int): @[FlexibleNullability] kotlin.collections.MutableList declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList VALUE_PARAMETER name:p0 index:0 type:kotlin.Int VALUE_PARAMETER name:p1 index:1 type:kotlin.Int @@ -449,7 +449,7 @@ FILE fqName: fileName:/MultiList.kt FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any - public open fun equals (p0: kotlin.Any?): kotlin.Boolean [operator] declared in java.util.ArrayList + public open fun equals (p0: @[FlexibleNullability] kotlin.Any?): kotlin.Boolean [operator] declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] @@ -460,7 +460,7 @@ FILE fqName: fileName:/MultiList.kt FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in kotlin.Any - public open fun toString (): kotlin.String declared in java.util.ArrayList + public open fun toString (): @[FlexibleNullability] kotlin.String declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:elementData visibility:public/*package*/ modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int) returnType:.Some? [fake_override] overridden: @@ -476,9 +476,9 @@ FILE fqName: fileName:/MultiList.kt public open fun ensureCapacity (p0: kotlin.Int): kotlin.Unit declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList VALUE_PARAMETER name:p0 index:0 type:kotlin.Int - FUN FAKE_OVERRIDE name:clone visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:kotlin.Any [fake_override] + FUN FAKE_OVERRIDE name:clone visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:@[FlexibleNullability] kotlin.Any [fake_override] overridden: - public open fun clone (): kotlin.Any declared in java.util.ArrayList + public open fun clone (): @[FlexibleNullability] kotlin.Any declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList FUN FAKE_OVERRIDE name:toArray visibility:public modality:OPEN <> ($this:java.util.ArrayList) returnType:kotlin.Array? [fake_override] overridden: @@ -521,17 +521,17 @@ FILE fqName: fileName:/MultiList.kt overridden: public open fun clear (): kotlin.Unit declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList - FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.collections.Collection.Some?>) returnType:kotlin.Boolean [fake_override] + FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:@[FlexibleNullability] kotlin.collections.Collection.Some?>) returnType:kotlin.Boolean [fake_override] overridden: - public open fun addAll (p0: kotlin.collections.Collection): kotlin.Boolean declared in java.util.ArrayList + public open fun addAll (p0: @[FlexibleNullability] kotlin.collections.Collection): kotlin.Boolean declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList - VALUE_PARAMETER name:p0 index:0 type:kotlin.collections.Collection.Some?> - FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int, p1:kotlin.collections.Collection.Some?>) returnType:kotlin.Boolean [fake_override] + VALUE_PARAMETER name:p0 index:0 type:@[FlexibleNullability] kotlin.collections.Collection.Some?> + FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int, p1:@[FlexibleNullability] kotlin.collections.Collection.Some?>) returnType:kotlin.Boolean [fake_override] overridden: - public open fun addAll (p0: kotlin.Int, p1: kotlin.collections.Collection): kotlin.Boolean declared in java.util.ArrayList + public open fun addAll (p0: kotlin.Int, p1: @[FlexibleNullability] kotlin.collections.Collection): kotlin.Boolean declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList VALUE_PARAMETER name:p0 index:0 type:kotlin.Int - VALUE_PARAMETER name:p1 index:1 type:kotlin.collections.Collection.Some?> + VALUE_PARAMETER name:p1 index:1 type:@[FlexibleNullability] kotlin.collections.Collection.Some?> FUN FAKE_OVERRIDE name:removeRange visibility:protected/*protected and package*/ modality:OPEN <> ($this:java.util.ArrayList, p0:kotlin.Int, p1:kotlin.Int) returnType:kotlin.Unit [fake_override] overridden: protected/*protected and package*/ open fun removeRange (p0: kotlin.Int, p1: kotlin.Int): kotlin.Unit declared in java.util.ArrayList @@ -553,20 +553,20 @@ FILE fqName: fileName:/MultiList.kt public open fun forEach (p0: java.util.function.Consumer?): kotlin.Unit declared in java.lang.Iterable $this: VALUE_PARAMETER name: type:java.lang.Iterable VALUE_PARAMETER name:p0 index:0 type:java.util.function.Consumer.Some?>? - FUN FAKE_OVERRIDE name:spliterator visibility:public modality:OPEN <> ($this:java.util.Collection) returnType:java.util.Spliterator<.Some?> [fake_override] + FUN FAKE_OVERRIDE name:spliterator visibility:public modality:OPEN <> ($this:java.util.Collection) returnType:@[FlexibleNullability] java.util.Spliterator<.Some?> [fake_override] overridden: - public open fun spliterator (): java.util.Spliterator declared in java.util.Collection + public open fun spliterator (): @[FlexibleNullability] java.util.Spliterator declared in java.util.Collection $this: VALUE_PARAMETER name: type:java.util.Collection FUN FAKE_OVERRIDE name:removeIf visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:java.util.function.Predicate.Some?>?) returnType:kotlin.Boolean [fake_override] overridden: public open fun removeIf (p0: java.util.function.Predicate?): kotlin.Boolean declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList VALUE_PARAMETER name:p0 index:0 type:java.util.function.Predicate.Some?>? - FUN FAKE_OVERRIDE name:replaceAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:java.util.function.UnaryOperator<.Some?>) returnType:kotlin.Unit [fake_override] + FUN FAKE_OVERRIDE name:replaceAll visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:@[FlexibleNullability] java.util.function.UnaryOperator<.Some?>) returnType:kotlin.Unit [fake_override] overridden: - public open fun replaceAll (p0: java.util.function.UnaryOperator): kotlin.Unit declared in java.util.ArrayList + public open fun replaceAll (p0: @[FlexibleNullability] java.util.function.UnaryOperator): kotlin.Unit declared in java.util.ArrayList $this: VALUE_PARAMETER name: type:java.util.ArrayList - VALUE_PARAMETER name:p0 index:0 type:java.util.function.UnaryOperator<.Some?> + VALUE_PARAMETER name:p0 index:0 type:@[FlexibleNullability] java.util.function.UnaryOperator<.Some?> FUN FAKE_OVERRIDE name:sort visibility:public modality:OPEN <> ($this:java.util.ArrayList, p0:java.util.Comparator.Some?>?) returnType:kotlin.Unit [fake_override] overridden: public open fun sort (p0: java.util.Comparator?): kotlin.Unit declared in java.util.ArrayList diff --git a/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.fir.txt b/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.fir.txt index 0bb032b2b47..a5d704ba546 100644 --- a/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.fir.txt +++ b/compiler/testData/ir/irText/firProblems/coercionToUnitForNestedWhen.fir.txt @@ -61,7 +61,7 @@ FILE fqName: fileName:/coercionToUnitForNestedWhen.kt then: CONST Boolean type=kotlin.Boolean value=false body: BLOCK type=kotlin.Unit origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit - WHEN type=java.lang.StringBuilder? origin=IF + WHEN type=@[FlexibleNullability] java.lang.StringBuilder? origin=IF BRANCH if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ arg0: TYPE_OP type=kotlin.Char origin=IMPLICIT_CAST typeOperand=kotlin.Char diff --git a/compiler/testData/ir/irText/regressions/typeParametersInImplicitCast.fir.txt b/compiler/testData/ir/irText/regressions/typeParametersInImplicitCast.fir.txt index 5dd0ad9a6f8..a21eafe3e68 100644 --- a/compiler/testData/ir/irText/regressions/typeParametersInImplicitCast.fir.txt +++ b/compiler/testData/ir/irText/regressions/typeParametersInImplicitCast.fir.txt @@ -14,6 +14,6 @@ FILE fqName: fileName:/typeParametersInImplicitCast.kt BLOCK_BODY RETURN type=kotlin.Nothing from='local final fun (it: kotlin.collections.List.problematic>): kotlin.collections.Iterable.problematic> declared in .problematic' TYPE_OP type=kotlin.collections.List.problematic?> origin=IMPLICIT_NOTNULL typeOperand=kotlin.collections.List.problematic?> - CALL 'public/*package*/ open fun id (v: kotlin.collections.List.ListId.id?>?): kotlin.collections.List.ListId.id?> declared in .ListId' type=kotlin.collections.List.problematic?> origin=null + CALL 'public/*package*/ open fun id (v: kotlin.collections.List.ListId.id?>?): @[EnhancedNullability] kotlin.collections.List.ListId.id?> declared in .ListId' type=@[EnhancedNullability] kotlin.collections.List.problematic?> origin=null : T of .problematic? v: GET_VAR 'it: kotlin.collections.List.problematic> declared in .problematic.' type=kotlin.collections.List.problematic> origin=null diff --git a/compiler/testData/ir/irText/stubs/builtinMap.fir.txt b/compiler/testData/ir/irText/stubs/builtinMap.fir.txt index 26801e40c21..0216d629a41 100644 --- a/compiler/testData/ir/irText/stubs/builtinMap.fir.txt +++ b/compiler/testData/ir/irText/stubs/builtinMap.fir.txt @@ -28,7 +28,7 @@ FILE fqName: fileName:/builtinMap.kt BLOCK_BODY RETURN type=kotlin.Nothing from='local final fun (): kotlin.Unit declared in .plus' TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit - CALL 'public open fun put (p0: K of java.util.LinkedHashMap?, p1: V of java.util.LinkedHashMap?): V of java.util.LinkedHashMap? declared in java.util.LinkedHashMap' type=V1 of .plus? origin=null + CALL 'public open fun put (p0: @[FlexibleNullability] K of java.util.LinkedHashMap?, p1: @[FlexibleNullability] V of java.util.LinkedHashMap?): @[FlexibleNullability] V of java.util.LinkedHashMap? declared in java.util.LinkedHashMap' type=V1 of .plus? origin=null $this: GET_VAR ': java.util.LinkedHashMap.plus?, V1 of .plus?> declared in .plus.' type=java.util.LinkedHashMap.plus?, V1 of .plus?> origin=null p0: CALL 'public final fun (): A of kotlin.Pair declared in kotlin.Pair' type=K1 of .plus origin=GET_PROPERTY $this: GET_VAR 'pair: kotlin.Pair.plus, V1 of .plus> declared in .plus' type=kotlin.Pair.plus, V1 of .plus> origin=null diff --git a/compiler/testData/ir/irText/stubs/javaEnum.fir.txt b/compiler/testData/ir/irText/stubs/javaEnum.fir.txt index 2d2b83d27cb..7463a993c3c 100644 --- a/compiler/testData/ir/irText/stubs/javaEnum.fir.txt +++ b/compiler/testData/ir/irText/stubs/javaEnum.fir.txt @@ -1,10 +1,10 @@ FILE fqName: fileName:/javaEnum.kt PROPERTY name:test visibility:public modality:FINAL [val] - FIELD PROPERTY_BACKING_FIELD name:test type:.JEnum visibility:private [final,static] + FIELD PROPERTY_BACKING_FIELD name:test type:@[FlexibleNullability] .JEnum visibility:private [final,static] EXPRESSION_BODY - GET_ENUM 'ENUM_ENTRY IR_EXTERNAL_JAVA_DECLARATION_STUB name:ONE' type=.JEnum - FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:.JEnum + GET_ENUM 'ENUM_ENTRY IR_EXTERNAL_JAVA_DECLARATION_STUB name:ONE' type=@[FlexibleNullability] .JEnum + FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> () returnType:@[FlexibleNullability] .JEnum correspondingProperty: PROPERTY name:test visibility:public modality:FINAL [val] BLOCK_BODY - RETURN type=kotlin.Nothing from='public final fun (): .JEnum declared in ' - GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test type:.JEnum visibility:private [final,static]' type=.JEnum origin=null + RETURN type=kotlin.Nothing from='public final fun (): @[FlexibleNullability] .JEnum declared in ' + GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test type:@[FlexibleNullability] .JEnum visibility:private [final,static]' type=@[FlexibleNullability] .JEnum origin=null diff --git a/compiler/testData/ir/irText/types/asOnPlatformType.fir.txt b/compiler/testData/ir/irText/types/asOnPlatformType.fir.txt index 97aeb566a43..1b9feb3cc04 100644 --- a/compiler/testData/ir/irText/types/asOnPlatformType.fir.txt +++ b/compiler/testData/ir/irText/types/asOnPlatformType.fir.txt @@ -14,11 +14,11 @@ FILE fqName: fileName:/asOnPlatformType.kt : kotlin.String? $receiver: GET_VAR 'val nonnullStr: kotlin.String? [val] declared in .test' type=kotlin.String? origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit - CALL 'public final fun fooN (): T of .fooN? [inline] declared in ' type=kotlin.String? origin=null + CALL 'public final fun fooN (): T of .fooN? [inline] declared in ' type=@[FlexibleNullability] kotlin.String? origin=null : kotlin.String? $receiver: GET_VAR 'val nullStr: kotlin.String? [val] declared in .test' type=kotlin.String? origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit - CALL 'public final fun fooN (): T of .fooN? [inline] declared in ' type=kotlin.String? origin=null + CALL 'public final fun fooN (): T of .fooN? [inline] declared in ' type=@[FlexibleNullability] kotlin.String? origin=null : kotlin.String? $receiver: GET_VAR 'val nonnullStr: kotlin.String? [val] declared in .test' type=kotlin.String? origin=null FUN name:foo visibility:public modality:FINAL ($receiver:T of .foo) returnType:T of .foo [inline] diff --git a/compiler/testData/ir/irText/types/nullChecks/enhancedNullabilityInDestructuringAssignment.fir.txt b/compiler/testData/ir/irText/types/nullChecks/enhancedNullabilityInDestructuringAssignment.fir.txt index dddbf8dfcb7..7ac01e935d9 100644 --- a/compiler/testData/ir/irText/types/nullChecks/enhancedNullabilityInDestructuringAssignment.fir.txt +++ b/compiler/testData/ir/irText/types/nullChecks/enhancedNullabilityInDestructuringAssignment.fir.txt @@ -131,42 +131,43 @@ FILE fqName: fileName:/enhancedNullabilityInDestructuringAssignment.kt y: GET_VAR 'val y: kotlin.Int [val] declared in .test1' type=kotlin.Int origin=null FUN name:test2 visibility:public modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY - VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:.Q? [val] - CALL 'public open fun notNullComponents (): .Q? declared in .J' type=.Q? origin=null - VAR name:x type:kotlin.String [val] - CALL 'public final fun component1 (): T1 of .Q [operator] declared in .Q' type=kotlin.String origin=null - $this: GET_VAR 'val tmp_1: .Q? [val] declared in .test2' type=.Q? origin=null + VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:.Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? [val] + CALL 'public open fun notNullComponents (): .Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? declared in .J' type=.Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? origin=null + VAR name:x type:@[FlexibleNullability] kotlin.String [val] + CALL 'public final fun component1 (): T1 of .Q [operator] declared in .Q' type=@[FlexibleNullability] kotlin.String origin=null + $this: GET_VAR 'val tmp_1: .Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? [val] declared in .test2' type=.Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? origin=null VAR name:y type:kotlin.String? [val] CALL 'public final fun component2 (): T2 of .Q [operator] declared in .Q' type=kotlin.String? origin=null - $this: GET_VAR 'val tmp_1: .Q? [val] declared in .test2' type=.Q? origin=null + $this: GET_VAR 'val tmp_1: .Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? [val] declared in .test2' type=.Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? origin=null CALL 'public final fun use (x: kotlin.Any, y: kotlin.Any): kotlin.Unit declared in ' type=kotlin.Unit origin=null - x: GET_VAR 'val x: kotlin.String [val] declared in .test2' type=kotlin.String origin=null + x: GET_VAR 'val x: @[FlexibleNullability] kotlin.String [val] declared in .test2' type=@[FlexibleNullability] kotlin.String origin=null y: GET_VAR 'val y: kotlin.String? [val] declared in .test2' type=kotlin.String? origin=null FUN name:test2Desugared visibility:public modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY - VAR name:tmp type:.Q? [val] - CALL 'public open fun notNullComponents (): .Q? declared in .J' type=.Q? origin=null - VAR name:x type:kotlin.String [val] - CALL 'public final fun component1 (): T1 of .Q [operator] declared in .Q' type=kotlin.String origin=null - $this: GET_VAR 'val tmp: .Q? [val] declared in .test2Desugared' type=.Q? origin=null + VAR name:tmp type:.Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? [val] + CALL 'public open fun notNullComponents (): .Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? declared in .J' type=.Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? origin=null + VAR name:x type:@[FlexibleNullability] kotlin.String [val] + CALL 'public final fun component1 (): T1 of .Q [operator] declared in .Q' type=@[FlexibleNullability] kotlin.String origin=null + $this: GET_VAR 'val tmp: .Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? [val] declared in .test2Desugared' type=.Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? origin=null VAR name:y type:kotlin.String? [val] CALL 'public final fun component2 (): T2 of .Q [operator] declared in .Q' type=kotlin.String? origin=null - $this: GET_VAR 'val tmp: .Q? [val] declared in .test2Desugared' type=.Q? origin=null + $this: GET_VAR 'val tmp: .Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? [val] declared in .test2Desugared' type=.Q<@[FlexibleNullability] kotlin.String, kotlin.String?>? origin=null CALL 'public final fun use (x: kotlin.Any, y: kotlin.Any): kotlin.Unit declared in ' type=kotlin.Unit origin=null - x: GET_VAR 'val x: kotlin.String [val] declared in .test2Desugared' type=kotlin.String origin=null + x: GET_VAR 'val x: @[FlexibleNullability] kotlin.String [val] declared in .test2Desugared' type=@[FlexibleNullability] kotlin.String origin=null y: GET_VAR 'val y: kotlin.String? [val] declared in .test2Desugared' type=kotlin.String? origin=null FUN name:test3 visibility:public modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY - VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:.Q [val] - CALL 'public open fun notNullQAndComponents (): .Q declared in .J' type=.Q origin=null - VAR name:x type:kotlin.String [val] - CALL 'public final fun component1 (): T1 of .Q [operator] declared in .Q' type=kotlin.String origin=null - $this: GET_VAR 'val tmp_2: .Q [val] declared in .test3' type=.Q origin=null + VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:.Q<@[FlexibleNullability] kotlin.String, kotlin.String?> [val] + TYPE_OP type=.Q<@[FlexibleNullability] kotlin.String, kotlin.String?> origin=IMPLICIT_NOTNULL typeOperand=.Q<@[FlexibleNullability] kotlin.String, kotlin.String?> + CALL 'public open fun notNullQAndComponents (): @[EnhancedNullability] .Q<@[FlexibleNullability] kotlin.String, kotlin.String?> declared in .J' type=@[EnhancedNullability] .Q<@[FlexibleNullability] kotlin.String, kotlin.String?> origin=null + VAR name:x type:@[FlexibleNullability] kotlin.String [val] + CALL 'public final fun component1 (): T1 of .Q [operator] declared in .Q' type=@[FlexibleNullability] kotlin.String origin=null + $this: GET_VAR 'val tmp_2: .Q<@[FlexibleNullability] kotlin.String, kotlin.String?> [val] declared in .test3' type=.Q<@[FlexibleNullability] kotlin.String, kotlin.String?> origin=null VAR name:y type:kotlin.String? [val] CALL 'public final fun component2 (): T2 of .Q [operator] declared in .Q' type=kotlin.String? origin=null - $this: GET_VAR 'val tmp_2: .Q [val] declared in .test3' type=.Q origin=null + $this: GET_VAR 'val tmp_2: .Q<@[FlexibleNullability] kotlin.String, kotlin.String?> [val] declared in .test3' type=.Q<@[FlexibleNullability] kotlin.String, kotlin.String?> origin=null CALL 'public final fun use (x: kotlin.Any, y: kotlin.Any): kotlin.Unit declared in ' type=kotlin.Unit origin=null - x: GET_VAR 'val x: kotlin.String [val] declared in .test3' type=kotlin.String origin=null + x: GET_VAR 'val x: @[FlexibleNullability] kotlin.String [val] declared in .test3' type=@[FlexibleNullability] kotlin.String origin=null y: GET_VAR 'val y: kotlin.String? [val] declared in .test3' type=kotlin.String? origin=null FUN name:test4 visibility:public modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY diff --git a/compiler/testData/loadJava/compiledJava/ArrayInGenericArguments.fir.txt b/compiler/testData/loadJava/compiledJava/ArrayInGenericArguments.fir.txt index cd7c38e68a5..5ad1da0e20c 100644 --- a/compiler/testData/loadJava/compiledJava/ArrayInGenericArguments.fir.txt +++ b/compiler/testData/loadJava/compiledJava/ArrayInGenericArguments.fir.txt @@ -1,9 +1,9 @@ public open class ArrayInGenericArguments : R|kotlin/Any| { - public final static field X: R|ft!>, kotlin/Array!>?>!>, ArrayInGenericArguments.DataKey!>, kotlin/Array!>?>!>?>!| + public final static field X: R|ft<@FlexibleNullability ArrayInGenericArguments.DataKey!>, kotlin/Array!>?>!>, ArrayInGenericArguments.DataKey!>, kotlin/Array!>?>!>?>!| - public final static field Y: R|ft!>, ArrayInGenericArguments.DataKey!>?>!| + public final static field Y: R|ft<@FlexibleNullability ArrayInGenericArguments.DataKey!>, ArrayInGenericArguments.DataKey!>?>!| - public final static field Z: R|ft!>, kotlin/Array!>?>!>, ArrayInGenericArguments.DataKey!>, kotlin/Array!>?>!>?>!| + public final static field Z: R|ft<@FlexibleNullability ArrayInGenericArguments.DataKey!>, kotlin/Array!>?>!>, ArrayInGenericArguments.DataKey!>, kotlin/Array!>?>!>?>!| public constructor(): R|ArrayInGenericArguments| diff --git a/compiler/testData/loadJava/compiledJava/ArrayTypeVariance.fir.txt b/compiler/testData/loadJava/compiledJava/ArrayTypeVariance.fir.txt index 7aaf6f43345..389ccc232f5 100644 --- a/compiler/testData/loadJava/compiledJava/ArrayTypeVariance.fir.txt +++ b/compiler/testData/loadJava/compiledJava/ArrayTypeVariance.fir.txt @@ -1,5 +1,5 @@ public final class ArrayTypeVariance : R|kotlin/Any| { - public final fun toArray(p0: R|ft!>, kotlin/Array!>?>!|): R|ft!>, kotlin/Array!>?>!| + public final fun toArray(p0: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!|): R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!| public constructor(): R|test/ArrayTypeVariance| diff --git a/compiler/testData/loadJava/compiledJava/ClassWithTypePExtendsIterableP.fir.txt b/compiler/testData/loadJava/compiledJava/ClassWithTypePExtendsIterableP.fir.txt index 8ae833f484d..cebda2aeb12 100644 --- a/compiler/testData/loadJava/compiledJava/ClassWithTypePExtendsIterableP.fir.txt +++ b/compiler/testData/loadJava/compiledJava/ClassWithTypePExtendsIterableP.fir.txt @@ -1,4 +1,4 @@ -public abstract class ClassWithTypePExtendsIterableP

!|> : R|kotlin/Any|, R|kotlin/collections/MutableIterable!>| { +public abstract class ClassWithTypePExtendsIterableP

!|> : R|kotlin/Any|, R|kotlin/collections/MutableIterable!>| { public constructor

!|>(): R|test/ClassWithTypePExtendsIterableP

| } diff --git a/compiler/testData/loadJava/compiledJava/ClassWithTypePP.fir.txt b/compiler/testData/loadJava/compiledJava/ClassWithTypePP.fir.txt index a273382fd72..402b7b4ee7e 100644 --- a/compiler/testData/loadJava/compiledJava/ClassWithTypePP.fir.txt +++ b/compiler/testData/loadJava/compiledJava/ClassWithTypePP.fir.txt @@ -1,4 +1,4 @@ -public final class ClassWithTypePP

!|, Q : R|ft!|> : R|kotlin/Any| { - public constructor

!|, Q : R|ft!|>(): R|test/ClassWithTypePP| +public final class ClassWithTypePP

!|, Q : R|ft<@FlexibleNullability P, P?>!|> : R|kotlin/Any| { + public constructor

!|, Q : R|ft<@FlexibleNullability P, P?>!|>(): R|test/ClassWithTypePP| } diff --git a/compiler/testData/loadJava/compiledJava/ClassWithTypePRefNext.fir.txt b/compiler/testData/loadJava/compiledJava/ClassWithTypePRefNext.fir.txt index 305d940481d..62a0efb6202 100644 --- a/compiler/testData/loadJava/compiledJava/ClassWithTypePRefNext.fir.txt +++ b/compiler/testData/loadJava/compiledJava/ClassWithTypePRefNext.fir.txt @@ -1,4 +1,4 @@ -public open class ClassWithTypePRefNext!>, kotlin/collections/Iterable!>?>!|, P : R|ft!|> : R|kotlin/Any| { - public constructor!>, kotlin/collections/Iterable!>?>!|, P : R|ft!|>(): R|test/ClassWithTypePRefNext| +public open class ClassWithTypePRefNext!>, kotlin/collections/Iterable!>?>!|, P : R|ft!|> : R|kotlin/Any| { + public constructor!>, kotlin/collections/Iterable!>?>!|, P : R|ft!|>(): R|test/ClassWithTypePRefNext| } diff --git a/compiler/testData/loadJava/compiledJava/ClassWithTypePRefSelf.fir.txt b/compiler/testData/loadJava/compiledJava/ClassWithTypePRefSelf.fir.txt index a39791bd955..6935b2c07da 100644 --- a/compiler/testData/loadJava/compiledJava/ClassWithTypePRefSelf.fir.txt +++ b/compiler/testData/loadJava/compiledJava/ClassWithTypePRefSelf.fir.txt @@ -1,4 +1,4 @@ -public final class ClassWithTypePRefSelf

!>, kotlin/Enum!>?>!|> : R|kotlin/Any| { - public constructor

!>, kotlin/Enum!>?>!|>(): R|test/ClassWithTypePRefSelf

| +public final class ClassWithTypePRefSelf

!>, kotlin/Enum!>?>!|> : R|kotlin/Any| { + public constructor

!>, kotlin/Enum!>?>!|>(): R|test/ClassWithTypePRefSelf

| } diff --git a/compiler/testData/loadJava/compiledJava/ClassWithTypePRefSelfAndClass.fir.txt b/compiler/testData/loadJava/compiledJava/ClassWithTypePRefSelfAndClass.fir.txt index b0cbb2e56a2..12cf27aeb79 100644 --- a/compiler/testData/loadJava/compiledJava/ClassWithTypePRefSelfAndClass.fir.txt +++ b/compiler/testData/loadJava/compiledJava/ClassWithTypePRefSelfAndClass.fir.txt @@ -1,4 +1,4 @@ -public final class ClassWithTypePRefSelfAndClass

!>, test/ClassWithTypePRefSelfAndClass!>?>!|> : R|kotlin/Any| { - public constructor

!>, test/ClassWithTypePRefSelfAndClass!>?>!|>(): R|test/ClassWithTypePRefSelfAndClass

| +public final class ClassWithTypePRefSelfAndClass

!>, test/ClassWithTypePRefSelfAndClass!>?>!|> : R|kotlin/Any| { + public constructor

!>, test/ClassWithTypePRefSelfAndClass!>?>!|>(): R|test/ClassWithTypePRefSelfAndClass

| } diff --git a/compiler/testData/loadJava/compiledJava/FieldOfArrayType.fir.txt b/compiler/testData/loadJava/compiledJava/FieldOfArrayType.fir.txt index 9099f9e09d0..acbf867d40d 100644 --- a/compiler/testData/loadJava/compiledJava/FieldOfArrayType.fir.txt +++ b/compiler/testData/loadJava/compiledJava/FieldOfArrayType.fir.txt @@ -1,5 +1,5 @@ public open class FieldOfArrayType : R|kotlin/Any| { - public open field files: R|ft!>, kotlin/Array!>?>!| + public open field files: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!| public constructor(): R|test/FieldOfArrayType| diff --git a/compiler/testData/loadJava/compiledJava/InnerClassTypeMultipleGeneric.fir.txt b/compiler/testData/loadJava/compiledJava/InnerClassTypeMultipleGeneric.fir.txt index b293bd0aaa1..dd3edda3592 100644 --- a/compiler/testData/loadJava/compiledJava/InnerClassTypeMultipleGeneric.fir.txt +++ b/compiler/testData/loadJava/compiledJava/InnerClassTypeMultipleGeneric.fir.txt @@ -1,5 +1,5 @@ public open class InnerClassTypeMultipleGeneric : R|kotlin/Any| { - public open fun staticType(): R|ft!, ft!, ft!>, test/InnerClassTypeMultipleGeneric.Outer.Inner!, ft!, ft!>?>!| + public open fun staticType(): R|ft<@FlexibleNullability test/InnerClassTypeMultipleGeneric.Outer.Inner!, ft<@FlexibleNullability kotlin/Char, kotlin/Char?>!, ft<@FlexibleNullability kotlin/Boolean, kotlin/Boolean?>!>, test/InnerClassTypeMultipleGeneric.Outer.Inner!, ft<@FlexibleNullability kotlin/Char, kotlin/Char?>!, ft<@FlexibleNullability kotlin/Boolean, kotlin/Boolean?>!>?>!| public constructor(): R|test/InnerClassTypeMultipleGeneric| diff --git a/compiler/testData/loadJava/compiledJava/IntrinsicCompanionObject.fir.txt b/compiler/testData/loadJava/compiledJava/IntrinsicCompanionObject.fir.txt index aa254173084..0f1a4a066bf 100644 --- a/compiler/testData/loadJava/compiledJava/IntrinsicCompanionObject.fir.txt +++ b/compiler/testData/loadJava/compiledJava/IntrinsicCompanionObject.fir.txt @@ -1,12 +1,12 @@ public abstract interface IntrinsicCompanionObject : R|kotlin/Any| { - public abstract fun testInt(i: R|ft!|): R|kotlin/Unit| + public abstract fun testInt(i: R|ft<@FlexibleNullability kotlin/Int.Companion, kotlin/Int.Companion?>!|): R|kotlin/Unit| - public abstract fun testChar(c: R|ft!|): R|kotlin/Unit| + public abstract fun testChar(c: R|ft<@FlexibleNullability kotlin/Char.Companion, kotlin/Char.Companion?>!|): R|kotlin/Unit| - public abstract fun testString(s: R|ft!|): R|kotlin/Unit| + public abstract fun testString(s: R|ft<@FlexibleNullability kotlin/String.Companion, kotlin/String.Companion?>!|): R|kotlin/Unit| - public abstract fun testBoolean(b: R|ft!|): R|kotlin/Unit| + public abstract fun testBoolean(b: R|ft<@FlexibleNullability kotlin/Boolean.Companion, kotlin/Boolean.Companion?>!|): R|kotlin/Unit| - public abstract fun testEnum(e: R|ft!|): R|kotlin/Unit| + public abstract fun testEnum(e: R|ft<@FlexibleNullability kotlin/Enum.Companion, kotlin/Enum.Companion?>!|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/MethodTypePOneUpperBound.fir.txt b/compiler/testData/loadJava/compiledJava/MethodTypePOneUpperBound.fir.txt index 7172f1d7804..def0cea1bb0 100644 --- a/compiler/testData/loadJava/compiledJava/MethodTypePOneUpperBound.fir.txt +++ b/compiler/testData/loadJava/compiledJava/MethodTypePOneUpperBound.fir.txt @@ -1,5 +1,5 @@ public open class MethodTypePOneUpperBound : R|kotlin/Any| { - public open fun !|> bar(): R|kotlin/Unit| + public open fun !|> bar(): R|kotlin/Unit| public constructor(): R|test/MethodTypePOneUpperBound| diff --git a/compiler/testData/loadJava/compiledJava/MethodTypePTwoUpperBounds.fir.txt b/compiler/testData/loadJava/compiledJava/MethodTypePTwoUpperBounds.fir.txt index bc1714d64ba..6e5a9521de4 100644 --- a/compiler/testData/loadJava/compiledJava/MethodTypePTwoUpperBounds.fir.txt +++ b/compiler/testData/loadJava/compiledJava/MethodTypePTwoUpperBounds.fir.txt @@ -1,5 +1,5 @@ public open class MethodTypePTwoUpperBounds : R|kotlin/Any| { - public open fun !|, R|ft!|> foo(): R|kotlin/Unit| + public open fun !|, R|ft<@FlexibleNullability java/lang/Runnable, java/lang/Runnable?>!|> foo(): R|kotlin/Unit| public constructor(): R|test/MethodTypePTwoUpperBounds| diff --git a/compiler/testData/loadJava/compiledJava/MethodWithTypePP.fir.txt b/compiler/testData/loadJava/compiledJava/MethodWithTypePP.fir.txt index bf6866d07bc..9b9059e04d7 100644 --- a/compiler/testData/loadJava/compiledJava/MethodWithTypePP.fir.txt +++ b/compiler/testData/loadJava/compiledJava/MethodWithTypePP.fir.txt @@ -1,5 +1,5 @@ public final class MethodWithTypePP : R|kotlin/Any| { - public final fun

!|, Q : R|ft!|> f(): R|kotlin/Unit| + public final fun

!|, Q : R|ft<@FlexibleNullability P, P?>!|> f(): R|kotlin/Unit| public constructor(): R|test/MethodWithTypePP| diff --git a/compiler/testData/loadJava/compiledJava/MethodWithTypePRefClassP.fir.txt b/compiler/testData/loadJava/compiledJava/MethodWithTypePRefClassP.fir.txt index 2472e98c2d2..88ab7b83570 100644 --- a/compiler/testData/loadJava/compiledJava/MethodWithTypePRefClassP.fir.txt +++ b/compiler/testData/loadJava/compiledJava/MethodWithTypePRefClassP.fir.txt @@ -1,5 +1,5 @@ public open class MethodWithTypePRefClassP

!|> : R|kotlin/Any| { - public final fun !|> f(): R|kotlin/Unit| + public final fun !|> f(): R|kotlin/Unit| public constructor

!|>(): R|test/MethodWithTypePRefClassP

| diff --git a/compiler/testData/loadJava/compiledJava/MethosWithPRefTP.fir.txt b/compiler/testData/loadJava/compiledJava/MethosWithPRefTP.fir.txt index 2ccb6cc4d3b..08fae4a412c 100644 --- a/compiler/testData/loadJava/compiledJava/MethosWithPRefTP.fir.txt +++ b/compiler/testData/loadJava/compiledJava/MethosWithPRefTP.fir.txt @@ -1,5 +1,5 @@ public final class MethosWithPRefTP : R|kotlin/Any| { - public final fun

!|> f(p: R|ft!|): R|kotlin/Unit| + public final fun

!|> f(p: R|ft<@FlexibleNullability P, P?>!|): R|kotlin/Unit| public constructor(): R|test/MethosWithPRefTP| diff --git a/compiler/testData/loadJava/compiledJava/MyException.fir.txt b/compiler/testData/loadJava/compiledJava/MyException.fir.txt index d0b5ce80202..55a5f954c56 100644 --- a/compiler/testData/loadJava/compiledJava/MyException.fir.txt +++ b/compiler/testData/loadJava/compiledJava/MyException.fir.txt @@ -1,4 +1,4 @@ public open class MyException : R|kotlin/Any| { - public constructor(message: R|ft!|, cause: R|ft!|): R|test/MyException| + public constructor(message: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, cause: R|ft<@FlexibleNullability kotlin/Throwable, kotlin/Throwable?>!|): R|test/MyException| } diff --git a/compiler/testData/loadJava/compiledJava/PackageLocalVisibility.fir.txt b/compiler/testData/loadJava/compiledJava/PackageLocalVisibility.fir.txt index 54e2eb9adfe..ca7ba99a04a 100644 --- a/compiler/testData/loadJava/compiledJava/PackageLocalVisibility.fir.txt +++ b/compiler/testData/loadJava/compiledJava/PackageLocalVisibility.fir.txt @@ -1,11 +1,11 @@ public open class Frame : R|kotlin/Any| { - public/*package*/ open field accessibleContext: R|ft!| + public/*package*/ open field accessibleContext: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public constructor(): R|awt/Frame| } public open class JFrame : R|awt/Frame| { - protected/*protected and package*/ open field accessibleContext: R|ft!| + protected/*protected and package*/ open field accessibleContext: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public constructor(): R|test/JFrame| diff --git a/compiler/testData/loadJava/compiledJava/RemoveRedundantProjectionKind.fir.txt b/compiler/testData/loadJava/compiledJava/RemoveRedundantProjectionKind.fir.txt index 286e71ec700..3c864540e8a 100644 --- a/compiler/testData/loadJava/compiledJava/RemoveRedundantProjectionKind.fir.txt +++ b/compiler/testData/loadJava/compiledJava/RemoveRedundantProjectionKind.fir.txt @@ -1,6 +1,6 @@ public abstract interface RemoveRedundantProjectionKind : R|kotlin/Any| { - public abstract fun f(collection: R|ft!>, kotlin/collections/Collection!>?>!|): R|kotlin/Unit| + public abstract fun f(collection: R|ft<@FlexibleNullability kotlin/collections/MutableCollection!>, kotlin/collections/Collection!>?>!|): R|kotlin/Unit| - public abstract fun f(comparator: R|ft!>, kotlin/Comparable!>?>!|): R|kotlin/Unit| + public abstract fun f(comparator: R|ft<@FlexibleNullability kotlin/Comparable!>, kotlin/Comparable!>?>!|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/TopLevel$Class.fir.txt b/compiler/testData/loadJava/compiledJava/TopLevel$Class.fir.txt index a0bbe00d88e..bb807cf56b3 100644 --- a/compiler/testData/loadJava/compiledJava/TopLevel$Class.fir.txt +++ b/compiler/testData/loadJava/compiledJava/TopLevel$Class.fir.txt @@ -1,5 +1,5 @@ public open class TopLevel$Class : R|kotlin/Any| { - public open fun foo(other: R|ft!|): R|kotlin/Unit| + public open fun foo(other: R|ft<@FlexibleNullability test/TopLevel$Class, test/TopLevel$Class?>!|): R|kotlin/Unit| public constructor(): R|test/TopLevel$Class| diff --git a/compiler/testData/loadJava/compiledJava/UnboundWildcard.fir.txt b/compiler/testData/loadJava/compiledJava/UnboundWildcard.fir.txt index 2007a47d6de..c73f1d7f8aa 100644 --- a/compiler/testData/loadJava/compiledJava/UnboundWildcard.fir.txt +++ b/compiler/testData/loadJava/compiledJava/UnboundWildcard.fir.txt @@ -1,7 +1,7 @@ public final class UnboundWildcard : R|kotlin/Any| { - public final fun foo(): R|ft, test/UnboundWildcard.MyClass<*>?>!| + public final fun foo(): R|ft<@FlexibleNullability test/UnboundWildcard.MyClass<*>, test/UnboundWildcard.MyClass<*>?>!| - public final fun collection(): R|ft, kotlin/collections/Collection<*>?>!| + public final fun collection(): R|ft<@FlexibleNullability kotlin/collections/MutableCollection<*>, kotlin/collections/Collection<*>?>!| public constructor(): R|test/UnboundWildcard| diff --git a/compiler/testData/loadJava/compiledJava/WildcardBounds.fir.txt b/compiler/testData/loadJava/compiledJava/WildcardBounds.fir.txt index 2dd00af5101..f82c9171814 100644 --- a/compiler/testData/loadJava/compiledJava/WildcardBounds.fir.txt +++ b/compiler/testData/loadJava/compiledJava/WildcardBounds.fir.txt @@ -1,5 +1,5 @@ public open class WildcardBounds : R|kotlin/Any| { - public/*package*/ open fun foo(x: R|ft!>, test/WildcardBounds.A!>?>!|, y: R|ft!>, test/WildcardBounds.A!>?>!|): R|kotlin/Unit| + public/*package*/ open fun foo(x: R|ft<@FlexibleNullability test/WildcardBounds.A!>, test/WildcardBounds.A!>?>!|, y: R|ft<@FlexibleNullability test/WildcardBounds.A!>, test/WildcardBounds.A!>?>!|): R|kotlin/Unit| public constructor(): R|test/WildcardBounds| diff --git a/compiler/testData/loadJava/compiledJava/annotations/AnnotatedEnumEntry.fir.txt b/compiler/testData/loadJava/compiledJava/annotations/AnnotatedEnumEntry.fir.txt index d8ec5fbc8df..cbd13f04d73 100644 --- a/compiler/testData/loadJava/compiledJava/annotations/AnnotatedEnumEntry.fir.txt +++ b/compiler/testData/loadJava/compiledJava/annotations/AnnotatedEnumEntry.fir.txt @@ -1,7 +1,7 @@ -public final enum class AnnotatedEnumEntry : R|kotlin/Enum!>| { - @R|test/AnnotatedEnumEntry.Anno|(String(a)) public final static enum entry E1: R|test/AnnotatedEnumEntry| - @R|test/AnnotatedEnumEntry.Anno|(String(b)) @R|test/AnnotatedEnumEntry.Anno2|() public final static enum entry E2: R|test/AnnotatedEnumEntry| - public final static enum entry E3: R|test/AnnotatedEnumEntry| +public final enum class AnnotatedEnumEntry : R|kotlin/Enum!>| { + @R|test/AnnotatedEnumEntry.Anno|(String(a)) public final static enum entry E1: R|@FlexibleNullability test/AnnotatedEnumEntry| + @R|test/AnnotatedEnumEntry.Anno|(String(b)) @R|test/AnnotatedEnumEntry.Anno2|() public final static enum entry E2: R|@FlexibleNullability test/AnnotatedEnumEntry| + public final static enum entry E3: R|@FlexibleNullability test/AnnotatedEnumEntry| public final static fun values(): R|kotlin/Array| { } diff --git a/compiler/testData/loadJava/compiledJava/annotations/AnnotatedTypeInFun.fir.txt b/compiler/testData/loadJava/compiledJava/annotations/AnnotatedTypeInFun.fir.txt index 7302d1a8925..49927052b8f 100644 --- a/compiler/testData/loadJava/compiledJava/annotations/AnnotatedTypeInFun.fir.txt +++ b/compiler/testData/loadJava/compiledJava/annotations/AnnotatedTypeInFun.fir.txt @@ -1,5 +1,5 @@ public/*package*/ open class AnnotatedTypeInFun : R|kotlin/Any| { - public/*package*/ open fun foo(@R|test/AnnotatedTypeInFun.Anno|(String(a)) a: @R|test/AnnotatedTypeInFun.Anno|(String(a)) R|ft!|, @R|test/AnnotatedTypeInFun.Anno|(String(b)) b: @R|test/AnnotatedTypeInFun.Anno|(String(b)) R|ft!|): R|kotlin/Unit| + public/*package*/ open fun foo(@R|test/AnnotatedTypeInFun.Anno|(String(a)) a: @R|test/AnnotatedTypeInFun.Anno|(String(a)) R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, @R|test/AnnotatedTypeInFun.Anno|(String(b)) b: @R|test/AnnotatedTypeInFun.Anno|(String(b)) R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| public/*package*/ constructor(): R|test/AnnotatedTypeInFun| diff --git a/compiler/testData/loadJava/compiledJava/annotations/AnnotatedValueParameter.fir.txt b/compiler/testData/loadJava/compiledJava/annotations/AnnotatedValueParameter.fir.txt index a5daeeac779..d9c5c9d06a0 100644 --- a/compiler/testData/loadJava/compiledJava/annotations/AnnotatedValueParameter.fir.txt +++ b/compiler/testData/loadJava/compiledJava/annotations/AnnotatedValueParameter.fir.txt @@ -1,5 +1,5 @@ public open class AnnotatedValueParameter : R|kotlin/Any| { - public open fun f(@R|test/AnnotatedValueParameter.Anno|(String(non-empty)) parameter: R|ft!>, kotlin/collections/List!>?>!|): R|kotlin/Unit| + public open fun f(@R|test/AnnotatedValueParameter.Anno|(String(non-empty)) parameter: R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!|): R|kotlin/Unit| public constructor(): R|test/AnnotatedValueParameter| diff --git a/compiler/testData/loadJava/compiledJava/annotations/EnumConstructorParameter.fir.txt b/compiler/testData/loadJava/compiledJava/annotations/EnumConstructorParameter.fir.txt index 7c9938b9448..3d0ea98b0a4 100644 --- a/compiler/testData/loadJava/compiledJava/annotations/EnumConstructorParameter.fir.txt +++ b/compiler/testData/loadJava/compiledJava/annotations/EnumConstructorParameter.fir.txt @@ -1,6 +1,6 @@ -public final enum class EnumConstructorParameter : R|kotlin/Enum!>| { - public final static enum entry INSTANCE: R|test/EnumConstructorParameter| - private constructor(@R|test/EnumConstructorParameter.Anno|(String(string)) s: R|ft!|): R|test/EnumConstructorParameter| +public final enum class EnumConstructorParameter : R|kotlin/Enum!>| { + public final static enum entry INSTANCE: R|@FlexibleNullability test/EnumConstructorParameter| + private constructor(@R|test/EnumConstructorParameter.Anno|(String(string)) s: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|test/EnumConstructorParameter| private constructor(x: R|kotlin/Int|): R|test/EnumConstructorParameter| diff --git a/compiler/testData/loadJava/compiledJava/annotations/JavaDocDeprecated.fir.txt b/compiler/testData/loadJava/compiledJava/annotations/JavaDocDeprecated.fir.txt index 9d77acf371f..06e0c7eca84 100644 --- a/compiler/testData/loadJava/compiledJava/annotations/JavaDocDeprecated.fir.txt +++ b/compiler/testData/loadJava/compiledJava/annotations/JavaDocDeprecated.fir.txt @@ -1,5 +1,5 @@ public open class JavaDocDeprecated : R|kotlin/Any| { - public open fun getFoo(text: R|ft!|): R|ft!| + public open fun getFoo(text: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public constructor(): R|test/JavaDocDeprecated| diff --git a/compiler/testData/loadJava/compiledJava/annotations/StringConstantInParam.fir.txt b/compiler/testData/loadJava/compiledJava/annotations/StringConstantInParam.fir.txt index 582e76ca52c..c7690d6416c 100644 --- a/compiler/testData/loadJava/compiledJava/annotations/StringConstantInParam.fir.txt +++ b/compiler/testData/loadJava/compiledJava/annotations/StringConstantInParam.fir.txt @@ -1,4 +1,4 @@ public abstract interface StringConstantInParam : R|kotlin/Any| { - public final static field HEL: R|ft!| = String(hel) + public final static field HEL: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = String(hel) } diff --git a/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericDeep.fir.txt b/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericDeep.fir.txt index acc451ca9f7..b4f95dbad8e 100644 --- a/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericDeep.fir.txt +++ b/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericDeep.fir.txt @@ -1,4 +1,4 @@ public open class ConstructorGenericDeep : R|kotlin/Any| { - public constructor

!|>(cl: R|ft!>, java/lang/Class!>?>!|): R|test/ConstructorGenericDeep| + public constructor

!|>(cl: R|ft<@FlexibleNullability java/lang/Class!>, java/lang/Class!>?>!|): R|test/ConstructorGenericDeep| } diff --git a/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericSimple.fir.txt b/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericSimple.fir.txt index 1062303dde0..3d647b85564 100644 --- a/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericSimple.fir.txt +++ b/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericSimple.fir.txt @@ -1,4 +1,4 @@ public open class ConstructorGenericSimple : R|kotlin/Any| { - public constructor

!|>(p: R|ft!|): R|test/ConstructorGenericSimple| + public constructor

!|>(p: R|ft<@FlexibleNullability P, P?>!|): R|test/ConstructorGenericSimple| } diff --git a/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericUpperBound.fir.txt b/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericUpperBound.fir.txt index c1a21961491..334c34e4dde 100644 --- a/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericUpperBound.fir.txt +++ b/compiler/testData/loadJava/compiledJava/constructor/ConstructorGenericUpperBound.fir.txt @@ -1,4 +1,4 @@ public open class ConstructorGenericUpperBound : R|kotlin/Any| { - public constructor

!|>(p: R|ft!|): R|test/ConstructorGenericUpperBound| + public constructor

!|>(p: R|ft<@FlexibleNullability P, P?>!|): R|test/ConstructorGenericUpperBound| } diff --git a/compiler/testData/loadJava/compiledJava/enum/EnumMembers.fir.txt b/compiler/testData/loadJava/compiledJava/enum/EnumMembers.fir.txt index a07ec085ca8..dbb44753cb9 100644 --- a/compiler/testData/loadJava/compiledJava/enum/EnumMembers.fir.txt +++ b/compiler/testData/loadJava/compiledJava/enum/EnumMembers.fir.txt @@ -1,6 +1,6 @@ -public final enum class EnumMembers : R|kotlin/Enum!>| { - public final static enum entry FIRST: R|test/EnumMembers| - public final static enum entry SECOND: R|test/EnumMembers| +public final enum class EnumMembers : R|kotlin/Enum!>| { + public final static enum entry FIRST: R|@FlexibleNullability test/EnumMembers| + public final static enum entry SECOND: R|@FlexibleNullability test/EnumMembers| public final field isFirst: R|kotlin/Boolean| public open fun first(): R|kotlin/Boolean| diff --git a/compiler/testData/loadJava/compiledJava/enum/EnumWithSpecializedEntry.fir.txt b/compiler/testData/loadJava/compiledJava/enum/EnumWithSpecializedEntry.fir.txt index 39db0096dde..50251c11ddc 100644 --- a/compiler/testData/loadJava/compiledJava/enum/EnumWithSpecializedEntry.fir.txt +++ b/compiler/testData/loadJava/compiledJava/enum/EnumWithSpecializedEntry.fir.txt @@ -1,6 +1,6 @@ -public open enum class EnumWithSpecializedEntry : R|kotlin/Enum!>| { - public final static enum entry E1: R|test/EnumWithSpecializedEntry| - public final static enum entry E2: R|test/EnumWithSpecializedEntry| +public open enum class EnumWithSpecializedEntry : R|kotlin/Enum!>| { + public final static enum entry E1: R|@FlexibleNullability test/EnumWithSpecializedEntry| + public final static enum entry E2: R|@FlexibleNullability test/EnumWithSpecializedEntry| public final static fun values(): R|kotlin/Array| { } diff --git a/compiler/testData/loadJava/compiledJava/enum/JavaEnum.fir.txt b/compiler/testData/loadJava/compiledJava/enum/JavaEnum.fir.txt index e955da73274..9b44b018a6e 100644 --- a/compiler/testData/loadJava/compiledJava/enum/JavaEnum.fir.txt +++ b/compiler/testData/loadJava/compiledJava/enum/JavaEnum.fir.txt @@ -1,6 +1,6 @@ -public final enum class JavaEnum : R|kotlin/Enum!>| { - public final static enum entry ENTRY: R|test/JavaEnum| - public final static enum entry ANOTHER: R|test/JavaEnum| +public final enum class JavaEnum : R|kotlin/Enum!>| { + public final static enum entry ENTRY: R|@FlexibleNullability test/JavaEnum| + public final static enum entry ANOTHER: R|@FlexibleNullability test/JavaEnum| public final static fun values(): R|kotlin/Array| { } diff --git a/compiler/testData/loadJava/compiledJava/javaBean/DifferentGetterAndSetter.fir.txt b/compiler/testData/loadJava/compiledJava/javaBean/DifferentGetterAndSetter.fir.txt index c8e0cf1a9db..37d05490aba 100644 --- a/compiler/testData/loadJava/compiledJava/javaBean/DifferentGetterAndSetter.fir.txt +++ b/compiler/testData/loadJava/compiledJava/javaBean/DifferentGetterAndSetter.fir.txt @@ -1,5 +1,5 @@ public open class DifferentGetterAndSetter : R|kotlin/Any| { - public open fun setSomething(color: R|ft!|): R|kotlin/Unit| + public open fun setSomething(color: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| public open fun getSomething(): R|kotlin/Int| diff --git a/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVal.fir.txt b/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVal.fir.txt index 699f7f70a7e..e24c3bfb30b 100644 --- a/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVal.fir.txt +++ b/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVal.fir.txt @@ -1,5 +1,5 @@ public open class JavaBeanVal : R|kotlin/Any| { - public open fun getColor(): R|ft!| + public open fun getColor(): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public constructor(): R|test/JavaBeanVal| diff --git a/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVar.fir.txt b/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVar.fir.txt index 5ccda953b37..de3686dff4d 100644 --- a/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVar.fir.txt +++ b/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVar.fir.txt @@ -1,7 +1,7 @@ public open class JavaBeanVar : R|kotlin/Any| { - public open fun getColor(): R|ft!| + public open fun getColor(): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| - public open fun setColor(string: R|ft!|): R|kotlin/Unit| + public open fun setColor(string: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| public constructor(): R|test/JavaBeanVar| diff --git a/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVarOfGenericType.fir.txt b/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVarOfGenericType.fir.txt index 09ed70585c6..7306dca2f4e 100644 --- a/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVarOfGenericType.fir.txt +++ b/compiler/testData/loadJava/compiledJava/javaBean/JavaBeanVarOfGenericType.fir.txt @@ -1,7 +1,7 @@ public open class JavaBeanVarOfGenericType

!|> : R|kotlin/Any| { - public open fun getCharacters(): R|ft!>, java/util/ArrayList!>?>!| + public open fun getCharacters(): R|ft<@FlexibleNullability java/util/ArrayList!>, java/util/ArrayList!>?>!| - public open fun setCharacters(characters: R|ft!>, java/util/ArrayList!>?>!|): R|kotlin/Unit| + public open fun setCharacters(characters: R|ft<@FlexibleNullability java/util/ArrayList!>, java/util/ArrayList!>?>!|): R|kotlin/Unit| public constructor

!|>(): R|test/JavaBeanVarOfGenericType

| diff --git a/compiler/testData/loadJava/compiledJava/javaBean/TwoSetters.fir.txt b/compiler/testData/loadJava/compiledJava/javaBean/TwoSetters.fir.txt index 63b1f2b7d4d..2487502afe3 100644 --- a/compiler/testData/loadJava/compiledJava/javaBean/TwoSetters.fir.txt +++ b/compiler/testData/loadJava/compiledJava/javaBean/TwoSetters.fir.txt @@ -1,5 +1,5 @@ public open class TwoSetters : R|kotlin/Any| { - public open fun setSize(size: R|ft!|): R|kotlin/Unit| + public open fun setSize(size: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| public open fun setSize(size: R|kotlin/Int|): R|kotlin/Unit| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/AllBoundsInWhen.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/AllBoundsInWhen.fir.txt index 631151624b6..1d0d376fb11 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/AllBoundsInWhen.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/AllBoundsInWhen.fir.txt @@ -1,5 +1,5 @@ public open class AllBoundsInWhen : R|kotlin/Any| { - public open fun !|> foo(): R|kotlin/Unit| + public open fun !|> foo(): R|kotlin/Unit| public constructor(): R|test/AllBoundsInWhen| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/ArrayType.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/ArrayType.fir.txt index 11722833a1f..776ed49affc 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/ArrayType.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/ArrayType.fir.txt @@ -1,5 +1,5 @@ public open class ArrayType : R|kotlin/Any| { - public open fun foo(): R|ft!>, kotlin/Array!>?>!| + public open fun foo(): R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!| public constructor(): R|test/ArrayType| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithNewTypeParams.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithNewTypeParams.fir.txt index 0ef2f13d500..8363f8f871b 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithNewTypeParams.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithNewTypeParams.fir.txt @@ -1,4 +1,4 @@ public open class ConstructorWithNewTypeParams!|> : R|kotlin/Any| { - public constructor!|, U : R|ft!|>(first: R|ft!|): R|test/ConstructorWithNewTypeParams| + public constructor!|, U : R|ft!|>(first: R|ft<@FlexibleNullability U, U?>!|): R|test/ConstructorWithNewTypeParams| } diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithParentTypeParams.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithParentTypeParams.fir.txt index d06169dbbb9..7cb69ff11b8 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithParentTypeParams.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithParentTypeParams.fir.txt @@ -1,4 +1,4 @@ public open class ConstructorWithParentTypeParams!|> : R|kotlin/Any| { - public constructor!|>(first: R|ft!|): R|test/ConstructorWithParentTypeParams| + public constructor!|>(first: R|ft<@FlexibleNullability T, T?>!|): R|test/ConstructorWithParentTypeParams| } diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithSeveralParams.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithSeveralParams.fir.txt index db7f7621e44..ad470292904 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithSeveralParams.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithSeveralParams.fir.txt @@ -1,4 +1,4 @@ public open class ConstructorWithSeveralParams : R|kotlin/Any| { - public constructor(integer: R|ft!|, intBasic: R|kotlin/Int|, collection: R|ft!>, java/util/ArrayList!>?>!|): R|test/ConstructorWithSeveralParams| + public constructor(integer: R|ft<@FlexibleNullability kotlin/Int, kotlin/Int?>!|, intBasic: R|kotlin/Int|, collection: R|ft<@FlexibleNullability java/util/ArrayList!>, java/util/ArrayList!>?>!|): R|test/ConstructorWithSeveralParams| } diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/CustomProjectionKind.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/CustomProjectionKind.fir.txt index 0111e55d7a1..dfa76faaf36 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/CustomProjectionKind.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/CustomProjectionKind.fir.txt @@ -1,5 +1,5 @@ public open class CustomProjectionKind : R|kotlin/Any| { - public open fun foo(): R|ft!>, kotlin/collections/List!>?>!| + public open fun foo(): R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!| public constructor(): R|test/CustomProjectionKind| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithFunctionTypes.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithFunctionTypes.fir.txt index 847b28570af..c670a85da59 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithFunctionTypes.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithFunctionTypes.fir.txt @@ -1,5 +1,5 @@ public open class MethodWithFunctionTypes : R|kotlin/Any| { - public open fun foo(f: R|ft!, ft!>, kotlin/Function1!, ft!>?>!|): R|ft!>, kotlin/Function0!>?>!| + public open fun foo(f: R|ft<@FlexibleNullability kotlin/Function1!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>, kotlin/Function1!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>?>!|): R|ft<@FlexibleNullability kotlin/Function0!>, kotlin/Function0!>?>!| public constructor(): R|test/MethodWithFunctionTypes| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithGenerics.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithGenerics.fir.txt index 7aec26e74cd..372baf50a9e 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithGenerics.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithGenerics.fir.txt @@ -1,5 +1,5 @@ public open class MethodWithGenerics : R|kotlin/Any| { - public open fun foo(a: R|ft!|, b: R|ft!, ft!>, kotlin/collections/Map.Entry!, ft!>?>!>, kotlin/collections/List!, ft!>, kotlin/collections/Map.Entry!, ft!>?>!>?>!|): R|ft!| + public open fun foo(a: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, b: R|ft<@FlexibleNullability kotlin/collections/MutableList!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>, kotlin/collections/Map.Entry!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>?>!>, kotlin/collections/List!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>, kotlin/collections/Map.Entry!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>?>!>?>!|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public constructor(): R|test/MethodWithGenerics| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithMappedClasses.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithMappedClasses.fir.txt index cd191791590..344a4c38b2a 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithMappedClasses.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithMappedClasses.fir.txt @@ -1,7 +1,7 @@ public open class MethodWithMappedClasses : R|kotlin/Any| { - public open fun !|> copy(dest: R|ft!>, kotlin/collections/List<*>?>!|, src: R|ft!>, kotlin/collections/List!>?>!|): R|kotlin/Unit| + public open fun !|> copy(dest: R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List<*>?>!|, src: R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!|): R|kotlin/Unit| - public open fun !|> copyMap(dest: R|ft!, in ft!>, kotlin/collections/Map!, *>?>!|, src: R|ft!, ft!>, kotlin/collections/Map!, ft!>?>!|): R|kotlin/Unit| + public open fun !|> copyMap(dest: R|ft<@FlexibleNullability kotlin/collections/MutableMap!, in ft<@FlexibleNullability T, T?>!>, kotlin/collections/Map!, *>?>!|, src: R|ft<@FlexibleNullability kotlin/collections/MutableMap!, ft<@FlexibleNullability T, T?>!>, kotlin/collections/Map!, ft<@FlexibleNullability T, T?>!>?>!|): R|kotlin/Unit| public constructor(): R|test/MethodWithMappedClasses| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithTypeParameters.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithTypeParameters.fir.txt index bd4975c1c2f..aae0d6d367d 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithTypeParameters.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithTypeParameters.fir.txt @@ -1,5 +1,5 @@ public open class MethodWithTypeParameters : R|kotlin/Any| { - public open fun !|, B : R|ft!|, R|ft!>, kotlin/collections/List!>?>!|> foo(a: R|ft!|, b: R|ft!>, kotlin/collections/List!>?>!|, list: R|ft!>, kotlin/collections/List<*>?>!|): R|kotlin/Unit| + public open fun !|, B : R|ft<@FlexibleNullability java/lang/Runnable, java/lang/Runnable?>!|, R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!|> foo(a: R|ft<@FlexibleNullability A, A?>!|, b: R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!|, list: R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List<*>?>!|): R|kotlin/Unit| public constructor(): R|test/MethodWithTypeParameters| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithVararg.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithVararg.fir.txt index 65663efc015..5b0a470aa2f 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithVararg.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithVararg.fir.txt @@ -1,5 +1,5 @@ public open class MethodWithVararg : R|kotlin/Any| { - public open fun foo(vararg s: R|ft!>, kotlin/Array!>?>!|): R|kotlin/Unit| + public open fun foo(vararg s: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!|): R|kotlin/Unit| public constructor(): R|test/MethodWithVararg| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyArrayTypes.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyArrayTypes.fir.txt index ef8d624fe81..538e98336d3 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyArrayTypes.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyArrayTypes.fir.txt @@ -1,9 +1,9 @@ public open class PropertyArrayTypes!|> : R|kotlin/Any| { - public open field arrayOfArrays: R|ft!>, kotlin/Array!>?>!>, kotlin/Array!>, kotlin/Array!>?>!>?>!| + public open field arrayOfArrays: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!>, kotlin/Array!>, kotlin/Array!>?>!>?>!| - public open field array: R|ft!>, kotlin/Array!>?>!| + public open field array: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!| - public open field genericArray: R|ft!>, kotlin/Array!>?>!| + public open field genericArray: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!| public constructor!|>(): R|test/PropertyArrayTypes| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyComplexTypes.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyComplexTypes.fir.txt index 2ed4dd1f94a..3cf4f358bba 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyComplexTypes.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyComplexTypes.fir.txt @@ -1,11 +1,11 @@ public open class PropertyComplexTypes!|> : R|kotlin/Any| { - public open field genericType: R|ft!| + public open field genericType: R|ft<@FlexibleNullability T, T?>!| - public open field listDefinedGeneric: R|ft!>, java/util/ArrayList!>?>!| + public open field listDefinedGeneric: R|ft<@FlexibleNullability java/util/ArrayList!>, java/util/ArrayList!>?>!| - public open field listGeneric: R|ft!>, java/util/ArrayList!>?>!| + public open field listGeneric: R|ft<@FlexibleNullability java/util/ArrayList!>, java/util/ArrayList!>?>!| - public open field listOfGenericList: R|ft!>, java/util/ArrayList!>?>!>, java/util/ArrayList!>, java/util/ArrayList!>?>!>?>!| + public open field listOfGenericList: R|ft<@FlexibleNullability java/util/ArrayList!>, java/util/ArrayList!>?>!>, java/util/ArrayList!>, java/util/ArrayList!>?>!>?>!| public constructor!|>(): R|test/PropertyComplexTypes| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertySimpleType.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertySimpleType.fir.txt index db53eb1586a..428cb780aa1 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertySimpleType.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/PropertySimpleType.fir.txt @@ -1,7 +1,7 @@ public open class PropertySimpleType : R|kotlin/Any| { - public open field fieldOne: R|ft!| + public open field fieldOne: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| - public open field fieldTwo: R|ft!| + public open field fieldTwo: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public constructor(): R|test/PropertySimpleType| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/StarProjection.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/StarProjection.fir.txt index efb97842d04..909ae4bc3aa 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/StarProjection.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/StarProjection.fir.txt @@ -1,5 +1,5 @@ public final class StarProjection : R|kotlin/Any| { - public final fun foo(): R|ft, test/StarProjection.MyClass<*>?>!| + public final fun foo(): R|ft<@FlexibleNullability test/StarProjection.MyClass<*>, test/StarProjection.MyClass<*>?>!| public constructor(): R|test/StarProjection| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongProjectionKind.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongProjectionKind.fir.txt index 66c8a8f42fc..cd2e0b52d54 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongProjectionKind.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongProjectionKind.fir.txt @@ -1,5 +1,5 @@ public open class WrongProjectionKind : R|kotlin/Any| { - public open fun copy(from: R|ft!>, kotlin/Array!>?>!|, to: R|ft!>, kotlin/Array!>?>!|): R|ft!>, kotlin/collections/List!>?>!| + public open fun copy(from: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!|, to: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!|): R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!| public constructor(): R|test/WrongProjectionKind| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongReturnTypeStructure.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongReturnTypeStructure.fir.txt index f1ffdab8340..36f6d603bec 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongReturnTypeStructure.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongReturnTypeStructure.fir.txt @@ -1,5 +1,5 @@ public open class WrongReturnTypeStructure : R|kotlin/Any| { - public open fun foo(a: R|ft!|, b: R|ft!, ft!>, kotlin/collections/Map.Entry!, ft!>?>!>, kotlin/collections/List!, ft!>, kotlin/collections/Map.Entry!, ft!>?>!>?>!|): R|ft!| + public open fun foo(a: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, b: R|ft<@FlexibleNullability kotlin/collections/MutableList!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>, kotlin/collections/Map.Entry!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>?>!>, kotlin/collections/List!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>, kotlin/collections/Map.Entry!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>?>!>?>!|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public constructor(): R|test/WrongReturnTypeStructure| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongTypeParameterBoundStructure1.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongTypeParameterBoundStructure1.fir.txt index 2f8e39f04a3..4b50d0d6d4e 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongTypeParameterBoundStructure1.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongTypeParameterBoundStructure1.fir.txt @@ -1,5 +1,5 @@ public open class WrongTypeParameterBoundStructure1 : R|kotlin/Any| { - public open fun !|, B : R|ft!|, R|ft!>, kotlin/collections/List!>?>!|> foo(a: R|ft!|, b: R|ft!>, kotlin/collections/List!>?>!|): R|kotlin/Unit| + public open fun !|, B : R|ft<@FlexibleNullability java/lang/Runnable, java/lang/Runnable?>!|, R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!|> foo(a: R|ft<@FlexibleNullability A, A?>!|, b: R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!|): R|kotlin/Unit| public constructor(): R|test/WrongTypeParameterBoundStructure1| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongValueParameterStructure1.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongValueParameterStructure1.fir.txt index 528219f1f73..3d2386e4733 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongValueParameterStructure1.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongValueParameterStructure1.fir.txt @@ -1,5 +1,5 @@ public open class WrongValueParameterStructure1 : R|kotlin/Any| { - public open fun foo(a: R|ft!|, b: R|ft!, ft!>, kotlin/collections/Map.Entry!, ft!>?>!>, kotlin/collections/List!, ft!>, kotlin/collections/Map.Entry!, ft!>?>!>?>!|): R|ft!| + public open fun foo(a: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, b: R|ft<@FlexibleNullability kotlin/collections/MutableList!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>, kotlin/collections/Map.Entry!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>?>!>, kotlin/collections/List!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>, kotlin/collections/Map.Entry!, ft<@FlexibleNullability kotlin/String, kotlin/String?>!>?>!>?>!|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public constructor(): R|test/WrongValueParameterStructure1| diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/propagation/return/SubclassOfCollection.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/propagation/return/SubclassOfCollection.fir.txt index f92c05708cd..1cc1f7c342a 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/propagation/return/SubclassOfCollection.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/propagation/return/SubclassOfCollection.fir.txt @@ -1,4 +1,4 @@ -public abstract interface SubclassOfCollection!|> : R|kotlin/collections/MutableCollection!>| { - public abstract operator fun iterator(): R|kotlin/collections/MutableIterator!>| +public abstract interface SubclassOfCollection!|> : R|kotlin/collections/MutableCollection!>| { + public abstract operator fun iterator(): R|@FlexibleNullability kotlin/collections/MutableIterator!>| } diff --git a/compiler/testData/loadJava/compiledJava/kotlinSignature/propagation/return/SubclassOfMapEntry.fir.txt b/compiler/testData/loadJava/compiledJava/kotlinSignature/propagation/return/SubclassOfMapEntry.fir.txt index 68511488c6f..84070000ea8 100644 --- a/compiler/testData/loadJava/compiledJava/kotlinSignature/propagation/return/SubclassOfMapEntry.fir.txt +++ b/compiler/testData/loadJava/compiledJava/kotlinSignature/propagation/return/SubclassOfMapEntry.fir.txt @@ -1,4 +1,4 @@ -public abstract interface SubclassOfMapEntry!|, V : R|ft!|> : R|kotlin/collections/MutableMap.MutableEntry!, ft!>| { - public abstract operator fun setValue(value: R|ft!|): R|ft!| +public abstract interface SubclassOfMapEntry!|, V : R|ft!|> : R|kotlin/collections/MutableMap.MutableEntry!, ft<@FlexibleNullability V, V?>!>| { + public abstract operator fun setValue(value: R|ft<@FlexibleNullability V, V?>!|): R|ft<@FlexibleNullability V, V?>!| } diff --git a/compiler/testData/loadJava/compiledJava/library/LoadIterable.fir.txt b/compiler/testData/loadJava/compiledJava/library/LoadIterable.fir.txt index 9ddc69fb0f1..edb7e2c503b 100644 --- a/compiler/testData/loadJava/compiledJava/library/LoadIterable.fir.txt +++ b/compiler/testData/loadJava/compiledJava/library/LoadIterable.fir.txt @@ -1,6 +1,6 @@ public abstract interface LoadIterable!|> : R|kotlin/Any| { - public abstract fun getIterable(): R|ft!>, kotlin/collections/Iterable!>?>!| + public abstract fun getIterable(): R|ft<@FlexibleNullability kotlin/collections/MutableIterable!>, kotlin/collections/Iterable!>?>!| - public abstract fun setIterable(Iterable: R|ft!>, kotlin/collections/Iterable!>?>!|): R|kotlin/Unit| + public abstract fun setIterable(Iterable: R|ft<@FlexibleNullability kotlin/collections/MutableIterable!>, kotlin/collections/Iterable!>?>!|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/library/LoadIterator.fir.txt b/compiler/testData/loadJava/compiledJava/library/LoadIterator.fir.txt index ecfdd58c5f9..497c2884204 100644 --- a/compiler/testData/loadJava/compiledJava/library/LoadIterator.fir.txt +++ b/compiler/testData/loadJava/compiledJava/library/LoadIterator.fir.txt @@ -1,6 +1,6 @@ public abstract interface LoadIterator!|> : R|kotlin/Any| { - public abstract fun getIterator(): R|ft!>, kotlin/collections/Iterator!>?>!| + public abstract fun getIterator(): R|ft<@FlexibleNullability kotlin/collections/MutableIterator!>, kotlin/collections/Iterator!>?>!| - public abstract fun setIterator(iterator: R|ft!>, kotlin/collections/Iterator!>?>!|): R|kotlin/Unit| + public abstract fun setIterator(iterator: R|ft<@FlexibleNullability kotlin/collections/MutableIterator!>, kotlin/collections/Iterator!>?>!|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/library/Max.fir.txt b/compiler/testData/loadJava/compiledJava/library/Max.fir.txt index 399c1d08a4f..8dbd4195715 100644 --- a/compiler/testData/loadJava/compiledJava/library/Max.fir.txt +++ b/compiler/testData/loadJava/compiledJava/library/Max.fir.txt @@ -1,5 +1,5 @@ public open class Max : R|kotlin/Any| { - public open fun !|, R|ft!>, kotlin/Comparable!>?>!|> max(coll: R|ft!>, kotlin/collections/Collection!>?>!|): R|ft!| + public open fun !|, R|ft<@FlexibleNullability kotlin/Comparable!>, kotlin/Comparable!>?>!|> max(coll: R|ft<@FlexibleNullability kotlin/collections/MutableCollection!>, kotlin/collections/Collection!>?>!|): R|ft<@FlexibleNullability T, T?>!| public constructor(): R|test/Max| diff --git a/compiler/testData/loadJava/compiledJava/modality/ModalityOfFakeOverrides.fir.txt b/compiler/testData/loadJava/compiledJava/modality/ModalityOfFakeOverrides.fir.txt index 80cdabb2880..a3f0016c51b 100644 --- a/compiler/testData/loadJava/compiledJava/modality/ModalityOfFakeOverrides.fir.txt +++ b/compiler/testData/loadJava/compiledJava/modality/ModalityOfFakeOverrides.fir.txt @@ -1,4 +1,4 @@ -public open class ModalityOfFakeOverrides : R|java/util/AbstractList!>| { +public open class ModalityOfFakeOverrides : R|java/util/AbstractList!>| { @R|java/lang/Override|() @R|org/jetbrains/annotations/NotNull|() public open operator fun get(index: R|kotlin/Int|): R|@EnhancedNullability kotlin/String| @R|java/lang/Override|() public open fun size(): R|kotlin/Int| diff --git a/compiler/testData/loadJava/compiledJava/mutability/LoadIterable.fir.txt b/compiler/testData/loadJava/compiledJava/mutability/LoadIterable.fir.txt index 78a4930211e..df58b9b0773 100644 --- a/compiler/testData/loadJava/compiledJava/mutability/LoadIterable.fir.txt +++ b/compiler/testData/loadJava/compiledJava/mutability/LoadIterable.fir.txt @@ -1,10 +1,10 @@ public abstract interface LoadIterable!|> : R|kotlin/Any| { - @R|kotlin/annotations/jvm/Mutable|() public abstract fun getIterable(): R|ft!>, kotlin/collections/MutableIterable!>?>!| + @R|kotlin/annotations/jvm/Mutable|() public abstract fun getIterable(): R|ft<@FlexibleNullability kotlin/collections/MutableIterable!>, kotlin/collections/MutableIterable!>?>!| - public abstract fun setIterable(@R|kotlin/annotations/jvm/Mutable|() Iterable: R|ft!>, kotlin/collections/MutableIterable!>?>!|): R|kotlin/Unit| + public abstract fun setIterable(@R|kotlin/annotations/jvm/Mutable|() Iterable: R|ft<@FlexibleNullability kotlin/collections/MutableIterable!>, kotlin/collections/MutableIterable!>?>!|): R|kotlin/Unit| - @R|kotlin/annotations/jvm/ReadOnly|() public abstract fun getReadOnlyIterable(): R|ft!>, kotlin/collections/Iterable!>?>!| + @R|kotlin/annotations/jvm/ReadOnly|() public abstract fun getReadOnlyIterable(): R|ft<@FlexibleNullability kotlin/collections/Iterable!>, kotlin/collections/Iterable!>?>!| - public abstract fun setReadOnlyIterable(@R|kotlin/annotations/jvm/ReadOnly|() Iterable: R|ft!>, kotlin/collections/Iterable!>?>!|): R|kotlin/Unit| + public abstract fun setReadOnlyIterable(@R|kotlin/annotations/jvm/ReadOnly|() Iterable: R|ft<@FlexibleNullability kotlin/collections/Iterable!>, kotlin/collections/Iterable!>?>!|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/mutability/LoadIterableWithConflict.fir.txt b/compiler/testData/loadJava/compiledJava/mutability/LoadIterableWithConflict.fir.txt index aff107cedea..9c8e8239420 100644 --- a/compiler/testData/loadJava/compiledJava/mutability/LoadIterableWithConflict.fir.txt +++ b/compiler/testData/loadJava/compiledJava/mutability/LoadIterableWithConflict.fir.txt @@ -1,6 +1,6 @@ public abstract interface LoadIterableWithConflict!|> : R|kotlin/Any| { - @R|kotlin/annotations/jvm/ReadOnly|() @R|kotlin/annotations/jvm/Mutable|() public abstract fun getIterable(): R|ft!>, kotlin/collections/Iterable!>?>!| + @R|kotlin/annotations/jvm/ReadOnly|() @R|kotlin/annotations/jvm/Mutable|() public abstract fun getIterable(): R|ft<@FlexibleNullability kotlin/collections/MutableIterable!>, kotlin/collections/Iterable!>?>!| - public abstract fun setIterable(@R|kotlin/annotations/jvm/ReadOnly|() @R|kotlin/annotations/jvm/Mutable|() Iterable: R|ft!>, kotlin/collections/Iterable!>?>!|): R|kotlin/Unit| + public abstract fun setIterable(@R|kotlin/annotations/jvm/ReadOnly|() @R|kotlin/annotations/jvm/Mutable|() Iterable: R|ft<@FlexibleNullability kotlin/collections/MutableIterable!>, kotlin/collections/Iterable!>?>!|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/mutability/LoadIterableWithNullability.fir.txt b/compiler/testData/loadJava/compiledJava/mutability/LoadIterableWithNullability.fir.txt index a5adf624ba8..afffa9d149a 100644 --- a/compiler/testData/loadJava/compiledJava/mutability/LoadIterableWithNullability.fir.txt +++ b/compiler/testData/loadJava/compiledJava/mutability/LoadIterableWithNullability.fir.txt @@ -1,10 +1,10 @@ public abstract interface LoadIterableWithNullability!|> : R|kotlin/Any| { - @R|org/jetbrains/annotations/NotNull|() @R|kotlin/annotations/jvm/Mutable|() public abstract fun getIterable(): R|@EnhancedNullability kotlin/collections/MutableIterable!>| + @R|org/jetbrains/annotations/NotNull|() @R|kotlin/annotations/jvm/Mutable|() public abstract fun getIterable(): R|@EnhancedNullability kotlin/collections/MutableIterable!>| - public abstract fun setIterable(@R|kotlin/annotations/jvm/Mutable|() @R|org/jetbrains/annotations/NotNull|() Iterable: R|@EnhancedNullability kotlin/collections/MutableIterable!>|): R|kotlin/Unit| + public abstract fun setIterable(@R|kotlin/annotations/jvm/Mutable|() @R|org/jetbrains/annotations/NotNull|() Iterable: R|@EnhancedNullability kotlin/collections/MutableIterable!>|): R|kotlin/Unit| - @R|org/jetbrains/annotations/NotNull|() @R|kotlin/annotations/jvm/ReadOnly|() public abstract fun getReadOnlyIterable(): R|kotlin/collections/Iterable!>| + @R|org/jetbrains/annotations/NotNull|() @R|kotlin/annotations/jvm/ReadOnly|() public abstract fun getReadOnlyIterable(): R|@EnhancedNullability kotlin/collections/Iterable!>| - public abstract fun setReadOnlyIterable(@R|kotlin/annotations/jvm/ReadOnly|() @R|org/jetbrains/annotations/NotNull|() Iterable: R|kotlin/collections/Iterable!>|): R|kotlin/Unit| + public abstract fun setReadOnlyIterable(@R|kotlin/annotations/jvm/ReadOnly|() @R|org/jetbrains/annotations/NotNull|() Iterable: R|@EnhancedNullability kotlin/collections/Iterable!>|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/mutability/ReadOnlyExtendsWildcard.fir.txt b/compiler/testData/loadJava/compiledJava/mutability/ReadOnlyExtendsWildcard.fir.txt index bb96f9b059e..3c700bc0a11 100644 --- a/compiler/testData/loadJava/compiledJava/mutability/ReadOnlyExtendsWildcard.fir.txt +++ b/compiler/testData/loadJava/compiledJava/mutability/ReadOnlyExtendsWildcard.fir.txt @@ -1,6 +1,6 @@ public abstract interface ReadOnlyExtendsWildcard : R|kotlin/Any| { public abstract fun bar(): R|kotlin/Unit| - public abstract fun foo(@R|kotlin/annotations/jvm/ReadOnly|() x: R|ft!>, kotlin/collections/List!>?>!|, @R|org/jetbrains/annotations/NotNull|() y: R|@EnhancedNullability kotlin/Comparable!>|): R|kotlin/Unit| + public abstract fun foo(@R|kotlin/annotations/jvm/ReadOnly|() x: R|ft<@FlexibleNullability kotlin/collections/List!>, kotlin/collections/List!>?>!|, @R|org/jetbrains/annotations/NotNull|() y: R|@EnhancedNullability kotlin/Comparable!>|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/notNull/NotNullObjectArray.fir.txt b/compiler/testData/loadJava/compiledJava/notNull/NotNullObjectArray.fir.txt index 3a260301db7..4c0c4dfbf50 100644 --- a/compiler/testData/loadJava/compiledJava/notNull/NotNullObjectArray.fir.txt +++ b/compiler/testData/loadJava/compiledJava/notNull/NotNullObjectArray.fir.txt @@ -1,5 +1,5 @@ public open class NotNullObjectArray : R|kotlin/Any| { - @R|org/jetbrains/annotations/NotNull|() public open fun hi(): R|ft<@EnhancedNullability kotlin/Array!>, kotlin/Array!>>| + @R|org/jetbrains/annotations/NotNull|() public open fun hi(): R|ft<@EnhancedNullability kotlin/Array!>, @EnhancedNullability kotlin/Array!>>| public constructor(): R|test/NotNullObjectArray| diff --git a/compiler/testData/loadJava/compiledJava/sam/Comparator.fir.txt b/compiler/testData/loadJava/compiledJava/sam/Comparator.fir.txt index f80ce812a9b..dc472d735a9 100644 --- a/compiler/testData/loadJava/compiledJava/sam/Comparator.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/Comparator.fir.txt @@ -1,4 +1,4 @@ public abstract interface Comparator!|> : R|kotlin/Any| { - public abstract fun compare(o1: R|ft!|, o2: R|ft!|): R|kotlin/Int| + public abstract fun compare(o1: R|ft<@FlexibleNullability T, T?>!|, o2: R|ft<@FlexibleNullability T, T?>!|): R|kotlin/Int| } diff --git a/compiler/testData/loadJava/compiledJava/sam/FilenameFilter.fir.txt b/compiler/testData/loadJava/compiledJava/sam/FilenameFilter.fir.txt index f5438fd128c..a852ff7c26b 100644 --- a/compiler/testData/loadJava/compiledJava/sam/FilenameFilter.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/FilenameFilter.fir.txt @@ -1,4 +1,4 @@ public abstract interface FilenameFilter : R|kotlin/Any| { - public abstract fun accept(dir: R|ft!|, name: R|ft!|): R|kotlin/Boolean| + public abstract fun accept(dir: R|ft<@FlexibleNullability java/io/File, java/io/File?>!|, name: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Boolean| } diff --git a/compiler/testData/loadJava/compiledJava/sam/GenericInterfaceParameterWithSelfBound.fir.txt b/compiler/testData/loadJava/compiledJava/sam/GenericInterfaceParameterWithSelfBound.fir.txt index 16cbfb10b49..60a6e5e3dc0 100644 --- a/compiler/testData/loadJava/compiledJava/sam/GenericInterfaceParameterWithSelfBound.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/GenericInterfaceParameterWithSelfBound.fir.txt @@ -1,4 +1,4 @@ -public abstract interface GenericInterfaceParameterWithSelfBound!>, test/GenericInterfaceParameterWithSelfBound!>?>!|> : R|kotlin/Any| { - public abstract fun method(t: R|ft!|): R|ft!| +public abstract interface GenericInterfaceParameterWithSelfBound!>, test/GenericInterfaceParameterWithSelfBound!>?>!|> : R|kotlin/Any| { + public abstract fun method(t: R|ft<@FlexibleNullability T, T?>!|): R|ft<@FlexibleNullability T, T?>!| } diff --git a/compiler/testData/loadJava/compiledJava/sam/GenericInterfaceParametersWithBounds.fir.txt b/compiler/testData/loadJava/compiledJava/sam/GenericInterfaceParametersWithBounds.fir.txt index 4671d98a5e1..38ece403cef 100644 --- a/compiler/testData/loadJava/compiledJava/sam/GenericInterfaceParametersWithBounds.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/GenericInterfaceParametersWithBounds.fir.txt @@ -1,4 +1,4 @@ -public abstract interface GenericInterfaceParametersWithBounds!>, kotlin/Comparable!>?>!|, R|ft!|, B : R|ft!>, kotlin/collections/List!>?>!|> : R|kotlin/Any| { - public abstract fun method(a: R|ft!>, kotlin/Array!>?>!|, b: R|ft!|): R|kotlin/Unit| +public abstract interface GenericInterfaceParametersWithBounds!>, kotlin/Comparable!>?>!|, R|ft<@FlexibleNullability kotlin/Cloneable, kotlin/Cloneable?>!|, B : R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!|> : R|kotlin/Any| { + public abstract fun method(a: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!|, b: R|ft<@FlexibleNullability B, B?>!|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/sam/GenericMethodParameters.fir.txt b/compiler/testData/loadJava/compiledJava/sam/GenericMethodParameters.fir.txt index 118e9a19adb..3094e8aaf70 100644 --- a/compiler/testData/loadJava/compiledJava/sam/GenericMethodParameters.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/GenericMethodParameters.fir.txt @@ -1,4 +1,4 @@ public abstract interface GenericMethodParameters : R|kotlin/Any| { - public abstract fun !|, B : R|ft!>, kotlin/collections/List!>?>!|> method(a: R|ft!>, kotlin/Array!>?>!|, b: R|ft!|): R|kotlin/Unit| + public abstract fun !|, B : R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!|> method(a: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!|, b: R|ft<@FlexibleNullability B, B?>!|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/sam/SubstitutedSamInterface.fir.txt b/compiler/testData/loadJava/compiledJava/sam/SubstitutedSamInterface.fir.txt index 9ad3856f86f..0af72149fe1 100644 --- a/compiler/testData/loadJava/compiledJava/sam/SubstitutedSamInterface.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/SubstitutedSamInterface.fir.txt @@ -1,2 +1,2 @@ -public abstract interface SubstitutedSamInterface : R|java/util/Comparator!>| { +public abstract interface SubstitutedSamInterface : R|java/util/Comparator!>| { } diff --git a/compiler/testData/loadJava/compiledJava/sam/SubstitutedSamInterfaceSubclassOfBuiltin.fir.txt b/compiler/testData/loadJava/compiledJava/sam/SubstitutedSamInterfaceSubclassOfBuiltin.fir.txt index 8d760bb4261..ce115f8ba45 100644 --- a/compiler/testData/loadJava/compiledJava/sam/SubstitutedSamInterfaceSubclassOfBuiltin.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/SubstitutedSamInterfaceSubclassOfBuiltin.fir.txt @@ -1,2 +1,2 @@ -public abstract interface SubstitutedSamInterfaceSubclassOfBuiltin : R|kotlin/Comparable!>| { +public abstract interface SubstitutedSamInterfaceSubclassOfBuiltin : R|kotlin/Comparable!>| { } diff --git a/compiler/testData/loadJava/compiledJava/sam/VarargParameter.fir.txt b/compiler/testData/loadJava/compiledJava/sam/VarargParameter.fir.txt index 798d49e7413..7e40c4ddebe 100644 --- a/compiler/testData/loadJava/compiledJava/sam/VarargParameter.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/VarargParameter.fir.txt @@ -1,4 +1,4 @@ public abstract interface VarargParameter : R|kotlin/Any| { - public abstract fun f(vararg strings: R|ft!>, kotlin/Array!>?>!|): R|kotlin/Unit| + public abstract fun f(vararg strings: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/sam/adapters/AmbiguousAdapters.fir.txt b/compiler/testData/loadJava/compiledJava/sam/adapters/AmbiguousAdapters.fir.txt index 4abcef59143..789dc5d13d1 100644 --- a/compiler/testData/loadJava/compiledJava/sam/adapters/AmbiguousAdapters.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/adapters/AmbiguousAdapters.fir.txt @@ -1,7 +1,7 @@ public open class AmbiguousAdapters : R|kotlin/Any| { - public open fun foo(r: R|ft!|): R|kotlin/Unit| + public open fun foo(r: R|ft<@FlexibleNullability java/lang/Runnable, java/lang/Runnable?>!|): R|kotlin/Unit| - public open fun foo(c: R|ft!|): R|kotlin/Unit| + public open fun foo(c: R|ft<@FlexibleNullability java/io/Closeable, java/io/Closeable?>!|): R|kotlin/Unit| public constructor(): R|test/AmbiguousAdapters| diff --git a/compiler/testData/loadJava/compiledJava/sam/adapters/Basic.fir.txt b/compiler/testData/loadJava/compiledJava/sam/adapters/Basic.fir.txt index 853920ef860..36eca5e9e2b 100644 --- a/compiler/testData/loadJava/compiledJava/sam/adapters/Basic.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/adapters/Basic.fir.txt @@ -1,7 +1,7 @@ public open class Basic : R|kotlin/Any| { - public open fun foo(r: R|ft!|): R|kotlin/Unit| + public open fun foo(r: R|ft<@FlexibleNullability java/lang/Runnable, java/lang/Runnable?>!|): R|kotlin/Unit| - public open static fun bar(r: R|ft!|): R|kotlin/Unit| + public open static fun bar(r: R|ft<@FlexibleNullability java/lang/Runnable, java/lang/Runnable?>!|): R|kotlin/Unit| public constructor(): R|test/Basic| diff --git a/compiler/testData/loadJava/compiledJava/sam/adapters/Constructor.fir.txt b/compiler/testData/loadJava/compiledJava/sam/adapters/Constructor.fir.txt index 0f0c72f6b81..53c365cc0a3 100644 --- a/compiler/testData/loadJava/compiledJava/sam/adapters/Constructor.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/adapters/Constructor.fir.txt @@ -1,4 +1,4 @@ public open class Constructor : R|kotlin/Any| { - public constructor(r: R|ft!|): R|test/Constructor| + public constructor(r: R|ft<@FlexibleNullability java/lang/Runnable, java/lang/Runnable?>!|): R|test/Constructor| } diff --git a/compiler/testData/loadJava/compiledJava/sam/adapters/ConstructorWithAnnotations.fir.txt b/compiler/testData/loadJava/compiledJava/sam/adapters/ConstructorWithAnnotations.fir.txt index 04537918725..bc08bb138c9 100644 --- a/compiler/testData/loadJava/compiledJava/sam/adapters/ConstructorWithAnnotations.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/adapters/ConstructorWithAnnotations.fir.txt @@ -1,4 +1,4 @@ public open class ConstructorWithAnnotations : R|kotlin/Any| { - public constructor(r: R|ft!|, @R|org/jetbrains/annotations/NotNull|() s: R|@EnhancedNullability kotlin/String|): R|test/ConstructorWithAnnotations| + public constructor(r: R|ft<@FlexibleNullability java/lang/Runnable, java/lang/Runnable?>!|, @R|org/jetbrains/annotations/NotNull|() s: R|@EnhancedNullability kotlin/String|): R|test/ConstructorWithAnnotations| } diff --git a/compiler/testData/loadJava/compiledJava/sam/adapters/NonTrivialFunctionType.fir.txt b/compiler/testData/loadJava/compiledJava/sam/adapters/NonTrivialFunctionType.fir.txt index 7fc2e592f23..4330efa689b 100644 --- a/compiler/testData/loadJava/compiledJava/sam/adapters/NonTrivialFunctionType.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/adapters/NonTrivialFunctionType.fir.txt @@ -1,11 +1,11 @@ public open class NonTrivialFunctionType : R|kotlin/Any| { - public open fun foo(filenameFilter: R|ft!|): R|kotlin/Unit| + public open fun foo(filenameFilter: R|ft<@FlexibleNullability java/io/FilenameFilter, java/io/FilenameFilter?>!|): R|kotlin/Unit| - public open fun foo(comparator: R|ft!>, java/util/Comparator!>?>!|): R|kotlin/Unit| + public open fun foo(comparator: R|ft<@FlexibleNullability java/util/Comparator!>, java/util/Comparator!>?>!|): R|kotlin/Unit| - public open fun wildcardUnbound(comparator: R|ft, java/util/Comparator<*>?>!|): R|kotlin/Unit| + public open fun wildcardUnbound(comparator: R|ft<@FlexibleNullability java/util/Comparator<*>, java/util/Comparator<*>?>!|): R|kotlin/Unit| - public open fun wildcardBound(comparator: R|ft!>, java/util/Comparator!>?>!|): R|kotlin/Unit| + public open fun wildcardBound(comparator: R|ft<@FlexibleNullability java/util/Comparator!>, java/util/Comparator!>?>!|): R|kotlin/Unit| public constructor(): R|test/NonTrivialFunctionType| diff --git a/compiler/testData/loadJava/compiledJava/sam/adapters/PrivateSamAdapter.fir.txt b/compiler/testData/loadJava/compiledJava/sam/adapters/PrivateSamAdapter.fir.txt index 3cbb73d130e..8a6822ad29d 100644 --- a/compiler/testData/loadJava/compiledJava/sam/adapters/PrivateSamAdapter.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/adapters/PrivateSamAdapter.fir.txt @@ -1,5 +1,5 @@ public open class PrivateSamAdapter : R|kotlin/Any| { - private open fun samAdapter(r: R|ft!|): R|kotlin/Unit| + private open fun samAdapter(r: R|ft<@FlexibleNullability test/PrivateSamAdapter.SamInterface, test/PrivateSamAdapter.SamInterface?>!|): R|kotlin/Unit| public constructor(): R|test/PrivateSamAdapter| diff --git a/compiler/testData/loadJava/compiledJava/sam/adapters/SelfAsParameter.fir.txt b/compiler/testData/loadJava/compiledJava/sam/adapters/SelfAsParameter.fir.txt index 82a757164e4..797a91ff978 100644 --- a/compiler/testData/loadJava/compiledJava/sam/adapters/SelfAsParameter.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/adapters/SelfAsParameter.fir.txt @@ -1,4 +1,4 @@ public abstract interface SelfAsParameter : R|kotlin/Any| { - public abstract fun foo(p: R|ft!|): R|kotlin/Unit| + public abstract fun foo(p: R|ft<@FlexibleNullability test/SelfAsParameter, test/SelfAsParameter?>!|): R|kotlin/Unit| } diff --git a/compiler/testData/loadJava/compiledJava/sam/adapters/SeveralSamParameters.fir.txt b/compiler/testData/loadJava/compiledJava/sam/adapters/SeveralSamParameters.fir.txt index 23c87c839df..ffd0996a777 100644 --- a/compiler/testData/loadJava/compiledJava/sam/adapters/SeveralSamParameters.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/adapters/SeveralSamParameters.fir.txt @@ -1,5 +1,5 @@ public open class SeveralSamParameters : R|kotlin/Any| { - public open static fun findMaxAndInvokeCallback(comparator: R|ft!>, java/util/Comparator!>?>!|, a: R|ft!|, b: R|ft!|, afterRunnable: R|ft!|): R|ft!| + public open static fun findMaxAndInvokeCallback(comparator: R|ft<@FlexibleNullability java/util/Comparator!>, java/util/Comparator!>?>!|, a: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, b: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|, afterRunnable: R|ft<@FlexibleNullability java/lang/Runnable, java/lang/Runnable?>!|): R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public constructor(): R|test/SeveralSamParameters| diff --git a/compiler/testData/loadJava/compiledJava/sam/adapters/TypeParameterOfClass.fir.txt b/compiler/testData/loadJava/compiledJava/sam/adapters/TypeParameterOfClass.fir.txt index d640c1cbe35..7ed0614a0d6 100644 --- a/compiler/testData/loadJava/compiledJava/sam/adapters/TypeParameterOfClass.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/adapters/TypeParameterOfClass.fir.txt @@ -1,5 +1,5 @@ public open class TypeParameterOfClass!|> : R|kotlin/Any| { - public open fun foo(comparator: R|ft!>, java/util/Comparator!>?>!|): R|kotlin/Unit| + public open fun foo(comparator: R|ft<@FlexibleNullability java/util/Comparator!>, java/util/Comparator!>?>!|): R|kotlin/Unit| public constructor!|>(): R|test/TypeParameterOfClass| diff --git a/compiler/testData/loadJava/compiledJava/sam/adapters/TypeParameterOfMethod.fir.txt b/compiler/testData/loadJava/compiledJava/sam/adapters/TypeParameterOfMethod.fir.txt index 78e2598231a..730e38b2223 100644 --- a/compiler/testData/loadJava/compiledJava/sam/adapters/TypeParameterOfMethod.fir.txt +++ b/compiler/testData/loadJava/compiledJava/sam/adapters/TypeParameterOfMethod.fir.txt @@ -1,9 +1,9 @@ public open class TypeParameterOfMethod : R|kotlin/Any| { - public open static fun !|> max(comparator: R|ft!>, java/util/Comparator!>?>!|, value1: R|ft!|, value2: R|ft!|): R|ft!| + public open static fun !|> max(comparator: R|ft<@FlexibleNullability java/util/Comparator!>, java/util/Comparator!>?>!|, value1: R|ft<@FlexibleNullability T, T?>!|, value2: R|ft<@FlexibleNullability T, T?>!|): R|ft<@FlexibleNullability T, T?>!| - public open static fun !|> max2(comparator: R|ft!>, java/util/Comparator!>?>!|, value1: R|ft!|, value2: R|ft!|): R|ft!| + public open static fun !|> max2(comparator: R|ft<@FlexibleNullability java/util/Comparator!>, java/util/Comparator!>?>!|, value1: R|ft<@FlexibleNullability T, T?>!|, value2: R|ft<@FlexibleNullability T, T?>!|): R|ft<@FlexibleNullability T, T?>!| - public open static fun !|, B : R|ft!>, kotlin/collections/List!>?>!|> method(a: R|ft!>, java/util/Comparator!>?>!|, b: R|ft!|): R|kotlin/Unit| + public open static fun !|, B : R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!|> method(a: R|ft<@FlexibleNullability java/util/Comparator!>, java/util/Comparator!>?>!|, b: R|ft<@FlexibleNullability B, B?>!|): R|kotlin/Unit| public constructor(): R|test/TypeParameterOfMethod| diff --git a/compiler/testData/loadJava/compiledJava/signatureAnnotations/StableName.fir.txt b/compiler/testData/loadJava/compiledJava/signatureAnnotations/StableName.fir.txt index eab3b224253..404a5540346 100644 --- a/compiler/testData/loadJava/compiledJava/signatureAnnotations/StableName.fir.txt +++ b/compiler/testData/loadJava/compiledJava/signatureAnnotations/StableName.fir.txt @@ -1,5 +1,5 @@ public open class StableName : R|kotlin/Any| { - public open fun connect(@R|kotlin/annotations/jvm/internal/ParameterName|(String(host)) host: R|ft!|): R|kotlin/Unit| + public open fun connect(@R|kotlin/annotations/jvm/internal/ParameterName|(String(host)) host: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!|): R|kotlin/Unit| public constructor(): R|test/StableName| diff --git a/compiler/testData/loadJava/compiledJava/signaturePropagation/TwoSuperclassesInconsistentGenericTypes.fir.txt b/compiler/testData/loadJava/compiledJava/signaturePropagation/TwoSuperclassesInconsistentGenericTypes.fir.txt index e063f7e7921..91356b8ac00 100644 --- a/compiler/testData/loadJava/compiledJava/signaturePropagation/TwoSuperclassesInconsistentGenericTypes.fir.txt +++ b/compiler/testData/loadJava/compiledJava/signaturePropagation/TwoSuperclassesInconsistentGenericTypes.fir.txt @@ -1,5 +1,5 @@ public abstract interface TwoSuperclassesInconsistentGenericTypes : R|kotlin/Any| { - public abstract fun foo(): R|ft!>, kotlin/collections/List!>?>!| + public abstract fun foo(): R|ft<@FlexibleNullability kotlin/collections/MutableList!>, kotlin/collections/List!>?>!| public abstract fun dummy(): R|kotlin/Unit| diff --git a/compiler/testData/loadJava/compiledJava/static/Enum.fir.txt b/compiler/testData/loadJava/compiledJava/static/Enum.fir.txt index 81184201694..3dd243e3fcb 100644 --- a/compiler/testData/loadJava/compiledJava/static/Enum.fir.txt +++ b/compiler/testData/loadJava/compiledJava/static/Enum.fir.txt @@ -1,7 +1,7 @@ -public final enum class Enum : R|kotlin/Enum!>| { - public final static enum entry A: R|test/Enum| - public final static enum entry B: R|test/Enum| - public final static enum entry C: R|test/Enum| +public final enum class Enum : R|kotlin/Enum!>| { + public final static enum entry A: R|@FlexibleNullability test/Enum| + public final static enum entry B: R|@FlexibleNullability test/Enum| + public final static enum entry C: R|@FlexibleNullability test/Enum| public final static fun values(): R|kotlin/Array| { } diff --git a/compiler/testData/loadJava/compiledJava/static/StaticFinal.fir.txt b/compiler/testData/loadJava/compiledJava/static/StaticFinal.fir.txt index 2f10d610e16..63082462763 100644 --- a/compiler/testData/loadJava/compiledJava/static/StaticFinal.fir.txt +++ b/compiler/testData/loadJava/compiledJava/static/StaticFinal.fir.txt @@ -1,15 +1,15 @@ public open class StaticFinal : R|kotlin/Any| { - public final static field publicNonNull: R|ft!| = String(aaa) + public final static field publicNonNull: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = String(aaa) - public final static field publicNull: R|ft!| + public final static field publicNull: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| - public/*package*/ final static field packageNonNull: R|ft!| = String(bbb) + public/*package*/ final static field packageNonNull: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = String(bbb) - public/*package*/ final static field packageNull: R|ft!| + public/*package*/ final static field packageNull: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| - private final static field privateNonNull: R|ft!| = String(bbb) + private final static field privateNonNull: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| = String(bbb) - private final static field privateNull: R|ft!| + private final static field privateNull: R|ft<@FlexibleNullability kotlin/String, kotlin/String?>!| public constructor(): R|test/StaticFinal| diff --git a/compiler/testData/loadJava/compiledJava/static/StaticMembersInEnum.fir.txt b/compiler/testData/loadJava/compiledJava/static/StaticMembersInEnum.fir.txt index fe4c8213187..f99c13f4c71 100644 --- a/compiler/testData/loadJava/compiledJava/static/StaticMembersInEnum.fir.txt +++ b/compiler/testData/loadJava/compiledJava/static/StaticMembersInEnum.fir.txt @@ -1,8 +1,8 @@ -public final enum class StaticMembersInEnum : R|kotlin/Enum!>| { - public final static enum entry ENTRY: R|test/StaticMembersInEnum| +public final enum class StaticMembersInEnum : R|kotlin/Enum!>| { + public final static enum entry ENTRY: R|@FlexibleNullability test/StaticMembersInEnum| public open static field STATIC_FIELD: R|kotlin/Int| - public final static field CONSTANT: R|ft!| + public final static field CONSTANT: R|ft<@FlexibleNullability test/StaticMembersInEnum, test/StaticMembersInEnum?>!| public open static fun foo(): R|kotlin/Unit| diff --git a/compiler/testData/loadJava/compiledJava/vararg/VarargInt.fir.txt b/compiler/testData/loadJava/compiledJava/vararg/VarargInt.fir.txt index 22229732a63..5555c047952 100644 --- a/compiler/testData/loadJava/compiledJava/vararg/VarargInt.fir.txt +++ b/compiler/testData/loadJava/compiledJava/vararg/VarargInt.fir.txt @@ -1,5 +1,5 @@ public open class VarargInt : R|kotlin/Any| { - public open fun vararg(vararg p: R|ft!|): R|kotlin/Unit| + public open fun vararg(vararg p: R|ft<@FlexibleNullability kotlin/IntArray, kotlin/IntArray?>!|): R|kotlin/Unit| public constructor(): R|test/VarargInt| diff --git a/compiler/testData/loadJava/compiledJava/vararg/VarargString.fir.txt b/compiler/testData/loadJava/compiledJava/vararg/VarargString.fir.txt index 02bd3f033d4..14710ede074 100644 --- a/compiler/testData/loadJava/compiledJava/vararg/VarargString.fir.txt +++ b/compiler/testData/loadJava/compiledJava/vararg/VarargString.fir.txt @@ -1,5 +1,5 @@ public open class VarargString : R|kotlin/Any| { - public open fun vararg(vararg strings: R|ft!>, kotlin/Array!>?>!|): R|kotlin/Unit| + public open fun vararg(vararg strings: R|ft<@FlexibleNullability kotlin/Array!>, kotlin/Array!>?>!|): R|kotlin/Unit| public constructor(): R|test/VarargString|