summaryrefslogtreecommitdiffstats
path: root/src/test/ui/resolve/resolve-inconsistent-binding-mode.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/resolve/resolve-inconsistent-binding-mode.stderr')
-rw-r--r--src/test/ui/resolve/resolve-inconsistent-binding-mode.stderr64
1 files changed, 64 insertions, 0 deletions
diff --git a/src/test/ui/resolve/resolve-inconsistent-binding-mode.stderr b/src/test/ui/resolve/resolve-inconsistent-binding-mode.stderr
new file mode 100644
index 000000000..96c1869b4
--- /dev/null
+++ b/src/test/ui/resolve/resolve-inconsistent-binding-mode.stderr
@@ -0,0 +1,64 @@
+error[E0409]: variable `i` is bound inconsistently across alternatives separated by `|`
+ --> $DIR/resolve-inconsistent-binding-mode.rs:9:34
+ |
+LL | Opts::A(ref i) | Opts::B(i) => {}
+ | - ^ bound in different ways
+ | |
+ | first binding
+
+error[E0409]: variable `i` is bound inconsistently across alternatives separated by `|`
+ --> $DIR/resolve-inconsistent-binding-mode.rs:18:34
+ |
+LL | Opts::A(ref i) | Opts::B(i) => {}
+ | - ^ bound in different ways
+ | |
+ | first binding
+
+error[E0409]: variable `i` is bound inconsistently across alternatives separated by `|`
+ --> $DIR/resolve-inconsistent-binding-mode.rs:27:42
+ |
+LL | Opts::A(ref mut i) | Opts::B(ref i) => {}
+ | - first binding ^ bound in different ways
+
+error[E0308]: mismatched types
+ --> $DIR/resolve-inconsistent-binding-mode.rs:9:34
+ |
+LL | match x {
+ | - this expression has type `Opts`
+LL | Opts::A(ref i) | Opts::B(i) => {}
+ | ----- ^ expected `&isize`, found `isize`
+ | |
+ | first introduced with type `&isize` here
+ |
+ = note: in the same arm, a binding must have the same type in all alternatives
+
+error[E0308]: mismatched types
+ --> $DIR/resolve-inconsistent-binding-mode.rs:18:34
+ |
+LL | match x {
+ | - this expression has type `Opts`
+LL | Opts::A(ref i) | Opts::B(i) => {}
+ | ----- ^ expected `&isize`, found `isize`
+ | |
+ | first introduced with type `&isize` here
+ |
+ = note: in the same arm, a binding must have the same type in all alternatives
+
+error[E0308]: mismatched types
+ --> $DIR/resolve-inconsistent-binding-mode.rs:27:38
+ |
+LL | match x {
+ | - this expression has type `Opts`
+LL | Opts::A(ref mut i) | Opts::B(ref i) => {}
+ | --------- ^^^^^ types differ in mutability
+ | |
+ | first introduced with type `&mut isize` here
+ |
+ = note: expected mutable reference `&mut isize`
+ found reference `&isize`
+ = note: in the same arm, a binding must have the same type in all alternatives
+
+error: aborting due to 6 previous errors
+
+Some errors have detailed explanations: E0308, E0409.
+For more information about an error, try `rustc --explain E0308`.