mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-10-31 13:04:42 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			73 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 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
 | |
| help: consider adding `ref`
 | |
|    |
 | |
| LL |         Opts::A(ref i) | Opts::B(ref i) => {}
 | |
|    |                                  +++
 | |
| 
 | |
| 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
 | |
| help: consider adding `ref`
 | |
|    |
 | |
| LL |         Opts::A(ref i) | Opts::B(ref i) => {}
 | |
|    |                                  +++
 | |
| 
 | |
| 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`.
 | 
