From 9e3d0b002a5c2e81d43351c9b8550a3f4ccfb8f9 Mon Sep 17 00:00:00 2001 From: Niko Matsakis Date: Mon, 21 Apr 2014 17:58:52 -0400 Subject: librustc: Remove the fallback to `int` from typechecking. This breaks a fair amount of code. The typical patterns are: * `for _ in range(0, 10)`: change to `for _ in range(0u, 10)`; * `println!("{}", 3)`: change to `println!("{}", 3i)`; * `[1, 2, 3].len()`: change to `[1i, 2, 3].len()`. RFC #30. Closes #6023. [breaking-change] --- src/libstd/num/mod.rs | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) (limited to 'src/libstd/num') diff --git a/src/libstd/num/mod.rs b/src/libstd/num/mod.rs index 7301f9b08e9..50b2e0ff343 100644 --- a/src/libstd/num/mod.rs +++ b/src/libstd/num/mod.rs @@ -128,11 +128,11 @@ pub fn from_str_radix(str: &str, radix: uint) -> Option { /// Helper function for testing numeric operations #[cfg(test)] pub fn test_num(ten: T, two: T) { - assert_eq!(ten.add(&two), cast(12).unwrap()); - assert_eq!(ten.sub(&two), cast(8).unwrap()); - assert_eq!(ten.mul(&two), cast(20).unwrap()); - assert_eq!(ten.div(&two), cast(5).unwrap()); - assert_eq!(ten.rem(&two), cast(0).unwrap()); + assert_eq!(ten.add(&two), cast(12i).unwrap()); + assert_eq!(ten.sub(&two), cast(8i).unwrap()); + assert_eq!(ten.mul(&two), cast(20i).unwrap()); + assert_eq!(ten.div(&two), cast(5i).unwrap()); + assert_eq!(ten.rem(&two), cast(0i).unwrap()); assert_eq!(ten.add(&two), ten + two); assert_eq!(ten.sub(&two), ten - two); @@ -760,14 +760,14 @@ mod tests { assert_eq!(result, naive_pow($num, $exp)); }} ) - assert_pow!((3, 0 ) => 1); - assert_pow!((5, 1 ) => 5); - assert_pow!((-4, 2 ) => 16); - assert_pow!((0.5, 5 ) => 0.03125); - assert_pow!((8, 3 ) => 512); - assert_pow!((8.0, 5 ) => 32768.0); - assert_pow!((8.5, 5 ) => 44370.53125); - assert_pow!((2u64, 50) => 1125899906842624); + assert_pow!((3i, 0 ) => 1); + assert_pow!((5i, 1 ) => 5); + assert_pow!((-4i, 2 ) => 16); + assert_pow!((0.5f64, 5 ) => 0.03125); + assert_pow!((8i, 3 ) => 512); + assert_pow!((8.0f64, 5 ) => 32768.0); + assert_pow!((8.5f64, 5 ) => 44370.53125); + assert_pow!((2u64, 50) => 1125899906842624); } } @@ -781,7 +781,7 @@ mod bench { #[bench] fn bench_pow_function(b: &mut Bencher) { - let v = Vec::from_fn(1024, |n| n); - b.iter(|| {v.iter().fold(0, |old, new| num::pow(old, *new));}); + let v = Vec::from_fn(1024u, |n| n); + b.iter(|| {v.iter().fold(0u, |old, new| num::pow(old, *new));}); } } -- cgit 1.4.1-3-g733a5