Get rid of deprecated IR declaration constructors usages

(cherry picked from commit c4361dfee096c855cf19b7f0303f7957701cd9cd)
This commit is contained in:
Mikhail Glukhikh
2020-05-25 10:35:48 +03:00
committed by Vasily Levchenko
parent f3a0435a3a
commit 6f88b2d044
2 changed files with 14 additions and 8 deletions
@@ -140,11 +140,14 @@ internal class BuiltInFictitiousFunctionIrClassFactory(
returnType
)
private val createClassLambda =
{ s: IrClassSymbol -> IrClassImpl(offset, offset, DECLARATION_ORIGIN_FUNCTION_CLASS, s) }
private val createClassLambda = { s: IrClassSymbol, d: ClassDescriptor ->
IrClassImpl(offset, offset, DECLARATION_ORIGIN_FUNCTION_CLASS, s, d)
}
private fun createClass(descriptor: FunctionClassDescriptor, declarator: SymbolTable.((IrClassSymbol) -> IrClass) -> IrClass): IrClass {
return symbolTable?.declarator(createClassLambda) ?: createClassLambda(IrClassSymbolImpl(descriptor))
return symbolTable?.declarator {
IrClassImpl(offset, offset, DECLARATION_ORIGIN_FUNCTION_CLASS, it, descriptor)
} ?: createClassLambda(IrClassSymbolImpl(descriptor), descriptor)
}
private fun buildClass(descriptor: FunctionClassDescriptor, declarator: SymbolTable.((IrClassSymbol) -> IrClass) -> IrClass): IrClass =
@@ -254,9 +257,12 @@ internal class BuiltInFictitiousFunctionIrClassFactory(
offset,
offset,
memberOrigin,
symbol,
descriptor,
toIrType(descriptor.type),
varargType?.let { toIrType(it) }).also {
varargType?.let { toIrType(it) },
descriptor.name,
symbol
).also {
it.parent = this
}
}
@@ -294,7 +300,7 @@ internal class BuiltInFictitiousFunctionIrClassFactory(
fun createFakeOverrideProperty(descriptor: PropertyDescriptor): IrProperty {
val propertyDeclare = { s: IrPropertySymbol ->
IrPropertyImpl(offset, offset, memberOrigin, s, descriptor.name)
IrPropertyImpl(offset, offset, memberOrigin, descriptor, s, descriptor.name)
}
val property = symbolTable?.declareProperty(offset, offset, memberOrigin, descriptor, propertyFactory = propertyDeclare)
?: propertyDeclare(IrPropertySymbolImpl(descriptor))
@@ -163,7 +163,7 @@ internal class KonanIrLinker(
val fqn = packageFragment.fqName
return packageToFileMap.getOrPut(packageFragment.fqName) {
val fileSymbol = IrFileSymbolImpl(packageFragment)
IrFileImpl(NaiveSourceBasedFileEntryImpl("forward declarations for $fqn"), fileSymbol).also {
IrFileImpl(NaiveSourceBasedFileEntryImpl("forward declarations for $fqn"), fileSymbol, packageFragment.fqName).also {
moduleFragment.files.add(it)
}
}
@@ -174,7 +174,7 @@ internal class KonanIrLinker(
val irFile = getIrFile(packageDescriptor)
val klass = symbolTable.declareClassFromLinker(descriptor, idSig) { s ->
IrClassImpl(offset, offset, FORWARD_DECLARATION_ORIGIN, s)
IrClassImpl(offset, offset, FORWARD_DECLARATION_ORIGIN, s, descriptor)
}
klass.parent = irFile