Skip to content
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

Cannot compile code with expect type #303

Closed
micHar opened this issue Aug 8, 2022 · 2 comments
Closed

Cannot compile code with expect type #303

micHar opened this issue Aug 8, 2022 · 2 comments

Comments

@micHar
Copy link

micHar commented Aug 8, 2022

I'm using your fantastic library to test my multiplatform annotation processor which uses common source code and generates ios source sets. The tests look sth like this.

Now everything works fine until I add expect modifier to the test code, e. g. expect interface InterfaceGenerationExample. There is a COMPILATION_ERROR and the error is e: /var/folders/8n/.../T/.../sources/interface1.kt: (7, 1): The feature "multi platform projects" is experimental and should be enabled explicitly.
Right now the tests are run in jvmTest sourceSet, but I also tried running them in commonTest source set and the result is the same. For both kapt and ksp.

Is there any way to test code with expect / actual modifiers?

@micHar
Copy link
Author

micHar commented Aug 9, 2022

I tried adding kotlin.mpp.stability.nowarn=true as per these recommendations, but I have a feeling that this library compiles in a different context than the source set of the tests. Maybe there's a way to configure its compiler with such flags?

@tschuchortdev
Copy link
Owner

kotlincArguments = listOf("-Xmulti-platform") works. I found this through trial and error, since the compiler flags are mostly undocumented. A KotlinCompilation.multiplatform: Boolean option will be in the next release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants