Files
kotlin-fork/compiler/testData/ir/irText/classes/delegatedImplementationOfJavaInterface.fir.sig.kt.txt
T
Dmitriy Novozhilov bd66b96f8a [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
2024-02-21 12:04:11 +00:00

60 lines
2.4 KiB
Kotlin
Vendored

// CHECK:
// Mangled name: Test
// Public signature: /Test|null[0]
class Test : J {
// CHECK:
// Mangled name: Test{}j
// Public signature: /Test.j|-6836075379230315579[0]
// Public signature debug description: {}j
private val j: J
// CHECK JVM_IR:
// Mangled name: Test#<get-j>(){}J
// Public signature: /Test.j.<get-j>|-6114050685652754863[0]
// Public signature debug description: <get-j>(){}J
private get
// CHECK:
// Mangled name: Test#<init>(J){}
// Public signature: /Test.<init>|1083383516528472352[0]
// Public signature debug description: <init>(J){}
constructor(j: J) /* primary */
// CHECK JVM_IR:
// Mangled name: Test#returnNotNull(){}kotlin.String{EnhancedNullability}
// Public signature: /Test.returnNotNull|-3682895453084642874[0]
// Public signature debug description: returnNotNull(){}kotlin.String{EnhancedNullability}
override fun returnNotNull(): @EnhancedNullability String
// CHECK JVM_IR:
// Mangled name: Test#returnNullable(){}kotlin.String?{EnhancedNullability}
// Public signature: /Test.returnNullable|-404622903433277680[0]
// Public signature debug description: returnNullable(){}kotlin.String?{EnhancedNullability}
override fun returnNullable(): @EnhancedNullability String?
// CHECK JVM_IR:
// Mangled name: Test#returnsFlexible(){}kotlin.String?
// Public signature: /Test.returnsFlexible|-5946143652599840920[0]
// Public signature debug description: returnsFlexible(){}kotlin.String?
override fun returnsFlexible(): String?
// CHECK:
// Mangled name: Test#takeFlexible(kotlin.String?){}
// Public signature: /Test.takeFlexible|8434697244780181625[0]
// Public signature debug description: takeFlexible(kotlin.String?){}
override fun takeFlexible(x: String?): Unit
// CHECK:
// Mangled name: Test#takeNotNull(kotlin.String{EnhancedNullability}){}
// Public signature: /Test.takeNotNull|2138033560695328162[0]
// Public signature debug description: takeNotNull(kotlin.String{EnhancedNullability}){}
override fun takeNotNull(x: @EnhancedNullability String): Unit
// CHECK:
// Mangled name: Test#takeNullable(kotlin.String?{EnhancedNullability}){}
// Public signature: /Test.takeNullable|-558980523272297075[0]
// Public signature debug description: takeNullable(kotlin.String?{EnhancedNullability}){}
override fun takeNullable(x: @EnhancedNullability String?): Unit
}