Get rid of deprecated IR declaration constructors usages
(cherry picked from commit c4361dfee096c855cf19b7f0303f7957701cd9cd)
This commit is contained in:
committed by
Vasily Levchenko
parent
f3a0435a3a
commit
6f88b2d044
+12
-6
@@ -140,11 +140,14 @@ internal class BuiltInFictitiousFunctionIrClassFactory(
|
|||||||
returnType
|
returnType
|
||||||
)
|
)
|
||||||
|
|
||||||
private val createClassLambda =
|
private val createClassLambda = { s: IrClassSymbol, d: ClassDescriptor ->
|
||||||
{ s: IrClassSymbol -> IrClassImpl(offset, offset, DECLARATION_ORIGIN_FUNCTION_CLASS, s) }
|
IrClassImpl(offset, offset, DECLARATION_ORIGIN_FUNCTION_CLASS, s, d)
|
||||||
|
}
|
||||||
|
|
||||||
private fun createClass(descriptor: FunctionClassDescriptor, declarator: SymbolTable.((IrClassSymbol) -> IrClass) -> IrClass): IrClass {
|
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 =
|
private fun buildClass(descriptor: FunctionClassDescriptor, declarator: SymbolTable.((IrClassSymbol) -> IrClass) -> IrClass): IrClass =
|
||||||
@@ -254,9 +257,12 @@ internal class BuiltInFictitiousFunctionIrClassFactory(
|
|||||||
offset,
|
offset,
|
||||||
offset,
|
offset,
|
||||||
memberOrigin,
|
memberOrigin,
|
||||||
symbol,
|
descriptor,
|
||||||
toIrType(descriptor.type),
|
toIrType(descriptor.type),
|
||||||
varargType?.let { toIrType(it) }).also {
|
varargType?.let { toIrType(it) },
|
||||||
|
descriptor.name,
|
||||||
|
symbol
|
||||||
|
).also {
|
||||||
it.parent = this
|
it.parent = this
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -294,7 +300,7 @@ internal class BuiltInFictitiousFunctionIrClassFactory(
|
|||||||
|
|
||||||
fun createFakeOverrideProperty(descriptor: PropertyDescriptor): IrProperty {
|
fun createFakeOverrideProperty(descriptor: PropertyDescriptor): IrProperty {
|
||||||
val propertyDeclare = { s: IrPropertySymbol ->
|
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)
|
val property = symbolTable?.declareProperty(offset, offset, memberOrigin, descriptor, propertyFactory = propertyDeclare)
|
||||||
?: propertyDeclare(IrPropertySymbolImpl(descriptor))
|
?: propertyDeclare(IrPropertySymbolImpl(descriptor))
|
||||||
|
|||||||
+2
-2
@@ -163,7 +163,7 @@ internal class KonanIrLinker(
|
|||||||
val fqn = packageFragment.fqName
|
val fqn = packageFragment.fqName
|
||||||
return packageToFileMap.getOrPut(packageFragment.fqName) {
|
return packageToFileMap.getOrPut(packageFragment.fqName) {
|
||||||
val fileSymbol = IrFileSymbolImpl(packageFragment)
|
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)
|
moduleFragment.files.add(it)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -174,7 +174,7 @@ internal class KonanIrLinker(
|
|||||||
val irFile = getIrFile(packageDescriptor)
|
val irFile = getIrFile(packageDescriptor)
|
||||||
|
|
||||||
val klass = symbolTable.declareClassFromLinker(descriptor, idSig) { s ->
|
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
|
klass.parent = irFile
|
||||||
|
|||||||
Reference in New Issue
Block a user