diff --git a/core/reflection.jvm/src/kotlin/reflect/full/KAnnotatedElements.kt b/core/reflection.jvm/src/kotlin/reflect/full/KAnnotatedElements.kt index 659d40a1b13..5d519e4410b 100644 --- a/core/reflection.jvm/src/kotlin/reflect/full/KAnnotatedElements.kt +++ b/core/reflection.jvm/src/kotlin/reflect/full/KAnnotatedElements.kt @@ -20,7 +20,8 @@ inline fun KAnnotatedElement.findAnnotation(): T? = /** * Returns true if this element is annotated with an annotation of type [T]. */ -@ExperimentalStdlibApi -@SinceKotlin("1.3") +@SinceKotlin("1.4") +@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE") +@WasExperimental(ExperimentalStdlibApi::class) inline fun KAnnotatedElement.hasAnnotation(): Boolean = findAnnotation() != null diff --git a/libraries/stdlib/src/kotlin/reflect/KClasses.kt b/libraries/stdlib/src/kotlin/reflect/KClasses.kt index 92097bd51a1..edd67db15b8 100644 --- a/libraries/stdlib/src/kotlin/reflect/KClasses.kt +++ b/libraries/stdlib/src/kotlin/reflect/KClasses.kt @@ -19,8 +19,8 @@ import kotlin.internal.LowPriorityInOverloadResolution * @see [KClass.isInstance] * @see [KClass.safeCast] */ -@SinceKotlin("1.3") -@ExperimentalStdlibApi +@SinceKotlin("1.4") +@WasExperimental(ExperimentalStdlibApi::class) @LowPriorityInOverloadResolution fun KClass.cast(value: Any?): T { if (!isInstance(value)) throw ClassCastException("Value cannot be cast to $qualifiedOrSimpleName") @@ -39,8 +39,8 @@ internal expect val KClass<*>.qualifiedOrSimpleName: String? * @see [KClass.isInstance] * @see [KClass.cast] */ -@SinceKotlin("1.3") -@ExperimentalStdlibApi +@SinceKotlin("1.4") +@WasExperimental(ExperimentalStdlibApi::class) @LowPriorityInOverloadResolution fun KClass.safeCast(value: Any?): T? { return if (isInstance(value)) value as T else null