blob: 7444717e53a332c2df3a3f546e327695d69f8073 [file]
// LANGUAGE: +StrictEquals
class A(val n: Int) {
override fun equals(@EqualityBound(A::class) other: Any?): Boolean = n == other.n
}
fun box(): String {
val x: A? = A(42)
val y: Any? = A(42)
if (x != null && x == y) {
if (y.n != 42) return "FAIL 1"
} else {
return "FAIL 2"
}
val nullA: A? = null
if (nullA == y) return "FAIL 3"
if (nullA != null) return "FAIL 4"
return "OK"
}