1 error[E0409]: variable `a` is bound in inconsistent ways within the same match arm
2 --> $DIR/inconsistent-modes.rs:9:25
4 LL | let Ok(a) | Err(ref a): Result<&u8, u8> = Ok(&0);
5 | - ^ bound in different ways
9 error[E0409]: variable `a` is bound in inconsistent ways within the same match arm
10 --> $DIR/inconsistent-modes.rs:11:29
12 LL | let Ok(ref mut a) | Err(a): Result<u8, &mut u8> = Ok(0);
13 | - ^ bound in different ways
17 error[E0409]: variable `a` is bound in inconsistent ways within the same match arm
18 --> $DIR/inconsistent-modes.rs:13:33
20 LL | let Ok(ref a) | Err(ref mut a): Result<&u8, &mut u8> = Ok(&0);
21 | - first binding ^ bound in different ways
23 error[E0409]: variable `a` is bound in inconsistent ways within the same match arm
24 --> $DIR/inconsistent-modes.rs:16:39
26 LL | let Ok((ref a, b)) | Err((ref mut a, ref b)) = Ok((0, &0));
27 | - first binding ^ bound in different ways
29 error[E0409]: variable `b` is bound in inconsistent ways within the same match arm
30 --> $DIR/inconsistent-modes.rs:16:46
32 LL | let Ok((ref a, b)) | Err((ref mut a, ref b)) = Ok((0, &0));
33 | - first binding ^ bound in different ways
35 error[E0409]: variable `a` is bound in inconsistent ways within the same match arm
36 --> $DIR/inconsistent-modes.rs:22:38
38 LL | let Ok(Ok(a) | Err(a)) | Err(ref a) = Err(0);
39 | - ^ bound in different ways
43 error[E0409]: variable `a` is bound in inconsistent ways within the same match arm
44 --> $DIR/inconsistent-modes.rs:26:34
46 LL | let Ok([ Ok((Ok(ref a) | Err(a),)) | Err(a) ]) | Err(a) = Err(&1);
47 | - ^ bound in different ways
51 warning: the feature `or_patterns` is incomplete and may cause the compiler to crash
52 --> $DIR/inconsistent-modes.rs:3:12
54 LL | #![feature(or_patterns)]
57 = note: `#[warn(incomplete_features)]` on by default
59 error[E0308]: mismatched types
60 --> $DIR/inconsistent-modes.rs:13:25
62 LL | let Ok(ref a) | Err(ref mut a): Result<&u8, &mut u8> = Ok(&0);
63 | ^^^^^^^^^ -------------------- expected due to this
65 | types differ in mutability
67 = note: expected type `&&u8`
68 found type `&mut &mut u8`
70 error[E0308]: mismatched types
71 --> $DIR/inconsistent-modes.rs:16:31
73 LL | let Ok((ref a, b)) | Err((ref mut a, ref b)) = Ok((0, &0));
74 | ^^^^^^^^^ ----------- this expression has type `std::result::Result<({integer}, &{integer}), (_, _)>`
76 | types differ in mutability
78 = note: expected type `&{integer}`
81 error: aborting due to 9 previous errors
83 Some errors have detailed explanations: E0308, E0409.
84 For more information about an error, try `rustc --explain E0308`.