@@ -2,11 +2,13 @@ package com.github.codeql
22
33import com.intellij.mock.MockProject
44import org.jetbrains.kotlin.backend.common.IrElementTransformerVoidWithContext
5+ import org.jetbrains.kotlin.backend.common.extensions.FirIncompatiblePluginAPI
56import org.jetbrains.kotlin.backend.common.extensions.IrGenerationExtension
67import org.jetbrains.kotlin.backend.common.extensions.IrPluginContext
78import org.jetbrains.kotlin.backend.common.ir.addDispatchReceiver
89import org.jetbrains.kotlin.backend.common.lower.DeclarationIrBuilder
910import org.jetbrains.kotlin.compiler.plugin.ComponentRegistrar
11+ import org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi
1012import org.jetbrains.kotlin.config.CompilerConfiguration
1113import org.jetbrains.kotlin.descriptors.ClassKind
1214import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
@@ -35,6 +37,7 @@ import org.jetbrains.kotlin.ir.util.defaultType
3537import org.jetbrains.kotlin.name.FqName
3638import org.jetbrains.kotlin.name.Name
3739
40+ @OptIn(ExperimentalCompilerApi ::class )
3841class TestComponentRegistrar : ComponentRegistrar {
3942 override fun registerProjectComponents (
4043 project : MockProject ,
@@ -188,6 +191,7 @@ class IrAdder : IrGenerationExtension {
188191 }
189192
190193 private fun addFunWithUnsafeCoerce (declaration : IrClass ) {
194+ @OptIn(FirIncompatiblePluginAPI ::class )
191195 val uintType = pluginContext.referenceClass(FqName (" kotlin.UInt" ))!! .owner.typeWith()
192196 declaration.declarations.add(pluginContext.irFactory.buildFun {
193197 name = Name .identifier(" <fn>" )
@@ -264,6 +268,7 @@ class IrAdder : IrGenerationExtension {
264268 name = Name .identifier(" start" )
265269 origin = IrDeclarationOrigin .IR_EXTERNAL_JAVA_DECLARATION_STUB
266270 modality = Modality .FINAL
271+ @OptIn(FirIncompatiblePluginAPI ::class )
267272 returnType = pluginContext.referenceClass(FqName (" java.lang.Process" ))!! .owner.defaultType
268273 }.apply {
269274 addDispatchReceiver { type = processBuilderStubType }
0 commit comments