diff --git a/libraries/tools/kotlin-stdlib-gen/src/templates/Engine.kt b/libraries/tools/kotlin-stdlib-gen/src/templates/Engine.kt index b1d148641ce..f127b6d133b 100644 --- a/libraries/tools/kotlin-stdlib-gen/src/templates/Engine.kt +++ b/libraries/tools/kotlin-stdlib-gen/src/templates/Engine.kt @@ -105,6 +105,7 @@ class GenericFunction(val signature: String, val keyword: String = "fun") { val doc = FamilyProperty() val platformName = PrimitiveProperty() val inline = FamilyProperty() + val jvmOnly = FamilyProperty() val typeParams = ArrayList() val returns = FamilyProperty() val operator = FamilyProperty() @@ -364,6 +365,10 @@ class GenericFunction(val signature: String, val keyword: String = "fun") { ?.let { platformName -> builder.append("@kotlin.jvm.JvmName(\"${platformName}\")\n")} } + if (jvmOnly[f] ?: false) { + builder.append("@kotlin.jvm.JvmVersion\n") + } + annotations[f]?.let { builder.append(it).append('\n') } builder.append("public ") diff --git a/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt b/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt index 4e7fdac0d63..8817bcc4d15 100644 --- a/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt +++ b/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt @@ -258,5 +258,7 @@ fun specialJVM(): List { } } + templates.forEach { it.jvmOnly(true) } + return templates } \ No newline at end of file