mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-16 13:05:18 +03:00
e9ede27a5d
These were probably added automatically to avoid code churn. I'd like to get rid of them bit by bit, so here's the first bit
62 lines
1.6 KiB
Rust
62 lines
1.6 KiB
Rust
#![warn(clippy::cast_abs_to_unsigned)]
|
|
#![allow(unused)]
|
|
|
|
fn main() {
|
|
let x: i32 = -42;
|
|
let y: u32 = x.unsigned_abs();
|
|
//~^ cast_abs_to_unsigned
|
|
println!("The absolute value of {x} is {y}");
|
|
|
|
let a: i32 = -3;
|
|
let _: usize = a.unsigned_abs() as usize;
|
|
//~^ cast_abs_to_unsigned
|
|
let _: usize = a.unsigned_abs() as _;
|
|
//~^ cast_abs_to_unsigned
|
|
let _ = a.unsigned_abs() as usize;
|
|
//~^ cast_abs_to_unsigned
|
|
|
|
let a: i64 = -3;
|
|
let _ = a.unsigned_abs() as usize;
|
|
//~^ cast_abs_to_unsigned
|
|
let _ = a.unsigned_abs() as u8;
|
|
//~^ cast_abs_to_unsigned
|
|
let _ = a.unsigned_abs() as u16;
|
|
//~^ cast_abs_to_unsigned
|
|
let _ = a.unsigned_abs() as u32;
|
|
//~^ cast_abs_to_unsigned
|
|
let _ = a.unsigned_abs();
|
|
//~^ cast_abs_to_unsigned
|
|
let _ = a.unsigned_abs() as u128;
|
|
//~^ cast_abs_to_unsigned
|
|
|
|
let a: isize = -3;
|
|
let _ = a.unsigned_abs();
|
|
//~^ cast_abs_to_unsigned
|
|
let _ = a.unsigned_abs() as u8;
|
|
//~^ cast_abs_to_unsigned
|
|
let _ = a.unsigned_abs() as u16;
|
|
//~^ cast_abs_to_unsigned
|
|
let _ = a.unsigned_abs() as u32;
|
|
//~^ cast_abs_to_unsigned
|
|
let _ = a.unsigned_abs() as u64;
|
|
//~^ cast_abs_to_unsigned
|
|
let _ = a.unsigned_abs() as u128;
|
|
//~^ cast_abs_to_unsigned
|
|
|
|
let _ = (x as i64 - y as i64).unsigned_abs() as u32;
|
|
//~^ cast_abs_to_unsigned
|
|
}
|
|
|
|
#[clippy::msrv = "1.50"]
|
|
fn msrv_1_50() {
|
|
let x: i32 = 10;
|
|
assert_eq!(10u32, x.abs() as u32);
|
|
}
|
|
|
|
#[clippy::msrv = "1.51"]
|
|
fn msrv_1_51() {
|
|
let x: i32 = 10;
|
|
assert_eq!(10u32, x.unsigned_abs());
|
|
//~^ cast_abs_to_unsigned
|
|
}
|