[FIR] Fix scope of Java classes that inherit multiple properties with the same name

Use the receiver and context receiver types in addition to the property
name as cache keys for the synthetic property generation.
Also, fix logic that searches for accessor overrides by comparing
receiver and context receiver types.
Finally, let synthetic properties delegate their receiverParameter and
contextReceivers to their accessors.

#KT-65464 Fixed
#KT-66195
This commit is contained in:
Kirill Rakhman
2024-02-28 12:11:09 +01:00
committed by Space Team
parent 89ecb92551
commit 0889770ccd
6 changed files with 53 additions and 13 deletions
@@ -51,7 +51,7 @@ class F : J() {
class F2 : JOverridesRegular() {
fun test() {
a
"".<!UNRESOLVED_REFERENCE!>a<!>
"".a
}
}
@@ -65,6 +65,6 @@ class F3 : JOverridesExtension() {
class F4 : JOVerridesBoth() {
fun test() {
a
"".<!UNRESOLVED_REFERENCE!>a<!>
"".a
}
}