bd66b96f8a
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
60 lines
2.4 KiB
Kotlin
Vendored
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
|
|
|
|
}
|
|
|