Files
kotlin-fork/compiler/testData/ir/irText/firProblems/valueClassEquals.fir.kt.txt
T
Ivan Kylchik dd264cff50 [IR] Split const folding into necessary one and for optimizations only
In this commit we have a lot of change in test data. This was caused
by the way where we evaluate constants. We split constant evaluation
into two distinct parts: only necessary evaluations for `fir2ir`
(like const val and annotations) and optimizations for lowering.
Now we don't do all constant evaluation on `fir2ir`, but IR
dump is executed after this phase, so test data changed.

#KT-58923
2023-06-14 19:02:39 +00:00

38 lines
646 B
Kotlin
Vendored

@JvmInline
value class Z {
constructor(s: String) /* primary */ {
super/*Any*/()
/* <init>() */
}
val s: String
field = s
get
override operator fun equals(other: Any?): Boolean {
when {
other !is Z -> return false
}
val tmp0_other_with_cast: Z = other as Z
when {
EQEQ(arg0 = <this>.#s, arg1 = tmp0_other_with_cast.#s).not() -> return false
}
return true
}
override fun hashCode(): Int {
return <this>.#s.hashCode()
}
override fun toString(): String {
return "Z(" + "s=" + <this>.#s + ")"
}
}
val equals: KFunction2<Z, Any?, Boolean>
field = Z::equals
get