// IGNORE_BACKEND: JS_IR, JS, NATIVE // IGNORE_BACKEND: JS_IR_ES6 // WITH_REFLECT import kotlin.test.assertNotEquals open class A { fun foo(t: T) {} } open class B : A() class C : B() fun box(): String { val afoo = A::class.members.single { it.name == "foo" } val bfoo = B::class.members.single { it.name == "foo" } val cfoo = C::class.members.single { it.name == "foo" } assertNotEquals(afoo, bfoo) assertNotEquals(afoo.hashCode(), bfoo.hashCode()) assertNotEquals(bfoo, cfoo) assertNotEquals(bfoo.hashCode(), cfoo.hashCode()) return "OK" }