FIR2IR: Fix IAE for case of local override of a method with defaults

It was happening because for MyClass.foo we didn't set overriddenSymbols
properly because in ClassMemberGenerator.convertFunctionContent we
used incorrect containingFirClass that was pointing to anonymous class
instead of MyClass.

^KT-58902 Fixed
This commit is contained in:
Denis.Zharkov
2023-06-07 13:54:40 +02:00
committed by Space Team
parent b04848d179
commit c474c54903
21 changed files with 422 additions and 2 deletions
@@ -0,0 +1,15 @@
// ISSUE: KT-58902
fun box(): String {
return run {
open class A {
open fun foo(x: String, y: String? = null): String = x + (y ?: "K")
}
class MyClass : A() {
override fun foo(x: String, y: String?) = super.foo(x, y)
}
MyClass()
}.foo("O")
}