[JVM_IR] Reduce the amount of super suffixes on accesibility bridges.

The super suffix was used for any static field/method that needed
an accessor. We should only use it when that field or method is
inherited.
This commit is contained in:
Mads Ager
2021-01-19 14:25:26 +01:00
committed by Alexander Udalov
parent a33877a9b9
commit ef36b81c67
8 changed files with 60 additions and 10 deletions
@@ -0,0 +1,6 @@
private val x: String = "OK"
private fun f(y: String) = y
class A {
fun g() = f(x)
}
@@ -0,0 +1,16 @@
@kotlin.Metadata
public final class A {
// source: 'accessorForTopLevelMembers.kt'
public method <init>(): void
public final @org.jetbrains.annotations.NotNull method g(): java.lang.String
}
@kotlin.Metadata
public final class AccessorForTopLevelMembersKt {
// source: 'accessorForTopLevelMembers.kt'
private final static field x: java.lang.String
static method <clinit>(): void
public synthetic final static method access$f(p0: java.lang.String): java.lang.String
public synthetic final static method access$getX$p(): java.lang.String
private final static method f(p0: java.lang.String): java.lang.String
}
@@ -0,0 +1,16 @@
@kotlin.Metadata
public final class A {
// source: 'accessorForTopLevelMembers.kt'
public method <init>(): void
public final @org.jetbrains.annotations.NotNull method g(): java.lang.String
}
@kotlin.Metadata
public final class AccessorForTopLevelMembersKt {
// source: 'accessorForTopLevelMembers.kt'
private final static @org.jetbrains.annotations.NotNull field x: java.lang.String
static method <clinit>(): void
public synthetic final static method access$f(p0: java.lang.String): java.lang.String
public synthetic final static method access$getX$p(): java.lang.String
private final static method f(p0: java.lang.String): java.lang.String
}