IR: get overridden directly from IrProperty when resolving fake override

The previous way of getting them either via getter or setter failed on
Java properties which only have a backing field. Now that IrProperty has
overriddenSymbols (after 53c1de172f), it makes sense to use it directly
instead. Use it only in SyntheticAccessorLowering though to avoid
breaking Kotlin/Native (see KT-47019).

 #KT-46900 Fixed
This commit is contained in:
Alexander Udalov
2021-05-27 17:35:36 +02:00
parent af35892007
commit 96f0b53761
8 changed files with 53 additions and 5 deletions
@@ -32581,6 +32581,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes
public void testKt46578_propertyRef() throws Exception {
runTest("compiler/testData/codegen/box/syntheticAccessors/protectedJavaFieldAccessor/kt46578_propertyRef.kt");
}
@TestMetadata("kt46900_jkk_inheritance.kt")
public void testKt46900_jkk_inheritance() throws Exception {
runTest("compiler/testData/codegen/box/syntheticAccessors/protectedJavaFieldAccessor/kt46900_jkk_inheritance.kt");
}
}
@TestMetadata("compiler/testData/codegen/box/syntheticAccessors/protectedMemberReferenceAccessor")