diff --git a/kotlin-native/runtime/build.gradle.kts b/kotlin-native/runtime/build.gradle.kts index 65758d8367b..a4677dcb571 100644 --- a/kotlin-native/runtime/build.gradle.kts +++ b/kotlin-native/runtime/build.gradle.kts @@ -553,6 +553,7 @@ konanArtifacts { extraOpts(project.globalBuildArgs) extraOpts( "-Werror", + "-Xexplicit-api=strict", "-Xexpect-actual-classes", "-module-name", "stdlib", "-opt-in=kotlin.RequiresOptIn", diff --git a/libraries/stdlib/build.gradle.kts b/libraries/stdlib/build.gradle.kts index b01ca6bee07..be36677b355 100644 --- a/libraries/stdlib/build.gradle.kts +++ b/libraries/stdlib/build.gradle.kts @@ -65,6 +65,8 @@ kotlin { val renderDiagnosticNames by extra(project.kotlinBuildProperties.renderDiagnosticNames) val diagnosticNamesArg = if (renderDiagnosticNames) "-Xrender-internal-diagnostic-names" else null + explicitApi() + metadata { compilations { all { @@ -74,6 +76,7 @@ kotlin { "-Xallow-kotlin-package", "-module-name", "kotlin-stdlib-common", "-Xexpect-actual-classes", + "-Xexplicit-api=strict", diagnosticNamesArg, ) } @@ -132,6 +135,7 @@ kotlin { "-Xallow-kotlin-package", "-Xmultifile-parts-inherit", "-Xno-new-java-annotation-targets", + "-Xexplicit-api=strict", diagnosticNamesArg, ) } @@ -147,6 +151,7 @@ kotlin { "-Xallow-kotlin-package", "-Xmultifile-parts-inherit", "-Xno-new-java-annotation-targets", + "-Xexplicit-api=strict", diagnosticNamesArg, ) } @@ -204,9 +209,10 @@ kotlin { val main by getting main.apply { kotlinOptions { - freeCompilerArgs += listOf( + freeCompilerArgs += listOfNotNull( "-Xir-module-name=kotlin", "-Xexpect-actual-classes", + diagnosticNamesArg, ) if (!kotlinBuildProperties.disableWerror) { @@ -223,7 +229,11 @@ kotlin { (this as KotlinTargetWithNodeJsDsl).nodejs() compilations { all { - kotlinOptions.freeCompilerArgs += listOf("-Xallow-kotlin-package", "-Xexpect-actual-classes") + kotlinOptions.freeCompilerArgs += listOfNotNull( + "-Xallow-kotlin-package", + "-Xexpect-actual-classes", + diagnosticNamesArg + ) } val main by getting main.apply {