Skip to content

Commit 31abaa1

Browse files
committed
FIX 1 << 56 on 32-bit platforms
1 parent 815738f commit 31abaa1

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

src/error.rs

+7-2
Original file line numberDiff line numberDiff line change
@@ -513,7 +513,7 @@ fn test_encode_decode_format() {
513513

514514
#[test]
515515
fn test_encode_decode() {
516-
for &i in [0, 1, 2, 3, 10, 32, 256, 1736, 16300, (1 << 56) - 1].iter() {
516+
for &i in [0, 1, 2, 3, 10, 32, 256, 1736, 16300].iter() {
517517
let err = ShapeError::invalid_axis(i, 0);
518518
assert_eq!(err.info_expected_index(), Some(i));
519519
let err = ShapeError::invalid_axis(0, i);
@@ -525,7 +525,12 @@ fn test_encode_decode() {
525525
assert_eq!(err.info_actual_index(), Some((1 << 24) + 1));
526526

527527
if size_of::<usize>() > 4 {
528-
let err = ShapeError::invalid_axis(1 << 56, 1 << 56);
528+
// use .wrapping_shl(_) for portability
529+
let err = ShapeError::invalid_axis(1usize.wrapping_shl(56) - 1, 0);
530+
assert_eq!(err.info_expected_index(), Some(1usize.wrapping_shl(56) - 1));
531+
assert_eq!(err.info_actual_index(), Some(0));
532+
533+
let err = ShapeError::invalid_axis(1usize.wrapping_shl(56), 1usize.wrapping_shl(56));
529534
assert_eq!(err.info_expected_index(), None);
530535
assert_eq!(err.info_actual_index(), None);
531536

0 commit comments

Comments
 (0)