@@ -513,7 +513,7 @@ fn test_encode_decode_format() {
513513
514514#[ test]
515515fn 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