[IR] Implement checker for friendship of modules in fake override builder

- pass corresponding information to FO builder
 - implement check
 - fix KT-47192 and KT-48673
This commit is contained in:
Roman Artemev
2021-10-06 14:51:06 +03:00
committed by teamcityserver
parent ed8e7c754d
commit e6de812788
9 changed files with 56 additions and 33 deletions
@@ -233,7 +233,8 @@ fun makeSimpleFakeOverrideBuilder(
symbolTable,
JvmIrMangler,
typeSystemContext,
fakeOverrideDeclarationTable = PrePopulatedDeclarationTable(symbolDeserializer.deserializedSymbols)
fakeOverrideDeclarationTable = PrePopulatedDeclarationTable(symbolDeserializer.deserializedSymbols),
friendModules = emptyMap() // TODO: provide friend modules
)
}
@@ -41,7 +41,8 @@ class JvmIrLinker(
private val manglerDesc: JvmDescriptorMangler
) : KotlinIrLinker(currentModule, messageLogger, typeSystem.irBuiltIns, symbolTable, emptyList()) {
override val fakeOverrideBuilder = FakeOverrideBuilder(this, symbolTable, JvmIrMangler, typeSystem)
// TODO: provide friend modules
override val fakeOverrideBuilder = FakeOverrideBuilder(this, symbolTable, JvmIrMangler, typeSystem, emptyMap())
private val javaName = Name.identifier("java")