[JS IR] Do not copy interface method if base class inherits it

^KT-58599 Fixed
This commit is contained in:
Alexander Korepanov
2023-05-30 08:22:43 +00:00
committed by Space Team
parent 9ca9fc9c68
commit 8066f1b7d2
54 changed files with 886 additions and 8 deletions
@@ -0,0 +1,19 @@
fun box(stepId: Int): String {
val expected = when (stepId) {
0 -> 9
1 -> 11
2 -> 13
3 -> 15
4, 5 -> 16
6 -> 16 + 177
7 -> 12
else -> return "Unknown"
}
val x = test()
if (expected != x) {
return "Fail $expected != $x"
}
return "OK"
}
@@ -0,0 +1,16 @@
STEP 0:
dependencies: lib1, lib2
modifications:
U : test.0.kt -> test.kt
added file: m.kt, test.kt
STEP 1..3:
dependencies: lib1, lib2
updated imports: test.kt
STEP 4:
dependencies: lib1, lib2
modifications:
U : test.4.kt -> test.kt
modified ir: test.kt
STEP 5..7:
dependencies: lib1, lib2
updated imports: test.kt
@@ -0,0 +1,6 @@
fun test(): Int {
val b = getObjectB()
val a = getObjectA()
return b.test() + b.testProp + b.testWithDefault(2) + b.testGeneric(100) +
a.test() + a.testProp + a.testWithDefault() + a.testGeneric(77)
}
@@ -0,0 +1,6 @@
fun test(): Int {
val b = getObjectB()
val a = getObjectA()
return b.test() + b.testProp + b.testWithDefault(2) + b.testGeneric(100) +
a.test() + a.testProp + a.testWithDefault(2) + a.testGeneric(77)
}