JetBrains / compose-multiplatform

Compose Multiplatform, a modern UI framework for Kotlin that makes building performant and beautiful user interfaces easy and enjoyable.
https://jetbrains.com/lp/compose-multiplatform
Apache License 2.0
16.35k stars 1.18k forks source link

compiler plugin: k/js IrSimpleFunctionPublicSymbolImpl is already bound #2929

Closed eymar closed 2 months ago

eymar commented 1 year ago

Describe the bug Initially, the error was:

e: java.lang.IllegalStateException: IdSignature clash: ...

But the WA was applied:

tasks.withType<org.jetbrains.kotlin.gradle.dsl.KotlinJsCompile>().configureEach {
    kotlinOptions.freeCompilerArgs += listOf(
        "-Xklib-enable-signature-clash-checks=false",
    )
}

and then another error showed up:

Using Kotlin/JS IR backend
i: found daemon on port 17448 (41271503 ms old), trying to connect
i: connected to the daemon
e: java.lang.IllegalStateException: IrSimpleFunctionPublicSymbolImpl for com.github.jetbrains.rssreader.compose/$get-navigationBars$$composable|8383160220186553660[0] is already bound: FUN DEFAULT_PROPERTY_ACCESSOR name:$get-navigationBars$$composable visibility:internal modality:FINAL <> ($receiver:androidx.compose.foundation.layout.WindowInsets.Companion, $composer:androidx.compose.runtime.Composer?, $changed:kotlin.Int) returnType:androidx.compose.foundation.layout.WindowInsets
        at org.jetbrains.kotlin.ir.symbols.impl.IrBindablePublicSymbolBase.bind(IrPublicSymbolBase.kt:58)
        at org.jetbrains.kotlin.ir.declarations.impl.IrFunctionImpl.<init>(IrFunctionImpl.kt:100)

image

Affected platforms Select one of the platforms below:

Versions

eymar commented 1 year ago

The reproducer:

https://github.com/Kotlin/kmm-production-sample/tree/issue-2929 ./gradlew :composeApp:jsBrowserRun -i

okushnikov commented 3 months ago

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.