JVM IR: do not serialize metadata for actualized optional expectations
Optional-expectation annotations which have an actual counterpart should have never been serialized to the kotlin_module's proto. See for example the original (correct) implementation in the old JVM backend in `PackageCodegenImpl.addDescriptorToOptionalAnnotationsIfNeeded`. #KT-55611 Fixed
This commit is contained in:
committed by
Space Team
parent
11504fda18
commit
7a9c59aeb5
@@ -13,8 +13,14 @@ expect annotation class B(val a: Array<String>)
|
||||
@OptionalExpectation
|
||||
expect annotation class C()
|
||||
|
||||
@OptionalExpectation
|
||||
expect annotation class D()
|
||||
|
||||
actual annotation class D actual constructor()
|
||||
|
||||
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE")
|
||||
@A(42)
|
||||
@B(["OK", ""])
|
||||
@C
|
||||
@D()
|
||||
fun ok() {}
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
// test/D.class
|
||||
// ------------------------------------------
|
||||
public final annotation class test/D : kotlin/Annotation {
|
||||
|
||||
// signature: <init>()V
|
||||
public constructor()
|
||||
|
||||
// module name: test-module
|
||||
}
|
||||
// test/OptionalAnnotationKt.class
|
||||
// ------------------------------------------
|
||||
package {
|
||||
|
||||
Reference in New Issue
Block a user