[FIR] Pass diagnosticReporter in Fir2IrConfiguration

This parameter will be used to report diagnostics from constant
evaluator, in addition to report diagnostic from actualizer.
This commit is contained in:
Ivan Kylchik
2023-07-16 18:54:41 +02:00
committed by Space Team
parent 6e45c9d4c7
commit 84159596bd
12 changed files with 57 additions and 33 deletions
@@ -30,6 +30,7 @@ import org.jetbrains.kotlin.config.CompilerConfiguration
import org.jetbrains.kotlin.config.JVMConfigurationKeys
import org.jetbrains.kotlin.config.languageVersionSettings
import org.jetbrains.kotlin.constant.EvaluatedConstTracker
import org.jetbrains.kotlin.diagnostics.DiagnosticReporterFactory
import org.jetbrains.kotlin.fir.FirAnalyzerFacade
import org.jetbrains.kotlin.fir.FirTestSessionFactoryHelper
import org.jetbrains.kotlin.fir.backend.Fir2IrCommonMemberStorage
@@ -126,9 +127,11 @@ object GenerationUtils {
)
val fir2IrExtensions = JvmFir2IrExtensions(configuration, JvmIrDeserializerImpl(), JvmIrMangler)
val diagnosticReporter = DiagnosticReporterFactory.createReporter()
val fir2IrConfiguration = Fir2IrConfiguration(
languageVersionSettings = configuration.languageVersionSettings,
diagnosticReporter = diagnosticReporter,
linkViaSignatures = linkViaSignatures,
evaluatedConstTracker = configuration
.putIfAbsent(CommonConfigurationKeys.EVALUATED_CONST_TRACKER, EvaluatedConstTracker.create()),
@@ -160,6 +163,8 @@ object GenerationUtils {
true
).jvmBackendClassResolver(
FirJvmBackendClassResolver(components)
).diagnosticReporter(
diagnosticReporter
).build()
generationState.beforeCompile()