summaryrefslogtreecommitdiffstats
path: root/src/tools/clippy/tests/ui/rc_clone_in_vec_init/rc.stderr
blob: 80deb7cb9f24d9a47b91a782dd30eec72b8d6e04 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
error: initializing a reference-counted pointer in `vec![elem; len]`
  --> $DIR/rc.rs:8:13
   |
LL |     let v = vec![Rc::new("x".to_string()); 2];
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: each element will point to the same `Rc` instance
   = note: `-D clippy::rc-clone-in-vec-init` implied by `-D warnings`
help: consider initializing each `Rc` element individually
   |
LL ~     let v = {
LL +         let mut v = Vec::with_capacity(2);
LL +         (0..2).for_each(|_| v.push(Rc::new(..)));
LL +         v
LL ~     };
   |
help: or if this is intentional, consider extracting the `Rc` initialization to a variable
   |
LL ~     let v = {
LL +         let data = Rc::new(..);
LL +         vec![data; 2]
LL ~     };
   |

error: initializing a reference-counted pointer in `vec![elem; len]`
  --> $DIR/rc.rs:16:21
   |
LL |             let v = vec![Rc::new("x".to_string()); 2];
   |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: each element will point to the same `Rc` instance
help: consider initializing each `Rc` element individually
   |
LL ~             let v = {
LL +                 let mut v = Vec::with_capacity(2);
LL +                 (0..2).for_each(|_| v.push(Rc::new(..)));
LL +                 v
LL ~             };
   |
help: or if this is intentional, consider extracting the `Rc` initialization to a variable
   |
LL ~             let v = {
LL +                 let data = Rc::new(..);
LL +                 vec![data; 2]
LL ~             };
   |

error: initializing a reference-counted pointer in `vec![elem; len]`
  --> $DIR/rc.rs:22:13
   |
LL |       let v = vec![
   |  _____________^
LL | |         std::rc::Rc::new(Mutex::new({
LL | |             let x = 1;
LL | |             dbg!(x);
...  |
LL | |         2
LL | |     ];
   | |_____^
   |
   = note: each element will point to the same `Rc` instance
help: consider initializing each `Rc` element individually
   |
LL ~     let v = {
LL +         let mut v = Vec::with_capacity(2);
LL +         (0..2).for_each(|_| v.push(std::rc::Rc::new(..)));
LL +         v
LL ~     };
   |
help: or if this is intentional, consider extracting the `Rc` initialization to a variable
   |
LL ~     let v = {
LL +         let data = std::rc::Rc::new(..);
LL +         vec![data; 2]
LL ~     };
   |

error: initializing a reference-counted pointer in `vec![elem; len]`
  --> $DIR/rc.rs:31:14
   |
LL |       let v1 = vec![
   |  ______________^
LL | |         Rc::new(Mutex::new({
LL | |             let x = 1;
LL | |             dbg!(x);
...  |
LL | |         2
LL | |     ];
   | |_____^
   |
   = note: each element will point to the same `Rc` instance
help: consider initializing each `Rc` element individually
   |
LL ~     let v1 = {
LL +         let mut v = Vec::with_capacity(2);
LL +         (0..2).for_each(|_| v.push(Rc::new(..)));
LL +         v
LL ~     };
   |
help: or if this is intentional, consider extracting the `Rc` initialization to a variable
   |
LL ~     let v1 = {
LL +         let data = Rc::new(..);
LL +         vec![data; 2]
LL ~     };
   |

error: aborting due to 4 previous errors