Skip to content

Commit e8dfbac

Browse files
Rephrase -0.0 docs
1 parent 6fdb8d8 commit e8dfbac

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

library/std/src/primitive_docs.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -807,10 +807,10 @@ mod prim_tuple {}
807807
///
808808
/// Additionally, `f32` can represent some special values:
809809
///
810-
/// - `-0`: this value exists due to how floats are encoded. -0 == 0 is true, but for other
811-
/// operations they are not equal and the difference can be useful to certain algorithms.
812-
/// For example, operations on negative numbers that underflow to 0 will usually generate -0
813-
/// instead of +0.
810+
/// - -0.0: IEEE 754 floating point numbers have a bit that indicates their sign, so -0.0 is a
811+
/// possible value. For comparison `-0.0 == +0.0` is true but floating point operations can
812+
/// carry the sign bit through arithmetic operations. This means `-1.0 * 0.0` produces -0.0 and
813+
/// a negative number rounded to a value smaller than a float can represent also produces -0.0.
814814
/// - [∞](#associatedconstant.INFINITY) and
815815
/// [−∞](#associatedconstant.NEG_INFINITY): these result from calculations
816816
/// like `1.0 / 0.0`.

0 commit comments

Comments
 (0)