Skip to content

constant-negative-zero

Default severity: warning

Go’s ideal constants do not preserve a zero sign. Literal forms such as -0.0, -float64(0), and float32(-0) therefore produce positive zero at runtime. Use math.Copysign when a true IEEE negative zero is required.

negativeZero := -0.0
negativeZero := math.Copysign(0, -1)