[FIR] Set EnhancedNullability attribute for former flexible types

In some cases we transform flexible type into non-flexible during
  enhancement, but don't add `@EnhancedNullability` attribute to them,
  which breaks consistency with K1 on IR level

This commit fixes it

^KT-65302
This commit is contained in:
Dmitriy Novozhilov
2024-02-16 15:24:02 +02:00
committed by Space Team
parent da567e54b9
commit bd66b96f8a
45 changed files with 208 additions and 235 deletions
@@ -63,10 +63,10 @@ class A : Java1 {
/* fake */ override fun ensureCapacity(p0: Int): Unit
// CHECK JVM_IR:
// Mangled name: A#equals(kotlin.Any?){}kotlin.Boolean
// Public signature: /A.equals|722809408929142791[0]
// Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean
/* fake */ override operator fun equals(p0: Any?): Boolean
// Mangled name: A#equals(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A.equals|4126616015386471185[0]
// Public signature debug description: equals(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean
/* fake */ override operator fun equals(p0: @EnhancedNullability Any?): Boolean
// CHECK JVM_IR:
// Mangled name: A#get(kotlin.Int){}kotlin.Int{EnhancedNullability}
@@ -260,10 +260,10 @@ open class KotlinClass : ArrayList<Int> {
/* fake */ override fun ensureCapacity(p0: Int): Unit
// CHECK JVM_IR:
// Mangled name: KotlinClass#equals(kotlin.Any?){}kotlin.Boolean
// Public signature: /KotlinClass.equals|722809408929142791[0]
// Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean
/* fake */ override operator fun equals(p0: Any?): Boolean
// Mangled name: KotlinClass#equals(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean
// Public signature: /KotlinClass.equals|4126616015386471185[0]
// Public signature debug description: equals(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean
/* fake */ override operator fun equals(p0: @EnhancedNullability Any?): Boolean
// CHECK JVM_IR:
// Mangled name: KotlinClass#get(kotlin.Int){}kotlin.Int{EnhancedNullability}
@@ -391,3 +391,4 @@ open class KotlinClass : ArrayList<Int> {
/* fake */ override get(): Int
}