From 1a19f9877ad1d582ac80f8e765eff879e00222ea Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Wed, 28 Oct 2015 16:05:51 -0700 Subject: [PATCH] Comment how the significand limits lossless int->float conversion --- src/libcore/num/mod.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/libcore/num/mod.rs b/src/libcore/num/mod.rs index 38ad19c3cbe13..a79bdd5961e96 100644 --- a/src/libcore/num/mod.rs +++ b/src/libcore/num/mod.rs @@ -1515,6 +1515,10 @@ impl_from! { u16, i32 } impl_from! { u16, i64 } impl_from! { u32, i64 } +// Note: integers can only be represented with full precision in a float if +// they fit in the significand, which is 24 bits in f32 and 53 bits in f64. +// Lossy float conversions are not implemented at this time. + // Signed -> Float impl_from! { i8, f32 } impl_from! { i8, f64 }