K2/LC: set hasBackingField to false for expect properties

#KT-61173 Fixed
This commit is contained in:
Mikhail Glukhikh
2023-08-18 18:23:51 +02:00
committed by Space Team
parent 6b217369a8
commit 5ee50f50b5
6 changed files with 977 additions and 24 deletions
@@ -6,14 +6,9 @@ FILE fqName:<root> fileName:/common.kt
FUN name:f visibility:public modality:FINAL <> ($this:<root>.C1) returnType:kotlin.String [expect]
$this: VALUE_PARAMETER name:<this> type:<root>.C1
PROPERTY name:p visibility:public modality:FINAL [expect,val]
FIELD PROPERTY_BACKING_FIELD name:p type:kotlin.Int visibility:private [final]
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-p> visibility:public modality:FINAL <> ($this:<root>.C1) returnType:kotlin.Int
correspondingProperty: PROPERTY name:p visibility:public modality:FINAL [expect,val]
$this: VALUE_PARAMETER name:<this> type:<root>.C1
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun <get-p> (): kotlin.Int declared in <root>.C1'
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
receiver: GET_VAR '<this>: <root>.C1 declared in <root>.C1.<get-p>' type=<root>.C1 origin=null
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [expect,fake_override,operator]
overridden:
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
@@ -5,21 +5,6 @@
// Mangled name: C1
// Public signature: /C1|null[1]
expect open class C1 {
// CHECK:
// Mangled name: C1{}p
// Public signature: /C1.p|6715504260787941082[1]
// Public signature debug description: {}p
expect val p: Int
// CHECK JVM_IR:
// Mangled name: C1#<get-p>(){}kotlin.Int
// Public signature: /C1.p.<get-p>|5329635969197638839[1]
// Public signature debug description: <get-p>(){}kotlin.Int
// CHECK JS_IR NATIVE:
// Mangled name: C1#<get-p>(){}
// Public signature: /C1.p.<get-p>|-1162552463316289847[1]
// Public signature debug description: <get-p>(){}
get
// CHECK:
// Mangled name: C1#<init>(){}
// Public signature: /C1.<init>|-5645683436151566731[1]
@@ -36,6 +21,21 @@ expect open class C1 {
// Public signature debug description: f(){}
expect fun f(): String
// CHECK:
// Mangled name: C1{}p
// Public signature: /C1.p|6715504260787941082[1]
// Public signature debug description: {}p
expect val p: Int
// CHECK JVM_IR:
// Mangled name: C1#<get-p>(){}kotlin.Int
// Public signature: /C1.p.<get-p>|5329635969197638839[1]
// Public signature debug description: <get-p>(){}kotlin.Int
// CHECK JS_IR NATIVE:
// Mangled name: C1#<get-p>(){}
// Public signature: /C1.p.<get-p>|-1162552463316289847[1]
// Public signature debug description: <get-p>(){}
get
}
// CHECK: