error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:14:23 | 14 | fn foo(v: Vec, w: Vec, mut x: Vec, y: Vec) -> Vec { | ^^^^^^ help: consider changing the type to: `&[T]` | = note: `-D needless-pass-by-value` implied by `-D warnings` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:28:11 | 28 | fn bar(x: String, y: Wrapper) { | ^^^^^^ help: consider changing the type to: `&str` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:28:22 | 28 | fn bar(x: String, y: Wrapper) { | ^^^^^^^ help: consider taking a reference instead: `&Wrapper` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:34:71 | 34 | fn test_borrow_trait, U: AsRef, V>(t: T, u: U, v: V) { | ^ help: consider taking a reference instead: `&V` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:46:18 | 46 | fn test_match(x: Option>, y: Option>) { | ^^^^^^^^^^^^^^^^^^^^^^ help: consider taking a reference instead | 46 | fn test_match(x: &Option>, y: Option>) { 47 | match *x { | error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:59:24 | 59 | fn test_destructure(x: Wrapper, y: Wrapper, z: Wrapper) { | ^^^^^^^ help: consider taking a reference instead: `&Wrapper` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:59:36 | 59 | fn test_destructure(x: Wrapper, y: Wrapper, z: Wrapper) { | ^^^^^^^ help: consider taking a reference instead | 59 | fn test_destructure(x: Wrapper, y: &Wrapper, z: Wrapper) { 60 | let Wrapper(s) = z; // moved 61 | let Wrapper(ref t) = *y; // not moved 62 | let Wrapper(_) = *y; // still not moved | error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:75:49 | 75 | fn test_blanket_ref(_foo: T, _serializable: S) {} | ^ help: consider taking a reference instead: `&T` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:77:18 | 77 | fn issue_2114(s: String, t: String, u: Vec, v: Vec) { | ^^^^^^ help: consider taking a reference instead: `&String` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:77:29 | 77 | fn issue_2114(s: String, t: String, u: Vec, v: Vec) { | ^^^^^^ help: consider changing the type to | 77 | fn issue_2114(s: String, t: &str, u: Vec, v: Vec) { | ^^^^ help: change `t.clone()` to | 79 | let _ = t.to_string(); | ^^^^^^^^^^^^^ error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:77:40 | 77 | fn issue_2114(s: String, t: String, u: Vec, v: Vec) { | ^^^^^^^^ help: consider taking a reference instead: `&Vec` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:77:53 | 77 | fn issue_2114(s: String, t: String, u: Vec, v: Vec) { | ^^^^^^^^ help: consider changing the type to | 77 | fn issue_2114(s: String, t: String, u: Vec, v: &[i32]) { | ^^^^^^ help: change `v.clone()` to | 81 | let _ = v.to_owned(); | ^^^^^^^^^^^^ error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:89:12 | 89 | s: String, | ^^^^^^ help: consider changing the type to: `&str` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:90:12 | 90 | t: String, | ^^^^^^ help: consider taking a reference instead: `&String` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:102:13 | 102 | _u: U, | ^ help: consider taking a reference instead: `&U` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:103:13 | 103 | _s: Self, | ^^^^ help: consider taking a reference instead: `&Self` error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:125:24 | 125 | fn bar_copy(x: u32, y: CopyWrapper) { | ^^^^^^^^^^^ help: consider taking a reference instead: `&CopyWrapper` | help: consider marking this type as Copy --> $DIR/needless_pass_by_value.rs:123:1 | 123 | struct CopyWrapper(u32); | ^^^^^^^^^^^^^^^^^^^^^^^^ error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:131:29 | 131 | fn test_destructure_copy(x: CopyWrapper, y: CopyWrapper, z: CopyWrapper) { | ^^^^^^^^^^^ help: consider taking a reference instead: `&CopyWrapper` | help: consider marking this type as Copy --> $DIR/needless_pass_by_value.rs:123:1 | 123 | struct CopyWrapper(u32); | ^^^^^^^^^^^^^^^^^^^^^^^^ error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:131:45 | 131 | fn test_destructure_copy(x: CopyWrapper, y: CopyWrapper, z: CopyWrapper) { | ^^^^^^^^^^^ | help: consider marking this type as Copy --> $DIR/needless_pass_by_value.rs:123:1 | 123 | struct CopyWrapper(u32); | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider taking a reference instead | 131 | fn test_destructure_copy(x: CopyWrapper, y: &CopyWrapper, z: CopyWrapper) { 132 | let CopyWrapper(s) = z; // moved 133 | let CopyWrapper(ref t) = *y; // not moved 134 | let CopyWrapper(_) = *y; // still not moved | error: this argument is passed by value, but not consumed in the function body --> $DIR/needless_pass_by_value.rs:131:61 | 131 | fn test_destructure_copy(x: CopyWrapper, y: CopyWrapper, z: CopyWrapper) { | ^^^^^^^^^^^ | help: consider marking this type as Copy --> $DIR/needless_pass_by_value.rs:123:1 | 123 | struct CopyWrapper(u32); | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider taking a reference instead | 131 | fn test_destructure_copy(x: CopyWrapper, y: CopyWrapper, z: &CopyWrapper) { 132 | let CopyWrapper(s) = *z; // moved | error: aborting due to 20 previous errors