-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compose Compiler 1.5.12+ causes Only @HiddenFromObjC declaration can be a subtype of @HiddenFromObjC declaration #4777
Compose Compiler 1.5.12+ causes Only @HiddenFromObjC declaration can be a subtype of @HiddenFromObjC declaration #4777
Comments
the problem was in name clash ( |
Awesome thank you |
compose compiler version updated to 1.5.13.2 (kotlin 1.9.23) / 1.5.13.3 (kotlin 1.9.24) Fixes #4777 ## Testing - compose multiplatform testsuite ## Release Notes ### Highlights #### Compose compiler - updated to version built from google jetpack compose compiler 1.5.13
compose compiler version updated to 1.5.13.2 (kotlin 1.9.23) / 1.5.13.3 (kotlin 1.9.24) Fixes #4777 ## Testing - compose multiplatform testsuite ## Release Notes ### Highlights #### Compose compiler - updated to version built from google jetpack compose compiler 1.5.13
hey @shishkin-pavel i am using kotlin rc3 and compose rc02 and facing this issue, what should i do to get rid of it? |
Hi, @Kashif-E , make sure you updated compose compiler to version |
@shishkin-pavel i am using kotlin 2.0.0-rc3 and compose 1.6.10-rc02 |
@Kashif-E could you share some reproducer? probably this is another similar problem |
@shishkin-pavel I'm seeing this again in 1.6.10 with Kotlin 2.0.0 stable and the Compose compiler from the Kotlin plugin. Here's the error on this PR updating to Kotlin 2.0 (I'm going to disable building ios now so it doesn't block me). It's being reported on the first line here: abstract class ImmichSessionPortal<K, V, I, C, E, S> : VirtuePortal<K, V, I, C, E, S, ImmichSessionComponent>()
where V : ViceView<I, S>, C : ViceCompositor<I, S>, E : ViceEffects {
abstract override val parentComponent: ImmichSessionComponent
abstract override val component: ImmichSessionPortalComponent<K, V, I, C, E, S>
}
interface ImmichSessionPortalComponent<K, V, I, C, E, S> :
VirtuePortalComponent<V, I, C, E, S, ImmichSessionComponent>
where V : ViceView<I, S>, C : ViceCompositor<I, S>, E : ViceEffects {
@get:Provides val route: K
} |
@shishkin-pavel Can this get reopened? I'm now starting to see this in multiple libraries, and it's getting harder to keep disabling ios 😬 In this case it was working fine with Kotlin 2.0.0 and CMP 1.6.10, but starting throwing the error on the first line here on this PR: abstract class SampleDestination<V, I, C, S> : ViceDestination<V, I, C, DummyEffects, S>()
where V : ViceView<I, S>, C : ViceCompositor<I, S> {
override val effects = DummyEffects
@Composable final override fun OnBackPressedHandler(enabled: Boolean, onBackPressed: () -> Unit) {}
} It seems to work if I add @OptIn(ExperimentalObjCRefinement::class)
@HiddenFromObjC to |
@eygraber sure, ill take a look at it today |
@eygraber sorry for the delay. for Kotlin version 2, the publication of compose compiler artifact occurs simultaneously with the release of Kotlin compiler and the necessary changes have not yet made it into the release, but I hope that they will make it into the next one. probably it would make sense to close current issue only when they would be merged and new version of kotlin compiler and compose compiler woudl be published |
@shishkin-pavel thanks, looking forward to the fix! |
fixes JetBrains/compose-multiplatform#4777 `fqName` were used before, but they aren't unique for example, we can have class, several functions and property with the same fqName, so descriptors should be used (they are guaranteed to be unique for current compilation set/module) Test: tested against Compose Multiplatform testsuite Change-Id: I44a56c52267e548639a08a949b3e9447422b0533 ( https://android-review.googlesource.com/q/I44a56c52267e548639a08a949b3e9447422b0533 ) Signed-off-by: Pavel Shishkin <pavel.shishkin@jetbrains.com> Moved from: androidx/androidx@6c3fb21
fixes JetBrains/compose-multiplatform#4777 `fqName` were used before, but they aren't unique for example, we can have class, several functions and property with the same fqName, so descriptors should be used (they are guaranteed to be unique for current compilation set/module) Test: tested against Compose Multiplatform testsuite Change-Id: I44a56c52267e548639a08a949b3e9447422b0533 ( https://android-review.googlesource.com/q/I44a56c52267e548639a08a949b3e9447422b0533 ) Signed-off-by: Pavel Shishkin <pavel.shishkin@jetbrains.com> Moved from: androidx/androidx@6c3fb21
fixes JetBrains/compose-multiplatform#4777 `fqName` were used before, but they aren't unique for example, we can have class, several functions and property with the same fqName, so descriptors should be used (they are guaranteed to be unique for current compilation set/module) Test: tested against Compose Multiplatform testsuite Change-Id: I44a56c52267e548639a08a949b3e9447422b0533 ( https://android-review.googlesource.com/q/I44a56c52267e548639a08a949b3e9447422b0533 ) Signed-off-by: Pavel Shishkin <pavel.shishkin@jetbrains.com> Moved from: androidx/androidx@6c3fb21
fixes JetBrains/compose-multiplatform#4777 `fqName` were used before, but they aren't unique for example, we can have class, several functions and property with the same fqName, so descriptors should be used (they are guaranteed to be unique for current compilation set/module) Test: tested against Compose Multiplatform testsuite Change-Id: I44a56c52267e548639a08a949b3e9447422b0533 ( https://android-review.googlesource.com/q/I44a56c52267e548639a08a949b3e9447422b0533 ) Signed-off-by: Pavel Shishkin <pavel.shishkin@jetbrains.com> Moved from: androidx/androidx@6c3fb21
Should this be fixed in 2.0.10? |
This is still failing with 2.0.10-RC |
Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks. |
Describe the bug
Using the compose compiler v1.5.12+ results in the following error when compiling for ios targets:
Affected platforms
Versions
To Reproduce
Steps to reproduce the behavior:
./gradlew assemble
on https://github.com/eygraber/vice/tree/renovate/kotlin-monorepoExpected behavior
No error
Additional context
The error is reported on this line:
where
ViceSource
is:Originally reported here because I thought it was an issue with Kotlin 1.9.24, but then I tested on Kotlin 1.9.23 with all compiler versions starting from 1.5.12 and was able to repro the issue.
The text was updated successfully, but these errors were encountered: