diff --git a/kotlin-native/runtime/src/main/kotlin/kotlin/Lazy.kt b/kotlin-native/runtime/src/main/kotlin/kotlin/Lazy.kt index 62908ecb258..9de68adc48c 100644 --- a/kotlin-native/runtime/src/main/kotlin/kotlin/Lazy.kt +++ b/kotlin-native/runtime/src/main/kotlin/kotlin/Lazy.kt @@ -56,4 +56,6 @@ public actual fun lazy(mode: LazyThreadSafetyMode, initializer: () -> T): La * Also this behavior can be changed in the future. */ @Suppress("UNUSED_PARAMETER") +@Deprecated("Synchronization on Any? object is not supported.", ReplaceWith("lazy(initializer)")) +@DeprecatedSinceKotlin(errorSince = "1.9") public actual fun lazy(lock: Any?, initializer: () -> T): Lazy = throw UnsupportedOperationException() \ No newline at end of file diff --git a/libraries/stdlib/api/js-v1/kotlin.kt b/libraries/stdlib/api/js-v1/kotlin.kt index db7ebb07c2d..e71e2773707 100644 --- a/libraries/stdlib/api/js-v1/kotlin.kt +++ b/libraries/stdlib/api/js-v1/kotlin.kt @@ -114,6 +114,8 @@ public inline fun error(message: kotlin.Any): kotlin.Nothing /*∆*/ public fun lazy(initializer: () -> T): kotlin.Lazy +@kotlin.Deprecated(message = "Synchronization on Any? object is not supported.", replaceWith = kotlin.ReplaceWith(expression = "lazy(initializer)", imports = {})) +@kotlin.DeprecatedSinceKotlin(warningSince = "1.9") public fun lazy(lock: kotlin.Any?, initializer: () -> T): kotlin.Lazy public fun lazy(mode: kotlin.LazyThreadSafetyMode, initializer: () -> T): kotlin.Lazy diff --git a/libraries/stdlib/api/js/kotlin.kt b/libraries/stdlib/api/js/kotlin.kt index 5b379d334e1..42ffc109d8d 100644 --- a/libraries/stdlib/api/js/kotlin.kt +++ b/libraries/stdlib/api/js/kotlin.kt @@ -84,6 +84,8 @@ public inline fun error(message: kotlin.Any): kotlin.Nothing public fun lazy(initializer: () -> T): kotlin.Lazy +@kotlin.Deprecated(message = "Synchronization on Any? object is not supported.", replaceWith = kotlin.ReplaceWith(expression = "lazy(initializer)", imports = {})) +@kotlin.DeprecatedSinceKotlin(warningSince = "1.9") public fun lazy(lock: kotlin.Any?, initializer: () -> T): kotlin.Lazy public fun lazy(mode: kotlin.LazyThreadSafetyMode, initializer: () -> T): kotlin.Lazy diff --git a/libraries/stdlib/common/src/kotlin/KotlinH.kt b/libraries/stdlib/common/src/kotlin/KotlinH.kt index 6a15d527e4c..7542961cb27 100644 --- a/libraries/stdlib/common/src/kotlin/KotlinH.kt +++ b/libraries/stdlib/common/src/kotlin/KotlinH.kt @@ -73,4 +73,6 @@ public expect fun lazy(mode: LazyThreadSafetyMode, initializer: () -> T): La * * The [lock] parameter is ignored. */ +@Deprecated("Synchronization on Any? object is supported only in Kotlin/JVM.", ReplaceWith("lazy(initializer)")) +@DeprecatedSinceKotlin(warningSince = "1.9") public expect fun lazy(lock: Any?, initializer: () -> T): Lazy diff --git a/libraries/stdlib/js-ir/runtime/kotlinHacks.kt b/libraries/stdlib/js-ir/runtime/kotlinHacks.kt index eef232fe4f4..669d641a797 100644 --- a/libraries/stdlib/js-ir/runtime/kotlinHacks.kt +++ b/libraries/stdlib/js-ir/runtime/kotlinHacks.kt @@ -33,6 +33,8 @@ public actual fun lazy(mode: LazyThreadSafetyMode, initializer: () -> T): La * * The [lock] parameter is ignored. */ +@Deprecated("Synchronization on Any? object is not supported.", ReplaceWith("lazy(initializer)")) +@DeprecatedSinceKotlin(warningSince = "1.9") public actual fun lazy(lock: Any?, initializer: () -> T): Lazy = UnsafeLazyImpl(initializer) diff --git a/libraries/stdlib/js-v1/src/kotlin/kotlin.kt b/libraries/stdlib/js-v1/src/kotlin/kotlin.kt index 6ceec84a913..12e2c378939 100644 --- a/libraries/stdlib/js-v1/src/kotlin/kotlin.kt +++ b/libraries/stdlib/js-v1/src/kotlin/kotlin.kt @@ -55,6 +55,8 @@ public actual fun lazy(mode: LazyThreadSafetyMode, initializer: () -> T): La * * The [lock] parameter is ignored. */ +@Deprecated("Synchronization on Any? object is not supported.", ReplaceWith("lazy(initializer)")) +@DeprecatedSinceKotlin(warningSince = "1.9") public actual fun lazy(lock: Any?, initializer: () -> T): Lazy = UnsafeLazyImpl(initializer) diff --git a/libraries/stdlib/wasm/src/kotlin/Lazy.kt b/libraries/stdlib/wasm/src/kotlin/Lazy.kt index e75ad1604cc..b5c085bb3af 100644 --- a/libraries/stdlib/wasm/src/kotlin/Lazy.kt +++ b/libraries/stdlib/wasm/src/kotlin/Lazy.kt @@ -21,4 +21,6 @@ public actual fun lazy(mode: LazyThreadSafetyMode, initializer: () -> T): La * * The [lock] parameter is ignored. */ +@Deprecated("Synchronization on Any? object is not supported.", ReplaceWith("lazy(initializer)")) +@DeprecatedSinceKotlin(warningSince = "1.9") public actual fun lazy(lock: Any?, initializer: () -> T): Lazy = UnsafeLazyImpl(initializer) \ No newline at end of file