1 error[E0382]: borrow of moved value: `x.0.0`
2 --> $DIR/or-patterns.rs:8:5
4 LL | ((y, _) | (_, y),) => (),
8 | ^^^^^^^ value borrowed here after move
10 = note: move occurs because `x.0.0` has type `String`, which does not implement the `Copy` trait
12 error[E0382]: borrow of moved value: `x.0.1`
13 --> $DIR/or-patterns.rs:10:5
15 LL | ((y, _) | (_, y),) => (),
19 | ^^^^^^^ value borrowed here after move
21 = note: move occurs because `x.0.1` has type `String`, which does not implement the `Copy` trait
23 error[E0502]: cannot borrow `x.0.0` as mutable because it is also borrowed as immutable
24 --> $DIR/or-patterns.rs:18:5
26 LL | ((ref y, _) | (_, ref y),) => y,
27 | ----- immutable borrow occurs here
30 | ^^^^^^^^^^^ mutable borrow occurs here
33 | - immutable borrow later used here
35 error[E0502]: cannot borrow `x.0.1` as mutable because it is also borrowed as immutable
36 --> $DIR/or-patterns.rs:20:5
38 LL | ((ref y, _) | (_, ref y),) => y,
39 | ----- immutable borrow occurs here
42 | ^^^^^^^^^^^ mutable borrow occurs here
45 | - immutable borrow later used here
47 error[E0502]: cannot borrow `x.0.0` as immutable because it is also borrowed as mutable
48 --> $DIR/or-patterns.rs:29:5
50 LL | ((ref mut y, _) | (_, ref mut y),) => y,
51 | --------- mutable borrow occurs here
54 | ^^^^^^^ immutable borrow occurs here
57 | - mutable borrow later used here
59 error[E0502]: cannot borrow `x.0.1` as immutable because it is also borrowed as mutable
60 --> $DIR/or-patterns.rs:31:5
62 LL | ((ref mut y, _) | (_, ref mut y),) => y,
63 | --------- mutable borrow occurs here
66 | ^^^^^^^ immutable borrow occurs here
69 | - mutable borrow later used here
71 error[E0382]: borrow of moved value: `x.0.0`
72 --> $DIR/or-patterns.rs:38:5
74 LL | let ((y, _) | (_, y),) = x;
77 | ^^^^^^^ value borrowed here after move
79 = note: move occurs because `x.0.0` has type `String`, which does not implement the `Copy` trait
81 error[E0382]: borrow of moved value: `x.0.1`
82 --> $DIR/or-patterns.rs:40:5
84 LL | let ((y, _) | (_, y),) = x;
88 | ^^^^^^^ value borrowed here after move
90 = note: move occurs because `x.0.1` has type `String`, which does not implement the `Copy` trait
92 error[E0502]: cannot borrow `x.0.0` as mutable because it is also borrowed as immutable
93 --> $DIR/or-patterns.rs:46:5
95 LL | let ((ref r, _) | (_, ref r),) = x;
96 | ----- immutable borrow occurs here
98 | ^^^^^^^^^^^ mutable borrow occurs here
101 | - immutable borrow later used here
103 error[E0502]: cannot borrow `x.0.1` as mutable because it is also borrowed as immutable
104 --> $DIR/or-patterns.rs:48:5
106 LL | let ((ref r, _) | (_, ref r),) = x;
107 | ----- immutable borrow occurs here
110 | ^^^^^^^^^^^ mutable borrow occurs here
113 | - immutable borrow later used here
115 error[E0502]: cannot borrow `x.0.0` as immutable because it is also borrowed as mutable
116 --> $DIR/or-patterns.rs:55:5
118 LL | let ((ref mut r, _) | (_, ref mut r),) = x;
119 | --------- mutable borrow occurs here
121 | ^^^^^^^ immutable borrow occurs here
124 | - mutable borrow later used here
126 error[E0502]: cannot borrow `x.0.1` as immutable because it is also borrowed as mutable
127 --> $DIR/or-patterns.rs:57:5
129 LL | let ((ref mut r, _) | (_, ref mut r),) = x;
130 | --------- mutable borrow occurs here
133 | ^^^^^^^ immutable borrow occurs here
136 | - mutable borrow later used here
138 error: aborting due to 12 previous errors
140 Some errors have detailed explanations: E0382, E0502.
141 For more information about an error, try `rustc --explain E0382`.