mirror of
https://github.com/rust-lang/rust-clippy
synced 2024-11-27 23:20:39 +00:00
add generics in test
This commit is contained in:
parent
94e586e85d
commit
d2de5769a1
3 changed files with 89 additions and 39 deletions
|
@ -1,7 +1,7 @@
|
|||
//@run-rustfix
|
||||
#![warn(clippy::unnecessary_cast)]
|
||||
#![allow(
|
||||
unused_must_use,
|
||||
unused,
|
||||
clippy::borrow_as_ptr,
|
||||
clippy::no_effect,
|
||||
clippy::nonstandard_macro_braces,
|
||||
|
@ -11,6 +11,14 @@
|
|||
type PtrConstU8 = *const u8;
|
||||
type PtrMutU8 = *mut u8;
|
||||
|
||||
fn owo<T>(ptr: *const T) -> *const T {
|
||||
ptr
|
||||
}
|
||||
|
||||
fn uwu<T, U>(ptr: *const T) -> *const U {
|
||||
ptr as *const U
|
||||
}
|
||||
|
||||
#[rustfmt::skip]
|
||||
fn main() {
|
||||
// Test cast_unnecessary
|
||||
|
@ -25,6 +33,8 @@ fn main() {
|
|||
1_i32;
|
||||
1_f32;
|
||||
|
||||
let _: *mut u8 = [1u8, 2].as_ptr() as *mut u8;
|
||||
|
||||
[1u8, 2].as_ptr();
|
||||
[1u8, 2].as_ptr() as *mut u8;
|
||||
[1u8, 2].as_mut_ptr();
|
||||
|
@ -36,6 +46,9 @@ fn main() {
|
|||
let _: *const u8 = [1u8, 2].as_ptr() as _;
|
||||
let _: *mut u8 = [1u8, 2].as_mut_ptr() as _;
|
||||
|
||||
owo::<u32>([1u32].as_ptr());
|
||||
uwu::<u32, u8>([1u32].as_ptr());
|
||||
|
||||
// macro version
|
||||
macro_rules! foo {
|
||||
($a:ident, $b:ident) => {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
//@run-rustfix
|
||||
#![warn(clippy::unnecessary_cast)]
|
||||
#![allow(
|
||||
unused_must_use,
|
||||
unused,
|
||||
clippy::borrow_as_ptr,
|
||||
clippy::no_effect,
|
||||
clippy::nonstandard_macro_braces,
|
||||
|
@ -11,6 +11,14 @@
|
|||
type PtrConstU8 = *const u8;
|
||||
type PtrMutU8 = *mut u8;
|
||||
|
||||
fn owo<T>(ptr: *const T) -> *const T {
|
||||
ptr as *const T
|
||||
}
|
||||
|
||||
fn uwu<T, U>(ptr: *const T) -> *const U {
|
||||
ptr as *const U
|
||||
}
|
||||
|
||||
#[rustfmt::skip]
|
||||
fn main() {
|
||||
// Test cast_unnecessary
|
||||
|
@ -25,6 +33,8 @@ fn main() {
|
|||
1_i32 as i32;
|
||||
1_f32 as f32;
|
||||
|
||||
let _: *mut u8 = [1u8, 2].as_ptr() as *const u8 as *mut u8;
|
||||
|
||||
[1u8, 2].as_ptr() as *const u8;
|
||||
[1u8, 2].as_ptr() as *mut u8;
|
||||
[1u8, 2].as_mut_ptr() as *mut u8;
|
||||
|
@ -36,6 +46,9 @@ fn main() {
|
|||
let _: *const u8 = [1u8, 2].as_ptr() as _;
|
||||
let _: *mut u8 = [1u8, 2].as_mut_ptr() as _;
|
||||
|
||||
owo::<u32>([1u32].as_ptr()) as *const u32;
|
||||
uwu::<u32, u8>([1u32].as_ptr()) as *const u8;
|
||||
|
||||
// macro version
|
||||
macro_rules! foo {
|
||||
($a:ident, $b:ident) => {
|
||||
|
|
|
@ -1,202 +1,226 @@
|
|||
error: casting integer literal to `i32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:17:5
|
||||
error: casting raw pointers to the same type and constness is unnecessary (`*const T` -> `*const T`)
|
||||
--> $DIR/unnecessary_cast.rs:15:5
|
||||
|
|
||||
LL | 1i32 as i32;
|
||||
| ^^^^^^^^^^^ help: try: `1_i32`
|
||||
LL | ptr as *const T
|
||||
| ^^^^^^^^^^^^^^^ help: try: `ptr`
|
||||
|
|
||||
= note: `-D clippy::unnecessary-cast` implied by `-D warnings`
|
||||
|
||||
error: casting integer literal to `i32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:25:5
|
||||
|
|
||||
LL | 1i32 as i32;
|
||||
| ^^^^^^^^^^^ help: try: `1_i32`
|
||||
|
||||
error: casting float literal to `f32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:18:5
|
||||
--> $DIR/unnecessary_cast.rs:26:5
|
||||
|
|
||||
LL | 1f32 as f32;
|
||||
| ^^^^^^^^^^^ help: try: `1_f32`
|
||||
|
||||
error: casting to the same type is unnecessary (`bool` -> `bool`)
|
||||
--> $DIR/unnecessary_cast.rs:19:5
|
||||
--> $DIR/unnecessary_cast.rs:27:5
|
||||
|
|
||||
LL | false as bool;
|
||||
| ^^^^^^^^^^^^^ help: try: `false`
|
||||
|
||||
error: casting integer literal to `i32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:22:5
|
||||
--> $DIR/unnecessary_cast.rs:30:5
|
||||
|
|
||||
LL | -1_i32 as i32;
|
||||
| ^^^^^^^^^^^^^ help: try: `-1_i32`
|
||||
|
||||
error: casting integer literal to `i32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:23:5
|
||||
--> $DIR/unnecessary_cast.rs:31:5
|
||||
|
|
||||
LL | - 1_i32 as i32;
|
||||
| ^^^^^^^^^^^^^^ help: try: `- 1_i32`
|
||||
|
||||
error: casting float literal to `f32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:24:5
|
||||
--> $DIR/unnecessary_cast.rs:32:5
|
||||
|
|
||||
LL | -1f32 as f32;
|
||||
| ^^^^^^^^^^^^ help: try: `-1_f32`
|
||||
|
||||
error: casting integer literal to `i32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:25:5
|
||||
--> $DIR/unnecessary_cast.rs:33:5
|
||||
|
|
||||
LL | 1_i32 as i32;
|
||||
| ^^^^^^^^^^^^ help: try: `1_i32`
|
||||
|
||||
error: casting float literal to `f32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:26:5
|
||||
--> $DIR/unnecessary_cast.rs:34:5
|
||||
|
|
||||
LL | 1_f32 as f32;
|
||||
| ^^^^^^^^^^^^ help: try: `1_f32`
|
||||
|
||||
error: casting raw pointers to the same type and constness is unnecessary (`*const u8` -> `*const u8`)
|
||||
--> $DIR/unnecessary_cast.rs:28:5
|
||||
--> $DIR/unnecessary_cast.rs:36:22
|
||||
|
|
||||
LL | let _: *mut u8 = [1u8, 2].as_ptr() as *const u8 as *mut u8;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `[1u8, 2].as_ptr()`
|
||||
|
||||
error: casting raw pointers to the same type and constness is unnecessary (`*const u8` -> `*const u8`)
|
||||
--> $DIR/unnecessary_cast.rs:38:5
|
||||
|
|
||||
LL | [1u8, 2].as_ptr() as *const u8;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `[1u8, 2].as_ptr()`
|
||||
|
||||
error: casting raw pointers to the same type and constness is unnecessary (`*mut u8` -> `*mut u8`)
|
||||
--> $DIR/unnecessary_cast.rs:30:5
|
||||
--> $DIR/unnecessary_cast.rs:40:5
|
||||
|
|
||||
LL | [1u8, 2].as_mut_ptr() as *mut u8;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `[1u8, 2].as_mut_ptr()`
|
||||
|
||||
error: casting raw pointers to the same type and constness is unnecessary (`*const u32` -> `*const u32`)
|
||||
--> $DIR/unnecessary_cast.rs:49:5
|
||||
|
|
||||
LL | owo::<u32>([1u32].as_ptr()) as *const u32;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `owo::<u32>([1u32].as_ptr())`
|
||||
|
||||
error: casting raw pointers to the same type and constness is unnecessary (`*const u8` -> `*const u8`)
|
||||
--> $DIR/unnecessary_cast.rs:50:5
|
||||
|
|
||||
LL | uwu::<u32, u8>([1u32].as_ptr()) as *const u8;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `uwu::<u32, u8>([1u32].as_ptr())`
|
||||
|
||||
error: casting integer literal to `f32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:78:9
|
||||
--> $DIR/unnecessary_cast.rs:91:9
|
||||
|
|
||||
LL | 100 as f32;
|
||||
| ^^^^^^^^^^ help: try: `100_f32`
|
||||
|
||||
error: casting integer literal to `f64` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:79:9
|
||||
--> $DIR/unnecessary_cast.rs:92:9
|
||||
|
|
||||
LL | 100 as f64;
|
||||
| ^^^^^^^^^^ help: try: `100_f64`
|
||||
|
||||
error: casting integer literal to `f64` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:80:9
|
||||
--> $DIR/unnecessary_cast.rs:93:9
|
||||
|
|
||||
LL | 100_i32 as f64;
|
||||
| ^^^^^^^^^^^^^^ help: try: `100_f64`
|
||||
|
||||
error: casting integer literal to `f32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:81:17
|
||||
--> $DIR/unnecessary_cast.rs:94:17
|
||||
|
|
||||
LL | let _ = -100 as f32;
|
||||
| ^^^^^^^^^^^ help: try: `-100_f32`
|
||||
|
||||
error: casting integer literal to `f64` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:82:17
|
||||
--> $DIR/unnecessary_cast.rs:95:17
|
||||
|
|
||||
LL | let _ = -100 as f64;
|
||||
| ^^^^^^^^^^^ help: try: `-100_f64`
|
||||
|
||||
error: casting integer literal to `f64` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:83:17
|
||||
--> $DIR/unnecessary_cast.rs:96:17
|
||||
|
|
||||
LL | let _ = -100_i32 as f64;
|
||||
| ^^^^^^^^^^^^^^^ help: try: `-100_f64`
|
||||
|
||||
error: casting float literal to `f32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:84:9
|
||||
--> $DIR/unnecessary_cast.rs:97:9
|
||||
|
|
||||
LL | 100. as f32;
|
||||
| ^^^^^^^^^^^ help: try: `100_f32`
|
||||
|
||||
error: casting float literal to `f64` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:85:9
|
||||
--> $DIR/unnecessary_cast.rs:98:9
|
||||
|
|
||||
LL | 100. as f64;
|
||||
| ^^^^^^^^^^^ help: try: `100_f64`
|
||||
|
||||
error: casting integer literal to `u32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:97:9
|
||||
--> $DIR/unnecessary_cast.rs:110:9
|
||||
|
|
||||
LL | 1 as u32;
|
||||
| ^^^^^^^^ help: try: `1_u32`
|
||||
|
||||
error: casting integer literal to `i32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:98:9
|
||||
--> $DIR/unnecessary_cast.rs:111:9
|
||||
|
|
||||
LL | 0x10 as i32;
|
||||
| ^^^^^^^^^^^ help: try: `0x10_i32`
|
||||
|
||||
error: casting integer literal to `usize` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:99:9
|
||||
--> $DIR/unnecessary_cast.rs:112:9
|
||||
|
|
||||
LL | 0b10 as usize;
|
||||
| ^^^^^^^^^^^^^ help: try: `0b10_usize`
|
||||
|
||||
error: casting integer literal to `u16` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:100:9
|
||||
--> $DIR/unnecessary_cast.rs:113:9
|
||||
|
|
||||
LL | 0o73 as u16;
|
||||
| ^^^^^^^^^^^ help: try: `0o73_u16`
|
||||
|
||||
error: casting integer literal to `u32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:101:9
|
||||
--> $DIR/unnecessary_cast.rs:114:9
|
||||
|
|
||||
LL | 1_000_000_000 as u32;
|
||||
| ^^^^^^^^^^^^^^^^^^^^ help: try: `1_000_000_000_u32`
|
||||
|
||||
error: casting float literal to `f64` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:103:9
|
||||
--> $DIR/unnecessary_cast.rs:116:9
|
||||
|
|
||||
LL | 1.0 as f64;
|
||||
| ^^^^^^^^^^ help: try: `1.0_f64`
|
||||
|
||||
error: casting float literal to `f32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:104:9
|
||||
--> $DIR/unnecessary_cast.rs:117:9
|
||||
|
|
||||
LL | 0.5 as f32;
|
||||
| ^^^^^^^^^^ help: try: `0.5_f32`
|
||||
|
||||
error: casting integer literal to `i32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:108:17
|
||||
--> $DIR/unnecessary_cast.rs:121:17
|
||||
|
|
||||
LL | let _ = -1 as i32;
|
||||
| ^^^^^^^^^ help: try: `-1_i32`
|
||||
|
||||
error: casting float literal to `f32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:109:17
|
||||
--> $DIR/unnecessary_cast.rs:122:17
|
||||
|
|
||||
LL | let _ = -1.0 as f32;
|
||||
| ^^^^^^^^^^^ help: try: `-1.0_f32`
|
||||
|
||||
error: casting to the same type is unnecessary (`i32` -> `i32`)
|
||||
--> $DIR/unnecessary_cast.rs:115:18
|
||||
--> $DIR/unnecessary_cast.rs:128:18
|
||||
|
|
||||
LL | let _ = &(x as i32);
|
||||
| ^^^^^^^^^^ help: try: `{ x }`
|
||||
|
||||
error: casting integer literal to `i32` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:121:22
|
||||
--> $DIR/unnecessary_cast.rs:134:22
|
||||
|
|
||||
LL | let _: i32 = -(1) as i32;
|
||||
| ^^^^^^^^^^^ help: try: `-1_i32`
|
||||
|
||||
error: casting integer literal to `i64` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:123:22
|
||||
--> $DIR/unnecessary_cast.rs:136:22
|
||||
|
|
||||
LL | let _: i64 = -(1) as i64;
|
||||
| ^^^^^^^^^^^ help: try: `-1_i64`
|
||||
|
||||
error: casting float literal to `f64` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:130:22
|
||||
--> $DIR/unnecessary_cast.rs:143:22
|
||||
|
|
||||
LL | let _: f64 = (-8.0 as f64).exp();
|
||||
| ^^^^^^^^^^^^^ help: try: `(-8.0_f64)`
|
||||
|
||||
error: casting float literal to `f64` is unnecessary
|
||||
--> $DIR/unnecessary_cast.rs:132:23
|
||||
--> $DIR/unnecessary_cast.rs:145:23
|
||||
|
|
||||
LL | let _: f64 = -(8.0 as f64).exp(); // should suggest `-8.0_f64.exp()` here not to change code behavior
|
||||
| ^^^^^^^^^^^^ help: try: `8.0_f64`
|
||||
|
||||
error: casting to the same type is unnecessary (`f32` -> `f32`)
|
||||
--> $DIR/unnecessary_cast.rs:140:20
|
||||
--> $DIR/unnecessary_cast.rs:153:20
|
||||
|
|
||||
LL | let _num = foo() as f32;
|
||||
| ^^^^^^^^^^^^ help: try: `foo()`
|
||||
|
||||
error: aborting due to 33 previous errors
|
||||
error: aborting due to 37 previous errors
|
||||
|
||||
|
|
Loading…
Reference in a new issue