mirror of
https://github.com/rust-lang/rust.git
synced 2025-04-30 03:57:37 +00:00

``` error[E0308]: `if` and `else` have incompatible types --> $DIR/if-else-chain-missing-else.rs:12:12 | LL | let x = if let Ok(x) = res { | ______________- LL | | x | | - expected because of this LL | | } else if let Err(e) = res { | | ____________^ LL | || return Err(e); LL | || }; | || ^ | ||_____| | |_____`if` and `else` have incompatible types | expected `i32`, found `()` | = note: `if` expressions without `else` evaluate to `()` = note: consider adding an `else` block that evaluates to the expected type ``` We probably want a longer explanation and fewer spans on this case. Partially address #133316.
23 lines
711 B
Plaintext
23 lines
711 B
Plaintext
error[E0308]: `if` and `else` have incompatible types
|
|
--> $DIR/if-else-chain-missing-else.rs:12:12
|
|
|
|
|
LL | let x = if let Ok(x) = res {
|
|
| ______________-
|
|
LL | | x
|
|
| | - expected because of this
|
|
LL | | } else if let Err(e) = res {
|
|
| | ____________^
|
|
LL | || return Err(e);
|
|
LL | || };
|
|
| || ^
|
|
| ||_____|
|
|
| |_____`if` and `else` have incompatible types
|
|
| expected `i32`, found `()`
|
|
|
|
|
= note: `if` expressions without `else` evaluate to `()`
|
|
= note: consider adding an `else` block that evaluates to the expected type
|
|
|
|
error: aborting due to 1 previous error
|
|
|
|
For more information about this error, try `rustc --explain E0308`.
|