Fix binary compatibility for inlined local delegated properies
#KT-54650 Fixed
This commit is contained in:
+10
@@ -0,0 +1,10 @@
|
||||
// This test checks that we use the `...$lambda-0` method name, instead of `...$lambda$0`, for extracted accessors of local delegated properties.
|
||||
// It's important to keep these names until we fix the binary compatibility issue KT-49030.
|
||||
|
||||
operator fun String.getValue(thisRef: Any?, prop: Any?): String = this
|
||||
operator fun String.setValue(thisRef: Any?, prop: Any?, value: String) {}
|
||||
|
||||
inline fun foo(): String {
|
||||
var x by "OK"
|
||||
return x
|
||||
}
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
@kotlin.Metadata
|
||||
public final class LocalDelegatedPropertyKt$foo$x$1 {
|
||||
// source: 'localDelegatedProperty.kt'
|
||||
public final static field INSTANCE: kotlin.reflect.KMutableProperty0
|
||||
static method <clinit>(): void
|
||||
method <init>(): void
|
||||
public method getName(): java.lang.String
|
||||
public method getOwner(): kotlin.reflect.KDeclarationContainer
|
||||
public method getSignature(): java.lang.String
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class LocalDelegatedPropertyKt {
|
||||
// source: 'localDelegatedProperty.kt'
|
||||
synthetic final static field $$delegatedProperties: kotlin.reflect.KProperty[]
|
||||
static method <clinit>(): void
|
||||
public final static @org.jetbrains.annotations.NotNull method foo(): java.lang.String
|
||||
public final static @org.jetbrains.annotations.NotNull method getValue(@org.jetbrains.annotations.NotNull p0: java.lang.String, @org.jetbrains.annotations.Nullable p1: java.lang.Object, @org.jetbrains.annotations.Nullable p2: java.lang.Object): java.lang.String
|
||||
public final static method setValue(@org.jetbrains.annotations.NotNull p0: java.lang.String, @org.jetbrains.annotations.Nullable p1: java.lang.Object, @org.jetbrains.annotations.Nullable p2: java.lang.Object, @org.jetbrains.annotations.NotNull p3: java.lang.String): void
|
||||
}
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
@kotlin.Metadata
|
||||
public final class LocalDelegatedPropertyKt {
|
||||
// source: 'localDelegatedProperty.kt'
|
||||
synthetic final static field $$delegatedProperties: kotlin.reflect.KProperty[]
|
||||
static method <clinit>(): void
|
||||
public synthetic final static method access$foo$lambda-0(p0: java.lang.String): java.lang.String
|
||||
private final static method foo$lambda-0(p0: java.lang.String): java.lang.String
|
||||
private final static method foo$lambda-1(p0: java.lang.String, p1: java.lang.String): void
|
||||
public final static @org.jetbrains.annotations.NotNull method foo(): java.lang.String
|
||||
public final static @org.jetbrains.annotations.NotNull method getValue(@org.jetbrains.annotations.NotNull p0: java.lang.String, @org.jetbrains.annotations.Nullable p1: java.lang.Object, @org.jetbrains.annotations.Nullable p2: java.lang.Object): java.lang.String
|
||||
public final static method setValue(@org.jetbrains.annotations.NotNull p0: java.lang.String, @org.jetbrains.annotations.Nullable p1: java.lang.Object, @org.jetbrains.annotations.Nullable p2: java.lang.Object, @org.jetbrains.annotations.NotNull p3: java.lang.String): void
|
||||
}
|
||||
Reference in New Issue
Block a user