JVM IR: fix names of $annotations methods with inline classes in signature

#KT-40385 Fixed
This commit is contained in:
Alexander Udalov
2020-10-13 18:24:20 +02:00
parent 1df3bafbaf
commit 3f73be391f
5 changed files with 87 additions and 3 deletions
@@ -0,0 +1,20 @@
inline class Z(val x: Int) {
@Anno
val member: Int get() = x
}
annotation class Anno
@Anno
val Z.topLevel: Int get() = 0
@Anno
val returnType: Z get() = Z(0)
class C {
@Anno
val Z.memberExtension: Int get() = 0
@Anno
val returnType: Z get() = Z(0)
}
@@ -0,0 +1,44 @@
@java.lang.annotation.Retention
@kotlin.Metadata
public annotation class Anno {
// source: 'annotatedPropertyWithInlineClassTypeInSignature.kt'
}
@kotlin.Metadata
public final class AnnotatedPropertyWithInlineClassTypeInSignatureKt {
// source: 'annotatedPropertyWithInlineClassTypeInSignature.kt'
public synthetic deprecated static @Anno method getReturnType$annotations(): void
public final static method getReturnType(): int
public synthetic deprecated static @Anno method getTopLevel-IQRRRT4$annotations(p0: int): void
public final static method getTopLevel-IQRRRT4(p0: int): int
}
@kotlin.Metadata
public final class C {
// source: 'annotatedPropertyWithInlineClassTypeInSignature.kt'
public method <init>(): void
public synthetic deprecated static @Anno method getMemberExtension-IQRRRT4$annotations(p0: int): void
public final method getMemberExtension-IQRRRT4(p0: int): int
public synthetic deprecated static @Anno method getReturnType-a_XrcN0$annotations(): void
public final method getReturnType-a_XrcN0(): int
}
@kotlin.Metadata
public final class Z {
// source: 'annotatedPropertyWithInlineClassTypeInSignature.kt'
private final field x: int
private synthetic method <init>(p0: int): void
public synthetic final static method box-impl(p0: int): Z
public static method constructor-impl(p0: int): int
public method equals(p0: java.lang.Object): boolean
public static method equals-impl(p0: int, p1: java.lang.Object): boolean
public final static method equals-impl0(p0: int, p1: int): boolean
public synthetic deprecated static @Anno method getMember$annotations(): void
public final static method getMember-impl(p0: int): int
public final method getX(): int
public method hashCode(): int
public static method hashCode-impl(p0: int): int
public method toString(): java.lang.String
public static method toString-impl(p0: int): java.lang.String
public synthetic final method unbox-impl(): int
}