[IR Actualizer] Set overridden symbols for property accessors
This commit is contained in:
committed by
Space Team
parent
8ccbbedbd5
commit
3f89f03b54
+5
@@ -12,6 +12,7 @@ import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.overrides.IrOverrideChecker
|
||||
import org.jetbrains.kotlin.ir.symbols.IrClassSymbol
|
||||
import org.jetbrains.kotlin.ir.symbols.IrPropertySymbol
|
||||
import org.jetbrains.kotlin.ir.symbols.IrSymbol
|
||||
import org.jetbrains.kotlin.ir.types.IrTypeSystemContext
|
||||
import org.jetbrains.kotlin.ir.types.classifierOrFail
|
||||
@@ -102,6 +103,10 @@ internal class ActualFakeOverridesAdder(
|
||||
|
||||
if (override != null) {
|
||||
override.overriddenSymbols += symbolFromSupertype
|
||||
if (override is IrProperty && symbolFromSupertype is IrPropertySymbol) {
|
||||
override.getter?.let { getter -> symbolFromSupertype.owner.getter?.symbol?.let { getter.overriddenSymbols += it } }
|
||||
override.setter?.let { setter -> symbolFromSupertype.owner.setter?.symbol?.let { setter.overriddenSymbols += it } }
|
||||
}
|
||||
continue
|
||||
}
|
||||
}
|
||||
|
||||
-3
@@ -1,10 +1,7 @@
|
||||
// IGNORE_BACKEND_K1: JS, JS_IR, JS_IR_ES6, NATIVE, WASM
|
||||
// WITH_STDLIB
|
||||
// !LANGUAGE: +MultiPlatformProjects
|
||||
// IGNORE_BACKEND_K2: JVM_IR
|
||||
// REASON: K2 incorrectly generates IR for S1.p f/o
|
||||
// IGNORE_CODEGEN_WITH_IR_FAKE_OVERRIDE_GENERATION: KT-62535
|
||||
|
||||
// MODULE: common
|
||||
// TARGET_PLATFORM: Common
|
||||
// FILE: common.kt
|
||||
|
||||
Reference in New Issue
Block a user