Files
kotlin-fork/compiler/testData/ir/irText/expressions/floatingPointComparisons/floatingPointEqeq.kt.txt
T
2024-02-16 10:19:38 +00:00

87 lines
1.8 KiB
Kotlin
Vendored

fun test1d(x: Double, y: Double): Boolean {
return ieee754equals(arg0 = x, arg1 = y)
}
fun test1f(x: Float, y: Float): Boolean {
return ieee754equals(arg0 = x, arg1 = y)
}
fun test2d(x: Double, y: Double?): Boolean {
return ieee754equals(arg0 = x, arg1 = y)
}
fun test2f(x: Float, y: Float?): Boolean {
return ieee754equals(arg0 = x, arg1 = y)
}
fun test3d(x: Double, y: Any): Boolean {
return EQEQ(arg0 = x, arg1 = y)
}
fun test3f(x: Float, y: Any): Boolean {
return EQEQ(arg0 = x, arg1 = y)
}
fun test4d(x: Double, y: Number): Boolean {
return EQEQ(arg0 = x, arg1 = y)
}
fun test4f(x: Float, y: Number): Boolean {
return EQEQ(arg0 = x, arg1 = y)
}
fun test5d(x: Double, y: Any): Boolean {
return when {
y is Double -> ieee754equals(arg0 = x, arg1 = y /*as Double */)
else -> false
}
}
fun test5f(x: Float, y: Any): Boolean {
return when {
y is Float -> ieee754equals(arg0 = x, arg1 = y /*as Float */)
else -> false
}
}
fun test6d(x: Any, y: Any): Boolean {
return when {
when {
x is Double -> y is Double
else -> false
} -> ieee754equals(arg0 = x /*as Double */, arg1 = y /*as Double */)
else -> false
}
}
fun test6f(x: Any, y: Any): Boolean {
return when {
when {
x is Float -> y is Float
else -> false
} -> ieee754equals(arg0 = x /*as Float */, arg1 = y /*as Float */)
else -> false
}
}
fun testDF(x: Any, y: Any): Boolean {
return when {
when {
x is Double -> y is Float
else -> false
} -> ieee754equals(arg0 = x /*as Double */, arg1 = y /*as Float */.toDouble())
else -> false
}
}
fun testFD(x: Any, y: Any): Boolean {
return when {
when {
x is Float -> y is Double
else -> false
} -> ieee754equals(arg0 = x /*as Float */.toDouble(), arg1 = y /*as Double */)
else -> false
}
}