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