summary refs log tree commit diff
path: root/src/test/ui/parser/expr-as-stmt-2.stderr
blob: ee07c36763356d64e6fd5ce8d1380bac7508cfc9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
error[E0308]: mismatched types
  --> $DIR/expr-as-stmt-2.rs:3:26
   |
LL |     if let Some(x) = a { true } else { false }
   |     ---------------------^^^^------------------ help: consider using a semicolon here
   |     |                    |
   |     |                    expected `()`, found `bool`
   |     expected this to be `()`

error[E0308]: mismatched types
  --> $DIR/expr-as-stmt-2.rs:3:40
   |
LL |     if let Some(x) = a { true } else { false }
   |     -----------------------------------^^^^^--- help: consider using a semicolon here
   |     |                                  |
   |     |                                  expected `()`, found `bool`
   |     expected this to be `()`

error[E0308]: mismatched types
  --> $DIR/expr-as-stmt-2.rs:6:5
   |
LL |   fn foo(a: Option<u32>, b: Option<u32>) -> bool {
   |                                             ---- expected `bool` because of return type
LL |       if let Some(x) = a { true } else { false }
   |       ------------------------------------------ help: parentheses are required to parse this as an expression: `(if let Some(x) = a { true } else { false })`
...
LL | /     &&
LL | |     if let Some(y) = a { true } else { false }
   | |______________________________________________^ expected `bool`, found `&&bool`

error: aborting due to 3 previous errors

For more information about this error, try `rustc --explain E0308`.