@@ -513,7 +513,7 @@ fn test_encode_decode_format() {
513
513
514
514
#[ test]
515
515
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 ( ) {
517
517
let err = ShapeError :: invalid_axis ( i, 0 ) ;
518
518
assert_eq ! ( err. info_expected_index( ) , Some ( i) ) ;
519
519
let err = ShapeError :: invalid_axis ( 0 , i) ;
@@ -525,7 +525,12 @@ fn test_encode_decode() {
525
525
assert_eq ! ( err. info_actual_index( ) , Some ( ( 1 << 24 ) + 1 ) ) ;
526
526
527
527
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 ) ) ;
529
534
assert_eq ! ( err. info_expected_index( ) , None ) ;
530
535
assert_eq ! ( err. info_actual_index( ) , None ) ;
531
536
0 commit comments