diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/kotlinTargets.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/kotlinTargets.kt index e90ba73a194..15a1cbc1ce2 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/kotlinTargets.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/kotlinTargets.kt @@ -125,19 +125,14 @@ abstract class AbstractKotlinTarget( adhocVariant as SoftwareComponent - // Resolve the values early here instead of passing `adhocVariant` to the SoftwareComponent object below (which would break - // configuration caching---see KT-43054). Passing `kotlinVariant` to the object did not break configuration caching, but we also - // avoid doing that just to be safe. - val coordinates = (kotlinVariant as? ComponentWithCoordinates)?.coordinates - val variants = (kotlinVariant as? KotlinVariantWithMetadataVariant)?.variants.orEmpty() - val name = adhocVariant.name - val usages = (adhocVariant as SoftwareComponentInternal).usages - object : ComponentWithVariants, ComponentWithCoordinates, SoftwareComponentInternal { - override fun getCoordinates() = coordinates - override fun getVariants(): Set = variants - override fun getName(): String = name - override fun getUsages(): MutableSet = usages + override fun getCoordinates() = (kotlinVariant as? ComponentWithCoordinates)?.coordinates + + override fun getVariants(): Set = + (kotlinVariant as? KotlinVariantWithMetadataVariant)?.variants.orEmpty() + + override fun getName(): String = adhocVariant.name + override fun getUsages(): MutableSet = (adhocVariant as SoftwareComponentInternal).usages } }.toSet() }