File tree 4 files changed +40
-32
lines changed
4 files changed +40
-32
lines changed Original file line number Diff line number Diff line change @@ -224,14 +224,16 @@ impl f128 {
224
224
225
225
/// Not a Number (NaN).
226
226
///
227
- /// Note that IEEE 754 doesn't define just a single NaN value;
228
- /// a plethora of bit patterns are considered to be NaN.
229
- /// Furthermore, the standard makes a difference
230
- /// between a "signaling" and a "quiet" NaN,
231
- /// and allows inspecting its "payload" (the unspecified bits in the bit pattern).
232
- /// This constant isn't guaranteed to equal to any specific NaN bitpattern,
233
- /// and the stability of its representation over Rust versions
234
- /// and target platforms isn't guaranteed.
227
+ /// Note that IEEE 754 doesn't define just a single NaN value; a plethora of bit patterns are
228
+ /// considered to be NaN. Furthermore, the standard makes a difference between a "signaling" and
229
+ /// a "quiet" NaN, and allows inspecting its "payload" (the unspecified bits in the bit pattern)
230
+ /// and its sign. See the [specification of NaN bit patterns](f32#nan-bit-patterns) for more
231
+ /// info.
232
+ ///
233
+ /// This constant is guaranteed to be a quiet NaN (on targets that follow the Rust assumptions
234
+ /// that the quiet/signaling bit being set to 1 indicates a quiet NaN). Beyond that, nothing is
235
+ /// guaranteed about the specific bit pattern chosen here: both payload and sign are arbitrary.
236
+ /// The concrete bit pattern may change across Rust versions and target platforms.
235
237
#[ allow( clippy:: eq_op) ]
236
238
#[ rustc_diagnostic_item = "f128_nan" ]
237
239
#[ unstable( feature = "f128" , issue = "116909" ) ]
Original file line number Diff line number Diff line change @@ -219,14 +219,16 @@ impl f16 {
219
219
220
220
/// Not a Number (NaN).
221
221
///
222
- /// Note that IEEE 754 doesn't define just a single NaN value;
223
- /// a plethora of bit patterns are considered to be NaN.
224
- /// Furthermore, the standard makes a difference
225
- /// between a "signaling" and a "quiet" NaN,
226
- /// and allows inspecting its "payload" (the unspecified bits in the bit pattern).
227
- /// This constant isn't guaranteed to equal to any specific NaN bitpattern,
228
- /// and the stability of its representation over Rust versions
229
- /// and target platforms isn't guaranteed.
222
+ /// Note that IEEE 754 doesn't define just a single NaN value; a plethora of bit patterns are
223
+ /// considered to be NaN. Furthermore, the standard makes a difference between a "signaling" and
224
+ /// a "quiet" NaN, and allows inspecting its "payload" (the unspecified bits in the bit pattern)
225
+ /// and its sign. See the [specification of NaN bit patterns](f32#nan-bit-patterns) for more
226
+ /// info.
227
+ ///
228
+ /// This constant is guaranteed to be a quiet NaN (on targets that follow the Rust assumptions
229
+ /// that the quiet/signaling bit being set to 1 indicates a quiet NaN). Beyond that, nothing is
230
+ /// guaranteed about the specific bit pattern chosen here: both payload and sign are arbitrary.
231
+ /// The concrete bit pattern may change across Rust versions and target platforms.
230
232
#[ allow( clippy:: eq_op) ]
231
233
#[ rustc_diagnostic_item = "f16_nan" ]
232
234
#[ unstable( feature = "f16" , issue = "116909" ) ]
Original file line number Diff line number Diff line change @@ -470,14 +470,16 @@ impl f32 {
470
470
471
471
/// Not a Number (NaN).
472
472
///
473
- /// Note that IEEE 754 doesn't define just a single NaN value;
474
- /// a plethora of bit patterns are considered to be NaN.
475
- /// Furthermore, the standard makes a difference
476
- /// between a "signaling" and a "quiet" NaN,
477
- /// and allows inspecting its "payload" (the unspecified bits in the bit pattern).
478
- /// This constant isn't guaranteed to equal to any specific NaN bitpattern,
479
- /// and the stability of its representation over Rust versions
480
- /// and target platforms isn't guaranteed.
473
+ /// Note that IEEE 754 doesn't define just a single NaN value; a plethora of bit patterns are
474
+ /// considered to be NaN. Furthermore, the standard makes a difference between a "signaling" and
475
+ /// a "quiet" NaN, and allows inspecting its "payload" (the unspecified bits in the bit pattern)
476
+ /// and its sign. See the [specification of NaN bit patterns](f32#nan-bit-patterns) for more
477
+ /// info.
478
+ ///
479
+ /// This constant is guaranteed to be a quiet NaN (on targets that follow the Rust assumptions
480
+ /// that the quiet/signaling bit being set to 1 indicates a quiet NaN). Beyond that, nothing is
481
+ /// guaranteed about the specific bit pattern chosen here: both payload and sign are arbitrary.
482
+ /// The concrete bit pattern may change across Rust versions and target platforms.
481
483
#[ stable( feature = "assoc_int_consts" , since = "1.43.0" ) ]
482
484
#[ rustc_diagnostic_item = "f32_nan" ]
483
485
#[ allow( clippy:: eq_op) ]
Original file line number Diff line number Diff line change @@ -469,14 +469,16 @@ impl f64 {
469
469
470
470
/// Not a Number (NaN).
471
471
///
472
- /// Note that IEEE 754 doesn't define just a single NaN value;
473
- /// a plethora of bit patterns are considered to be NaN.
474
- /// Furthermore, the standard makes a difference
475
- /// between a "signaling" and a "quiet" NaN,
476
- /// and allows inspecting its "payload" (the unspecified bits in the bit pattern).
477
- /// This constant isn't guaranteed to equal to any specific NaN bitpattern,
478
- /// and the stability of its representation over Rust versions
479
- /// and target platforms isn't guaranteed.
472
+ /// Note that IEEE 754 doesn't define just a single NaN value; a plethora of bit patterns are
473
+ /// considered to be NaN. Furthermore, the standard makes a difference between a "signaling" and
474
+ /// a "quiet" NaN, and allows inspecting its "payload" (the unspecified bits in the bit pattern)
475
+ /// and its sign. See the [specification of NaN bit patterns](f32#nan-bit-patterns) for more
476
+ /// info.
477
+ ///
478
+ /// This constant is guaranteed to be a quiet NaN (on targets that follow the Rust assumptions
479
+ /// that the quiet/signaling bit being set to 1 indicates a quiet NaN). Beyond that, nothing is
480
+ /// guaranteed about the specific bit pattern chosen here: both payload and sign are arbitrary.
481
+ /// The concrete bit pattern may change across Rust versions and target platforms.
480
482
#[ rustc_diagnostic_item = "f64_nan" ]
481
483
#[ stable( feature = "assoc_int_consts" , since = "1.43.0" ) ]
482
484
#[ allow( clippy:: eq_op) ]
You can’t perform that action at this time.
0 commit comments