FIR: use ClassBuilderMode.FULL in FirMetadataSerializer

ABI is a special mode which is used only by the deprecated legacy
implementation of jvm-abi-gen. It is more reliable to use the standard
FULL mode to prevent divergence in behavior from normal compilation.
This commit is contained in:
Alexander Udalov
2023-03-06 12:57:19 +01:00
committed by Space Team
parent ab7b429298
commit 77c68fc809
@@ -10,7 +10,6 @@ import org.jetbrains.kotlin.backend.jvm.JvmLoweredDeclarationOrigin
import org.jetbrains.kotlin.backend.jvm.metadata.MetadataSerializer
import org.jetbrains.kotlin.codegen.ClassBuilderMode
import org.jetbrains.kotlin.codegen.serialization.JvmSerializationBindings
import org.jetbrains.kotlin.codegen.state.GenerationState
import org.jetbrains.kotlin.config.*
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.backend.Fir2IrComponents
@@ -92,7 +91,7 @@ fun makeLocalFirMetadataSerializerForMetadataSource(
globalSerializationBindings,
configuration.getBoolean(JVMConfigurationKeys.USE_TYPE_TABLE),
targetId.name,
ClassBuilderMode.ABI,
ClassBuilderMode.FULL,
configuration.getBoolean(JVMConfigurationKeys.DISABLE_PARAM_ASSERTIONS),
session.languageVersionSettings.apiVersion >= ApiVersion.KOTLIN_1_4 &&
!configuration.getBoolean(JVMConfigurationKeys.NO_UNIFIED_NULL_CHECKS),