JVM IR: keep property annotations for inline class replacements

In particular, `@Deprecated` is not lost anymore and accessors of
deprecated property are generated with ACC_DEPRECATED just as in the old
backend.

 #KT-43327 Fixed
This commit is contained in:
Alexander Udalov
2020-11-13 19:17:14 +01:00
parent 4ca60a2d7d
commit 5212ae6bbd
5 changed files with 32 additions and 1 deletions
@@ -0,0 +1,9 @@
// WITH_RUNTIME
abstract class A {
@Deprecated("")
abstract var warn: UByte
@Deprecated("", level = DeprecationLevel.HIDDEN)
abstract var hidden: UByte
}
@@ -0,0 +1,11 @@
@kotlin.Metadata
public abstract class A {
// source: 'inlineClassTypesInSignature.kt'
public method <init>(): void
public synthetic deprecated static @kotlin.Deprecated method getHidden-w2LRezQ$annotations(): void
public synthetic deprecated abstract method getHidden-w2LRezQ(): byte
public synthetic deprecated static @kotlin.Deprecated method getWarn-w2LRezQ$annotations(): void
public deprecated abstract method getWarn-w2LRezQ(): byte
public synthetic deprecated abstract method setHidden-7apg3OU(p0: byte): void
public deprecated abstract method setWarn-7apg3OU(p0: byte): void
}