Serialize OptIn to builtins, improve tests

Skip SOURCE-retention annotations in builtins serialization tests,
because otherwise the source analysis result can't be equal to the
metadata deserialization result.

 #KT-53073 Fixed
This commit is contained in:
Alexander Udalov
2022-08-25 21:08:05 +02:00
parent 3f6742916a
commit 686cd82327
10 changed files with 277 additions and 11 deletions
+44
View File
@@ -1659,6 +1659,7 @@ public final annotation class ExperimentalStdlibApi : kotlin.Annotation {
public constructor ExperimentalStdlibApi()
}
/*∆*/ @kotlin.RequiresOptIn(level = Level.ERROR)
/*∆*/ @kotlin.annotation.Retention(value = AnnotationRetention.BINARY)
/*∆*/ @kotlin.annotation.Target(allowedTargets = {AnnotationTarget.CLASS, AnnotationTarget.ANNOTATION_CLASS, AnnotationTarget.PROPERTY, AnnotationTarget.FIELD, AnnotationTarget.LOCAL_VARIABLE, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER, AnnotationTarget.TYPEALIAS})
/*∆*/ @kotlin.annotation.MustBeDocumented
@@ -1674,6 +1675,13 @@ public final annotation class ExperimentalSubclassOptIn : kotlin.Annotation {
public constructor ExperimentalSubclassOptIn()
}
/*∆*/ @kotlin.annotation.Target(allowedTargets = {AnnotationTarget.CLASS})
/*∆*/ @kotlin.annotation.Retention(value = AnnotationRetention.BINARY)
/*∆*/ @kotlin.SinceKotlin(version = "1.8")
/*∆*/ public final annotation class ExperimentalSubclassOptIn : kotlin.Annotation {
/*∆*/ public constructor ExperimentalSubclassOptIn()
/*∆*/ }
/*∆*/
@kotlin.RequiresOptIn(level = Level.WARNING)
@kotlin.annotation.MustBeDocumented
@kotlin.annotation.Target(allowedTargets = {AnnotationTarget.CLASS, AnnotationTarget.ANNOTATION_CLASS, AnnotationTarget.PROPERTY, AnnotationTarget.FIELD, AnnotationTarget.LOCAL_VARIABLE, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER, AnnotationTarget.TYPEALIAS})
@@ -2468,6 +2476,15 @@ public final annotation class OptIn : kotlin.Annotation {
public final val markerClass: kotlin.Array<out kotlin.reflect.KClass<out kotlin.Annotation>> { get; }
}
/*∆*/ @kotlin.annotation.Target(allowedTargets = {AnnotationTarget.CLASS, AnnotationTarget.PROPERTY, AnnotationTarget.LOCAL_VARIABLE, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER, AnnotationTarget.EXPRESSION, AnnotationTarget.FILE, AnnotationTarget.TYPEALIAS})
/*∆*/ @kotlin.annotation.Retention(value = AnnotationRetention.SOURCE)
/*∆*/ @kotlin.SinceKotlin(version = "1.3")
/*∆*/ public final annotation class OptIn : kotlin.Annotation {
/*∆*/ public constructor OptIn(vararg markerClass: kotlin.reflect.KClass<out kotlin.Annotation>)
/*∆*/
/*∆*/ public final val markerClass: kotlin.Array<out kotlin.reflect.KClass<out kotlin.Annotation>> { get; }
/*∆*/ }
/*∆*/
@kotlin.annotation.Target(allowedTargets = {AnnotationTarget.ANNOTATION_CLASS})
@kotlin.annotation.Retention(value = AnnotationRetention.BINARY)
@kotlin.ExperimentalMultiplatform
@@ -2548,7 +2565,24 @@ public final annotation class RequiresOptIn : kotlin.Annotation {
}
}
/*∆*/ @kotlin.annotation.Target(allowedTargets = {AnnotationTarget.ANNOTATION_CLASS})
/*∆*/ @kotlin.annotation.Retention(value = AnnotationRetention.BINARY)
@kotlin.SinceKotlin(version = "1.3")
/*∆*/ public final annotation class RequiresOptIn : kotlin.Annotation {
/*∆*/ public constructor RequiresOptIn(message: kotlin.String = ..., level: kotlin.RequiresOptIn.Level = ...)
/*∆*/
/*∆*/ public final val level: kotlin.RequiresOptIn.Level { get; }
/*∆*/
/*∆*/ public final val message: kotlin.String { get; }
/*∆*/
/*∆*/ public final enum class Level : kotlin.Enum<kotlin.RequiresOptIn.Level> {
/*∆*/ enum entry WARNING
/*∆*/
/*∆*/ enum entry ERROR
/*∆*/ }
/*∆*/ }
/*∆*/
/*∆*/ @kotlin.SinceKotlin(version = "1.3")
@kotlin.jvm.JvmInline
public final inline class Result<out T> : kotlin.io.Serializable {
public final val isFailure: kotlin.Boolean { get; }
@@ -2838,6 +2872,16 @@ public final annotation class SubclassOptInRequired : kotlin.Annotation {
public final val markerClass: kotlin.reflect.KClass<out kotlin.Annotation> { get; }
}
/*∆*/ @kotlin.annotation.Target(allowedTargets = {AnnotationTarget.CLASS})
/*∆*/ @kotlin.annotation.Retention(value = AnnotationRetention.BINARY)
/*∆*/ @kotlin.SinceKotlin(version = "1.8")
/*∆*/ @kotlin.ExperimentalSubclassOptIn
/*∆*/ public final annotation class SubclassOptInRequired : kotlin.Annotation {
/*∆*/ public constructor SubclassOptInRequired(markerClass: kotlin.reflect.KClass<out kotlin.Annotation>)
/*∆*/
/*∆*/ public final val markerClass: kotlin.reflect.KClass<out kotlin.Annotation> { get; }
/*∆*/ }
/*∆*/
@kotlin.annotation.Target(allowedTargets = {AnnotationTarget.CLASS, AnnotationTarget.ANNOTATION_CLASS, AnnotationTarget.TYPE_PARAMETER, AnnotationTarget.PROPERTY, AnnotationTarget.FIELD, AnnotationTarget.LOCAL_VARIABLE, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER, AnnotationTarget.TYPE, AnnotationTarget.EXPRESSION, AnnotationTarget.FILE, AnnotationTarget.TYPEALIAS})
@kotlin.annotation.Retention(value = AnnotationRetention.SOURCE)
public final annotation class Suppress : kotlin.Annotation {