3 #![warn(clippy::useless_vec)]
8 fn on_slice(_: &[u8]) {}
10 fn on_mut_slice(_: &mut [u8]) {}
12 #[allow(clippy::ptr_arg)]
13 fn on_vec(_: &Vec<u8>) {}
15 fn on_mut_vec(_: &mut Vec<u8>) {}
22 fn length(&self) -> usize {
30 on_mut_slice(&mut []);
34 on_mut_slice(&mut [1, 2]);
38 on_mut_slice(&mut [1, 2]);
42 on_mut_slice(&mut [1, 2]);
46 on_mut_slice(&mut [1; 2]);
51 on_mut_vec(&mut vec![]);
52 on_mut_vec(&mut vec![1, 2]);
53 on_mut_vec(&mut vec![1; 2]);
55 // Now with non-constant expressions
56 let line = Line { length: 2 };
58 on_slice(&vec![2; line.length]);
59 on_slice(&vec![2; line.length()]);
60 on_mut_slice(&mut vec![2; line.length]);
61 on_mut_slice(&mut vec![2; line.length()]);
67 for a in vec![NonCopy, NonCopy] {
71 on_vec(&vec![1; 201]); // Ok, size of `vec` higher than `too_large_for_stack`
72 on_mut_vec(&mut vec![1; 201]); // Ok, size of `vec` higher than `too_large_for_stack`
75 for a in vec![1; 201] {