summaryrefslogtreecommitdiffstats
path: root/src/test/ui/parser/expr-as-stmt-2.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/parser/expr-as-stmt-2.stderr')
-rw-r--r--src/test/ui/parser/expr-as-stmt-2.stderr51
1 files changed, 51 insertions, 0 deletions
diff --git a/src/test/ui/parser/expr-as-stmt-2.stderr b/src/test/ui/parser/expr-as-stmt-2.stderr
new file mode 100644
index 000000000..9b939f05e
--- /dev/null
+++ b/src/test/ui/parser/expr-as-stmt-2.stderr
@@ -0,0 +1,51 @@
+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: consider removing the `&&`
+ |
+LL - &&
+LL + if let Some(y) = a { true } else { false }
+ |
+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`.