Files
kotlin-fork/compiler/testData/codegen/box/inlineClasses/inlineClassEqualsOverriddenForCollections.kt
T
2022-11-30 18:55:42 +00:00

23 lines
461 B
Kotlin
Vendored

// WITH_STDLIB
// LANGUAGE: +ValueClasses, +CustomEqualsInValueClasses
// TARGET_BACKEND: JVM_IR
// CHECK_BYTECODE_LISTING
import kotlin.math.abs
@JvmInline
value class IC(val x: Double) {
operator fun equals(other: IC): Boolean {
return abs(x - other.x) < 0.1
}
override fun hashCode(): Int {
return 0
}
}
fun box(): String {
val set = setOf(IC(1.0), IC(1.5), IC(1.501))
return if (set.size == 2) "OK" else "Fail"
}