diff --git a/compiler/testData/codegen/box/unit/kt51036.kt b/compiler/testData/codegen/box/unit/kt51036.kt index 3fdd774ec2f..be87f454a37 100644 --- a/compiler/testData/codegen/box/unit/kt51036.kt +++ b/compiler/testData/codegen/box/unit/kt51036.kt @@ -12,5 +12,6 @@ fun box(): String { class A { companion object; operator fun String.invoke() = Unit + @Suppress("DEPRECATION_ERROR") fun close() = synchronized(this) { "abc" }() } diff --git a/compiler/testData/ir/irText/expressions/kt51036.fir.ir.txt b/compiler/testData/ir/irText/expressions/kt51036.fir.ir.txt index a34f8daaf88..ed71ff0de06 100644 --- a/compiler/testData/ir/irText/expressions/kt51036.fir.ir.txt +++ b/compiler/testData/ir/irText/expressions/kt51036.fir.ir.txt @@ -31,6 +31,8 @@ FILE fqName: fileName:/kt51036.kt RETURN type=kotlin.Nothing from='public final fun invoke (): kotlin.Unit [operator] declared in .A' GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit FUN name:close visibility:public modality:FINAL <> ($this:.A) returnType:kotlin.Unit + annotations: + Suppress(names = ['DEPRECATION_ERROR']) $this: VALUE_PARAMETER name: type:.A BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun close (): kotlin.Unit declared in .A' diff --git a/compiler/testData/ir/irText/expressions/kt51036.ir.txt b/compiler/testData/ir/irText/expressions/kt51036.ir.txt index 0e04f54425e..f6c6884b174 100644 --- a/compiler/testData/ir/irText/expressions/kt51036.ir.txt +++ b/compiler/testData/ir/irText/expressions/kt51036.ir.txt @@ -31,6 +31,8 @@ FILE fqName: fileName:/kt51036.kt RETURN type=kotlin.Nothing from='public final fun invoke (): kotlin.Unit [operator] declared in .A' GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit FUN name:close visibility:public modality:FINAL <> ($this:.A) returnType:kotlin.Unit + annotations: + Suppress(names = ['DEPRECATION_ERROR']) $this: VALUE_PARAMETER name: type:.A BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun close (): kotlin.Unit declared in .A' diff --git a/compiler/testData/ir/irText/expressions/kt51036.kt b/compiler/testData/ir/irText/expressions/kt51036.kt index 65e7a58f288..5e68c1acce5 100644 --- a/compiler/testData/ir/irText/expressions/kt51036.kt +++ b/compiler/testData/ir/irText/expressions/kt51036.kt @@ -6,5 +6,6 @@ class A { companion object; operator fun String.invoke() = Unit + @Suppress("DEPRECATION_ERROR") fun close() = synchronized(this) { "Abc" }() } diff --git a/libraries/stdlib/api/js-v1/kotlin.kt b/libraries/stdlib/api/js-v1/kotlin.kt index 27f048496e9..de2ab322359 100644 --- a/libraries/stdlib/api/js-v1/kotlin.kt +++ b/libraries/stdlib/api/js-v1/kotlin.kt @@ -156,7 +156,7 @@ public inline fun runCatching(block: () -> R): kotlin.Result @kotlin.SinceKotlin(version = "1.2") public inline fun suspend(noinline block: suspend () -> R): suspend () -> R -@kotlin.DeprecatedSinceKotlin(warningSince = "1.6") +@kotlin.DeprecatedSinceKotlin(errorSince = "1.9", warningSince = "1.6") @kotlin.Deprecated(message = "Synchronization on any object is not supported in Kotlin/JS", replaceWith = kotlin.ReplaceWith(expression = "run(block)", imports = {})) @kotlin.internal.InlineOnly public inline fun synchronized(lock: kotlin.Any, block: () -> R): R diff --git a/libraries/stdlib/api/js/kotlin.kt b/libraries/stdlib/api/js/kotlin.kt index 912008eee49..0b9850506a7 100644 --- a/libraries/stdlib/api/js/kotlin.kt +++ b/libraries/stdlib/api/js/kotlin.kt @@ -120,7 +120,7 @@ public inline fun runCatching(block: () -> R): kotlin.Result @kotlin.SinceKotlin(version = "1.2") public inline fun suspend(noinline block: suspend () -> R): suspend () -> R -@kotlin.DeprecatedSinceKotlin(warningSince = "1.6") +@kotlin.DeprecatedSinceKotlin(errorSince = "1.9", warningSince = "1.6") @kotlin.Deprecated(message = "Synchronization on any object is not supported in Kotlin/JS", replaceWith = kotlin.ReplaceWith(expression = "run(block)", imports = {})) @kotlin.internal.InlineOnly public inline fun synchronized(lock: kotlin.Any, block: () -> R): R diff --git a/libraries/stdlib/js/src/kotlin/concurrent.kt b/libraries/stdlib/js/src/kotlin/concurrent.kt index 6c265e09579..2d19d1aa381 100644 --- a/libraries/stdlib/js/src/kotlin/concurrent.kt +++ b/libraries/stdlib/js/src/kotlin/concurrent.kt @@ -8,7 +8,7 @@ package kotlin import kotlin.contracts.* -@DeprecatedSinceKotlin(warningSince = "1.6") +@DeprecatedSinceKotlin(warningSince = "1.6", errorSince = "1.9") @Deprecated("Synchronization on any object is not supported in Kotlin/JS", ReplaceWith("run(block)")) @kotlin.internal.InlineOnly @Suppress("UNUSED_PARAMETER")