This repository was archived by the owner on Feb 2, 2025. It is now read-only.
This repository was archived by the owner on Feb 2, 2025. It is now read-only.
Compilation error when applying the plugin #55
Open
Description
Sorry in advance, I don't know anything about compiler plugin, so I don't know how to interpret this message at all. Maybe it's obvious.
Reproduction:
- Repository https://gitlab.com/opensavvy/groundwork/prepared
- Commit
89e127b54fa2eff5fbba2f94ad91f1b461b6bfd8
- Add the Kotest plugin, version 5.9.1 to
:runners:runner-kotest
- Run
./gradlew :runners:runner-kotest
This creates the following compilation error:
e: Compilation failed: IrPropertyPublicSymbolImpl for opensavvy.prepared.runner.kotest/launcher|{}launcher[0] is already bound: PROPERTY name:launcher visibility:public modality:FINAL [val]
* Source files:
* Compiler version: 2.0.0
* Output kind: PROGRAM
e: java.lang.IllegalStateException: IrPropertyPublicSymbolImpl for opensavvy.prepared.runner.kotest/launcher|{}launcher[0] is already bound: PROPERTY name:launcher visibility:public modality:FINAL [val]
at org.jetbrains.kotlin.ir.symbols.impl.IrBindablePublicSymbolBase.bind(IrPublicSymbolBase.kt:69)
at org.jetbrains.kotlin.ir.declarations.impl.IrPropertyImpl.<init>(IrPropertyImpl.kt:65)
at org.jetbrains.kotlin.ir.declarations.impl.AbstractIrFactoryImpl.createProperty(IrFactoryImpl.kt:297)
By using the good ol' method of commenting out code until it works, I believe this class is the one that causes the crash:
abstract class PreparedSpec(body: SuiteDsl.() -> Unit) : StringSpec({
preparedSuite { body() }
})
I guess the plugin is trying to register it as an actual test because it implements StringSpec
, but since it's abstract
it can't?
Metadata
Metadata
Assignees
Labels
No labels