blob: d6aea50d5862d0ad229cd7d5f569b1befc288ad6 [file]
// WITH_STDLIB
private fun isPosZero(x: Float) = x == 0.0f && 1.0f / x == Float.POSITIVE_INFINITY
private fun isNegZero(x: Float) = x == 0.0f && 1.0f / x == Float.NEGATIVE_INFINITY
fun box(): String {
if (!((Float.NaN + 1.0f).isNaN())) return "fail1"
if (!((1.0f + Float.NaN).isNaN())) return "fail2"
if (!((Float.POSITIVE_INFINITY + Float.NEGATIVE_INFINITY).isNaN())) return "fail3"
if (!isNegZero((-0.0f) + (-0.0f))) return "fail4"
if (!isPosZero((+0.0f) + (-0.0f))) return "fail5"
if (!isPosZero(0.0f - 0.0f)) return "fail6"
if (0.0f + Float.MIN_VALUE != Float.MIN_VALUE) return "fail7"
return "OK"
}