[FIR2IR] Load builtin classes instead of creating them on the fly
This change uncovered KT-61282, which was hidden because of incorrect module fragments used as parent for builtin classes
This commit is contained in:
committed by
Space Team
parent
f95ed2b588
commit
3f2e996803
@@ -31,6 +31,7 @@ val ConeKotlinType.isThrowableOrNullableThrowable: Boolean get() = isAnyOfBuilti
|
||||
val ConeKotlinType.isChar: Boolean get() = isBuiltinType(StandardClassIds.Char, false)
|
||||
val ConeKotlinType.isCharOrNullableChar: Boolean get() = isAnyOfBuiltinType(setOf(StandardClassIds.Char))
|
||||
val ConeKotlinType.isString: Boolean get() = isBuiltinType(StandardClassIds.String, false)
|
||||
val ConeKotlinType.isNullableString: Boolean get() = isBuiltinType(StandardClassIds.String, true)
|
||||
|
||||
val ConeKotlinType.isEnum: Boolean get() = isBuiltinType(StandardClassIds.Enum, false)
|
||||
|
||||
|
||||
@@ -564,8 +564,7 @@ class Fir2IrConverter(
|
||||
components.visibilityConverter = visibilityConverter
|
||||
components.typeConverter = Fir2IrTypeConverter(components)
|
||||
val irBuiltIns = initializedIrBuiltIns ?: IrBuiltInsOverFir(
|
||||
components, fir2IrConfiguration.languageVersionSettings, moduleDescriptor, irMangler,
|
||||
fir2IrConfiguration.languageVersionSettings.getFlag(AnalysisFlags.builtInsFromSources) || kotlinBuiltIns !== DefaultBuiltIns.Instance
|
||||
components, fir2IrConfiguration.languageVersionSettings, moduleDescriptor, irMangler
|
||||
)
|
||||
components.irBuiltIns = irBuiltIns
|
||||
val conversionScope = Fir2IrConversionScope()
|
||||
@@ -578,6 +577,7 @@ class Fir2IrConverter(
|
||||
components.annotationsFromPluginRegistrar = Fir2IrAnnotationsFromPluginRegistrar(components)
|
||||
|
||||
fir2IrExtensions.registerDeclarations(commonMemberStorage.symbolTable)
|
||||
irBuiltIns.initialize()
|
||||
|
||||
val irModuleFragment = IrModuleFragmentImpl(moduleDescriptor, irBuiltIns)
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user