diff --git a/compiler/conditional-preprocessor/src/org.jetbrains.kotlin.preprocessor/Evaluator.kt b/compiler/conditional-preprocessor/src/org.jetbrains.kotlin.preprocessor/Evaluator.kt index 404fdcb8a5e..dd81d9b4e25 100644 --- a/compiler/conditional-preprocessor/src/org.jetbrains.kotlin.preprocessor/Evaluator.kt +++ b/compiler/conditional-preprocessor/src/org.jetbrains.kotlin.preprocessor/Evaluator.kt @@ -19,7 +19,7 @@ package org.jetbrains.kotlin.preprocessor interface Evaluator : (List) -> Boolean interface PlatformEvaluator : Evaluator { - override fun invoke(conditions: List): Boolean = evaluate(conditions.filterIsInstance()) + override fun invoke(conditions: List): Boolean = evaluate(conditions.filterIsInstance()) open fun evaluate(conditions: List): Boolean = conditions.isEmpty() || conditions.any { match(it) } diff --git a/libraries/stdlib/src/generated/_Arrays.kt b/libraries/stdlib/src/generated/_Arrays.kt index 5b821f8bb84..ed9ed9260de 100644 --- a/libraries/stdlib/src/generated/_Arrays.kt +++ b/libraries/stdlib/src/generated/_Arrays.kt @@ -10746,7 +10746,7 @@ public fun Array.fill(element: T, fromIndex: Int = 0, toIndex: Int = size * Returns a list containing all elements that are instances of specified type parameter R. */ @kotlin.jvm.JvmVersion -public inline fun Array<*>.filterIsInstance(): List { +public inline fun Array<*>.filterIsInstance(): List<@kotlin.internal.NoInfer R> { return filterIsInstanceTo(ArrayList()) } diff --git a/libraries/stdlib/src/generated/_Collections.kt b/libraries/stdlib/src/generated/_Collections.kt index 129873d9033..1ed381a2f9d 100644 --- a/libraries/stdlib/src/generated/_Collections.kt +++ b/libraries/stdlib/src/generated/_Collections.kt @@ -1658,7 +1658,7 @@ public fun Iterable.asSequence(): Sequence { * Returns a list containing all elements that are instances of specified type parameter R. */ @kotlin.jvm.JvmVersion -public inline fun Iterable<*>.filterIsInstance(): List { +public inline fun Iterable<*>.filterIsInstance(): List<@kotlin.internal.NoInfer R> { return filterIsInstanceTo(ArrayList()) } diff --git a/libraries/stdlib/src/generated/_Sequences.kt b/libraries/stdlib/src/generated/_Sequences.kt index 7a5ffc3d6fe..11308c8aba6 100644 --- a/libraries/stdlib/src/generated/_Sequences.kt +++ b/libraries/stdlib/src/generated/_Sequences.kt @@ -1032,7 +1032,7 @@ public fun Sequence.asSequence(): Sequence { * Returns a sequence containing all elements that are instances of specified type parameter R. */ @kotlin.jvm.JvmVersion -public inline fun Sequence<*>.filterIsInstance(): Sequence { +public inline fun Sequence<*>.filterIsInstance(): Sequence<@kotlin.internal.NoInfer R> { return filter { it is R } as Sequence } diff --git a/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt b/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt index af18f17baa5..37d2add89a0 100644 --- a/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt +++ b/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt @@ -194,7 +194,7 @@ fun specialJVM(): List { templates add f("filterIsInstance()") { doc { "Returns a list containing all elements that are instances of specified type parameter R." } typeParam("reified R") - returns("List") + returns("List<@kotlin.internal.NoInfer R>") inline(true) receiverAsterisk(true) body { @@ -205,7 +205,7 @@ fun specialJVM(): List { exclude(ArraysOfPrimitives, Strings) doc(Sequences) { "Returns a sequence containing all elements that are instances of specified type parameter R." } - returns(Sequences) { "Sequence" } + returns(Sequences) { "Sequence<@kotlin.internal.NoInfer R>" } inline(true) receiverAsterisk(true) body(Sequences) {