diff --git a/src/error.rs b/src/error.rs index 744ff2c94..3677923fd 100644 --- a/src/error.rs +++ b/src/error.rs @@ -513,7 +513,7 @@ fn test_encode_decode_format() { #[test] fn test_encode_decode() { - for &i in [0, 1, 2, 3, 10, 32, 256, 1736, 16300, (1 << 56) - 1].iter() { + for &i in [0, 1, 2, 3, 10, 32, 256, 1736, 16300].iter() { let err = ShapeError::invalid_axis(i, 0); assert_eq!(err.info_expected_index(), Some(i)); let err = ShapeError::invalid_axis(0, i); @@ -525,7 +525,12 @@ fn test_encode_decode() { assert_eq!(err.info_actual_index(), Some((1 << 24) + 1)); if size_of::() > 4 { - let err = ShapeError::invalid_axis(1 << 56, 1 << 56); + // use .wrapping_shl(_) for portability + let err = ShapeError::invalid_axis(1usize.wrapping_shl(56) - 1, 0); + assert_eq!(err.info_expected_index(), Some(1usize.wrapping_shl(56) - 1)); + assert_eq!(err.info_actual_index(), Some(0)); + + let err = ShapeError::invalid_axis(1usize.wrapping_shl(56), 1usize.wrapping_shl(56)); assert_eq!(err.info_expected_index(), None); assert_eq!(err.info_actual_index(), None);