mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-11-04 06:56:14 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			153 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			153 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:18:20
 | 
						|
   |
 | 
						|
LL |     const N: i32 = T::N << 42;
 | 
						|
   |                    ^^^^^^^^^^ attempt to shift left by `42_i32`, which would overflow
 | 
						|
   |
 | 
						|
note: the lint level is defined here
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:10:9
 | 
						|
   |
 | 
						|
LL | #![warn(arithmetic_overflow)]
 | 
						|
   |         ^^^^^^^^^^^^^^^^^^^
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:22:13
 | 
						|
   |
 | 
						|
LL |     let _ = x << 42;
 | 
						|
   |             ^^^^^^^ attempt to shift left by `42_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:27:15
 | 
						|
   |
 | 
						|
LL |       let n = 1u8 << 8;
 | 
						|
   |               ^^^^^^^^ attempt to shift left by `8_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:29:15
 | 
						|
   |
 | 
						|
LL |       let n = 1u16 << 16;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift left by `16_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:31:15
 | 
						|
   |
 | 
						|
LL |       let n = 1u32 << 32;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift left by `32_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:33:15
 | 
						|
   |
 | 
						|
LL |       let n = 1u64 << 64;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift left by `64_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:35:15
 | 
						|
   |
 | 
						|
LL |       let n = 1i8 << 8;
 | 
						|
   |               ^^^^^^^^ attempt to shift left by `8_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:37:15
 | 
						|
   |
 | 
						|
LL |       let n = 1i16 << 16;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift left by `16_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:39:15
 | 
						|
   |
 | 
						|
LL |       let n = 1i32 << 32;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift left by `32_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:41:15
 | 
						|
   |
 | 
						|
LL |       let n = 1i64 << 64;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift left by `64_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:44:15
 | 
						|
   |
 | 
						|
LL |       let n = 1u8 >> 8;
 | 
						|
   |               ^^^^^^^^ attempt to shift right by `8_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:46:15
 | 
						|
   |
 | 
						|
LL |       let n = 1u16 >> 16;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift right by `16_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:48:15
 | 
						|
   |
 | 
						|
LL |       let n = 1u32 >> 32;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift right by `32_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:50:15
 | 
						|
   |
 | 
						|
LL |       let n = 1u64 >> 64;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift right by `64_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:52:15
 | 
						|
   |
 | 
						|
LL |       let n = 1i8 >> 8;
 | 
						|
   |               ^^^^^^^^ attempt to shift right by `8_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:54:15
 | 
						|
   |
 | 
						|
LL |       let n = 1i16 >> 16;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift right by `16_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:56:15
 | 
						|
   |
 | 
						|
LL |       let n = 1i32 >> 32;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift right by `32_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:58:15
 | 
						|
   |
 | 
						|
LL |       let n = 1i64 >> 64;
 | 
						|
   |               ^^^^^^^^^^ attempt to shift right by `64_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:62:15
 | 
						|
   |
 | 
						|
LL |       let n = n << 8;
 | 
						|
   |               ^^^^^^ attempt to shift left by `8_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:64:15
 | 
						|
   |
 | 
						|
LL |       let n = 1u8 << -8;
 | 
						|
   |               ^^^^^^^^^ attempt to shift left by `-8_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:69:15
 | 
						|
   |
 | 
						|
LL |       let n = 1u8 << (4+4);
 | 
						|
   |               ^^^^^^^^^^^^ attempt to shift left by `8_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:71:15
 | 
						|
   |
 | 
						|
LL |       let n = 1i64 >> [64][0];
 | 
						|
   |               ^^^^^^^^^^^^^^^ attempt to shift right by `64_i32`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:77:15
 | 
						|
   |
 | 
						|
LL |       let n = 1_isize << BITS;
 | 
						|
   |               ^^^^^^^^^^^^^^^ attempt to shift left by `%BITS%`, which would overflow
 | 
						|
 | 
						|
warning: this arithmetic operation will overflow
 | 
						|
  --> $DIR/lint-exceeding-bitshifts.rs:78:15
 | 
						|
   |
 | 
						|
LL |       let n = 1_usize << BITS;
 | 
						|
   |               ^^^^^^^^^^^^^^^ attempt to shift left by `%BITS%`, which would overflow
 | 
						|
 | 
						|
warning: 24 warnings emitted
 | 
						|
 |