PSI2IR: Fix delegated members generation

When generating bodies for members implemented by delegation, invoke
corresponding delegate member, not an interface member. Otherwise we
might lose platform-specific nullability information in case of mixed
Kotlin-Java hierarchies, as in
implicitNotNullOnDelegatedImplementation.kt
This commit is contained in:
Dmitry Petrov
2019-12-30 16:04:24 +03:00
parent cc0b231b3b
commit d622542824
9 changed files with 670 additions and 93 deletions
@@ -125,6 +125,11 @@ public class IrTextTestCaseGenerated extends AbstractIrTextTestCase {
runTest("compiler/testData/ir/irText/classes/enumWithSecondaryCtor.kt");
}
@TestMetadata("implicitNotNullOnDelegatedImplementation.kt")
public void testImplicitNotNullOnDelegatedImplementation() throws Exception {
runTest("compiler/testData/ir/irText/classes/implicitNotNullOnDelegatedImplementation.kt");
}
@TestMetadata("initBlock.kt")
public void testInitBlock() throws Exception {
runTest("compiler/testData/ir/irText/classes/initBlock.kt");