[K2] Revert changes done in KT-61786

Changes in this ticket remove type enhancement in java fields
for K2. But after KT-61920 fix, we can actually support it.
This commit is contained in:
Ivan Kylchik
2023-11-21 16:10:47 +01:00
committed by Space Team
parent 2680c8effd
commit 97ba3fe396
17 changed files with 88 additions and 35 deletions
@@ -6,26 +6,26 @@ FILE fqName:interop fileName:/Definitions.kt
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Definitions modality:FINAL visibility:public superTypes:[kotlin.Any]'
PROPERTY name:KT_CONSTANT visibility:public modality:FINAL [const,val]
FIELD PROPERTY_BACKING_FIELD name:KT_CONSTANT type:@[FlexibleNullability] kotlin.String? visibility:public [final]
FIELD PROPERTY_BACKING_FIELD name:KT_CONSTANT type:kotlin.String visibility:public [final]
EXPRESSION_BODY
CONST String type=kotlin.String value="constant"
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-KT_CONSTANT> visibility:public modality:FINAL <> ($this:interop.Definitions) returnType:@[FlexibleNullability] kotlin.String?
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-KT_CONSTANT> visibility:public modality:FINAL <> ($this:interop.Definitions) returnType:kotlin.String
correspondingProperty: PROPERTY name:KT_CONSTANT visibility:public modality:FINAL [const,val]
$this: VALUE_PARAMETER name:<this> type:interop.Definitions
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun <get-KT_CONSTANT> (): @[FlexibleNullability] kotlin.String? declared in interop.Definitions'
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:KT_CONSTANT type:@[FlexibleNullability] kotlin.String? visibility:public [final]' type=@[FlexibleNullability] kotlin.String? origin=null
RETURN type=kotlin.Nothing from='public final fun <get-KT_CONSTANT> (): kotlin.String declared in interop.Definitions'
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:KT_CONSTANT type:kotlin.String visibility:public [final]' type=kotlin.String origin=null
receiver: GET_VAR '<this>: interop.Definitions declared in interop.Definitions.<get-KT_CONSTANT>' type=interop.Definitions origin=null
PROPERTY name:ktValue visibility:public modality:FINAL [val]
FIELD PROPERTY_BACKING_FIELD name:ktValue type:@[FlexibleNullability] kotlin.String? visibility:private [final]
FIELD PROPERTY_BACKING_FIELD name:ktValue type:kotlin.String visibility:private [final]
EXPRESSION_BODY
GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:CONSTANT type:@[FlexibleNullability] kotlin.String? visibility:public [final,static]' type=@[FlexibleNullability] kotlin.String? origin=GET_PROPERTY
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-ktValue> visibility:public modality:FINAL <> ($this:interop.Definitions) returnType:@[FlexibleNullability] kotlin.String?
GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:CONSTANT type:kotlin.String visibility:public [final,static]' type=kotlin.String origin=GET_PROPERTY
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-ktValue> visibility:public modality:FINAL <> ($this:interop.Definitions) returnType:kotlin.String
correspondingProperty: PROPERTY name:ktValue visibility:public modality:FINAL [val]
$this: VALUE_PARAMETER name:<this> type:interop.Definitions
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun <get-ktValue> (): @[FlexibleNullability] kotlin.String? declared in interop.Definitions'
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:ktValue type:@[FlexibleNullability] kotlin.String? visibility:private [final]' type=@[FlexibleNullability] kotlin.String? origin=null
RETURN type=kotlin.Nothing from='public final fun <get-ktValue> (): kotlin.String declared in interop.Definitions'
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:ktValue type:kotlin.String visibility:private [final]' type=kotlin.String origin=null
receiver: GET_VAR '<this>: interop.Definitions declared in interop.Definitions.<get-ktValue>' type=interop.Definitions origin=null
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
overridden:
@@ -7,11 +7,11 @@ object Definitions {
}
const val KT_CONSTANT: @FlexibleNullability String?
const val KT_CONSTANT: String
field = "constant"
get
val ktValue: @FlexibleNullability String?
val ktValue: String
field = #CONSTANT
get
-1
View File
@@ -1,4 +1,3 @@
// SKIP_SIGNATURE_DUMP
// TARGET_BACKEND: JVM
// FILE: Definitions.kt
// IR_FILE: kt29833.txt
@@ -0,0 +1,35 @@
package interop
// CHECK:
// Mangled name: interop.Definitions
// Public signature: interop/Definitions|null[0]
object Definitions {
// CHECK:
// Mangled name: interop.Definitions{}ktValue
// Public signature: interop/Definitions.ktValue|-7932704459611172354[0]
// Public signature debug description: {}ktValue
val ktValue: String
// CHECK JVM_IR:
// Mangled name: interop.Definitions#<get-ktValue>(){}kotlin.String
// Public signature: interop/Definitions.ktValue.<get-ktValue>|233367925131846588[0]
// Public signature debug description: <get-ktValue>(){}kotlin.String
get
// CHECK:
// Mangled name: interop.Definitions#<init>(){}
// Public signature: interop/Definitions.<init>|-5645683436151566731[0]
// Public signature debug description: <init>(){}
private constructor() /* primary */
// CHECK:
// Mangled name: interop.Definitions{}KT_CONSTANT
// Public signature: interop/Definitions.KT_CONSTANT|-8714407162660026641[0]
// Public signature debug description: {}KT_CONSTANT
const val KT_CONSTANT: String
// CHECK JVM_IR:
// Mangled name: interop.Definitions#<get-KT_CONSTANT>(){}kotlin.String
// Public signature: interop/Definitions.KT_CONSTANT.<get-KT_CONSTANT>|4728854297559730352[0]
// Public signature debug description: <get-KT_CONSTANT>(){}kotlin.String
get
}
@@ -1,7 +0,0 @@
FILE fqName:<root> fileName:/SameJavaFieldReferences.kt
FUN name:foo visibility:public modality:FINAL <> () returnType:kotlin.Unit
BLOCK_BODY
VAR name:ref1 type:kotlin.reflect.KProperty0<@[FlexibleNullability] kotlin.String?> [val]
PROPERTY_REFERENCE 'public final someJavaField: @[FlexibleNullability] kotlin.String?' field='FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:someJavaField type:@[FlexibleNullability] kotlin.String? visibility:public [final,static]' getter=null setter=null type=kotlin.reflect.KProperty0<@[FlexibleNullability] kotlin.String?> origin=null
VAR name:ref2 type:kotlin.reflect.KProperty0<@[FlexibleNullability] kotlin.String?> [val]
PROPERTY_REFERENCE 'public final someJavaField: @[FlexibleNullability] kotlin.String?' field='FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:someJavaField type:@[FlexibleNullability] kotlin.String? visibility:public [final,static]' getter=null setter=null type=kotlin.reflect.KProperty0<@[FlexibleNullability] kotlin.String?> origin=null
@@ -1,4 +0,0 @@
fun foo() {
val ref1: KProperty0<@FlexibleNullability String?> = SomeJavaClass::someJavaField
val ref2: KProperty0<@FlexibleNullability String?> = SomeJavaClass::someJavaField
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// TARGET_BACKEND: JVM
// FILE: SomeJavaClass.java