summaryrefslogtreecommitdiffstats
path: root/src/test/ui/parser/expr-as-stmt-2.stderr
blob: 2b6314c38ceb6db64784caf2ccccb336e726a09b (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
34
35
36
37
38
39
40
41
42
43
44
45
46
error[E0308]: mismatched types
  --> $DIR/expr-as-stmt-2.rs:3:26
   |
LL |     if let Some(x) = a { true } else { false }
   |     ---------------------^^^^-----------------
   |     |                    |
   |     |                    expected `()`, found `bool`
   |     expected this to be `()`
   |
help: you might have meant to return this value
   |
LL |     if let Some(x) = a { return true; } else { false }
   |                          ++++++     +

error[E0308]: mismatched types
  --> $DIR/expr-as-stmt-2.rs:3:40
   |
LL |     if let Some(x) = a { true } else { false }
   |     -----------------------------------^^^^^--
   |     |                                  |
   |     |                                  expected `()`, found `bool`
   |     expected this to be `()`
   |
help: you might have meant to return this value
   |
LL |     if let Some(x) = a { true } else { return false; }
   |                                        ++++++      +

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 | /     &&
LL | |     if let Some(y) = a { true } else { false }
   | |______________________________________________^ expected `bool`, found `&&bool`
   |
help: parentheses are required to parse this as an expression
   |
LL |     (if let Some(x) = a { true } else { false })
   |     +                                          +

error: aborting due to 3 previous errors

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