mirror of
https://github.com/rust-lang/rust.git
synced 2024-12-16 18:44:56 +00:00
183c4abb22
Earlier if arguments to method calls matched the above pattern they were not reported. This patch ensures such arguments are checked as well. Fixes #5436
101 lines
3.1 KiB
Plaintext
101 lines
3.1 KiB
Plaintext
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:21:5
|
|
|
|
|
LL | 42.clone();
|
|
| ^^^^^^^^^^ help: try removing the `clone` call: `42`
|
|
|
|
|
= note: `-D clippy::clone-on-copy` implied by `-D warnings`
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:25:5
|
|
|
|
|
LL | (&42).clone();
|
|
| ^^^^^^^^^^^^^ help: try dereferencing it: `*(&42)`
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:28:5
|
|
|
|
|
LL | rc.borrow().clone();
|
|
| ^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*rc.borrow()`
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:34:14
|
|
|
|
|
LL | is_ascii('z'.clone());
|
|
| ^^^^^^^^^^^ help: try removing the `clone` call: `'z'`
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:38:14
|
|
|
|
|
LL | vec.push(42.clone());
|
|
| ^^^^^^^^^^ help: try removing the `clone` call: `42`
|
|
|
|
error: using `.clone()` on a ref-counted pointer
|
|
--> $DIR/unnecessary_clone.rs:48:5
|
|
|
|
|
LL | rc.clone();
|
|
| ^^^^^^^^^^ help: try this: `Rc::<bool>::clone(&rc)`
|
|
|
|
|
= note: `-D clippy::clone-on-ref-ptr` implied by `-D warnings`
|
|
|
|
error: using `.clone()` on a ref-counted pointer
|
|
--> $DIR/unnecessary_clone.rs:51:5
|
|
|
|
|
LL | arc.clone();
|
|
| ^^^^^^^^^^^ help: try this: `Arc::<bool>::clone(&arc)`
|
|
|
|
error: using `.clone()` on a ref-counted pointer
|
|
--> $DIR/unnecessary_clone.rs:54:5
|
|
|
|
|
LL | rcweak.clone();
|
|
| ^^^^^^^^^^^^^^ help: try this: `Weak::<bool>::clone(&rcweak)`
|
|
|
|
error: using `.clone()` on a ref-counted pointer
|
|
--> $DIR/unnecessary_clone.rs:57:5
|
|
|
|
|
LL | arc_weak.clone();
|
|
| ^^^^^^^^^^^^^^^^ help: try this: `Weak::<bool>::clone(&arc_weak)`
|
|
|
|
error: using `.clone()` on a ref-counted pointer
|
|
--> $DIR/unnecessary_clone.rs:61:33
|
|
|
|
|
LL | let _: Arc<dyn SomeTrait> = x.clone();
|
|
| ^^^^^^^^^ help: try this: `Arc::<SomeImpl>::clone(&x)`
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:65:5
|
|
|
|
|
LL | t.clone();
|
|
| ^^^^^^^^^ help: try removing the `clone` call: `t`
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:67:5
|
|
|
|
|
LL | Some(t).clone();
|
|
| ^^^^^^^^^^^^^^^ help: try removing the `clone` call: `Some(t)`
|
|
|
|
error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type
|
|
--> $DIR/unnecessary_clone.rs:73:22
|
|
|
|
|
LL | let z: &Vec<_> = y.clone();
|
|
| ^^^^^^^^^
|
|
|
|
|
= note: `#[deny(clippy::clone_double_ref)]` on by default
|
|
help: try dereferencing it
|
|
|
|
|
LL | let z: &Vec<_> = &(*y).clone();
|
|
| ^^^^^^^^^^^^^
|
|
help: or try being explicit about what type to clone
|
|
|
|
|
LL | let z: &Vec<_> = &std::vec::Vec<i32>::clone(y);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:109:20
|
|
|
|
|
LL | let _: E = a.clone();
|
|
| ^^^^^^^^^ help: try dereferencing it: `*****a`
|
|
|
|
error: aborting due to 14 previous errors
|
|
|