]> git.lizzy.rs Git - rust.git/commit
Point at coercion reason for if exprs without else clause
authorEsteban Küber <esteban@kuber.com.ar>
Thu, 7 Mar 2019 01:54:35 +0000 (17:54 -0800)
committerEsteban Küber <esteban@kuber.com.ar>
Thu, 7 Mar 2019 21:17:50 +0000 (13:17 -0800)
commit369058eacde8ffdfeed9b362b10720799729a835
treee5c9b2b287ffd8005fb5e876aabb660e1911d95f
parentf22dca0a1bef4141e75326caacc3cd59f3d5be8e
Point at coercion reason for if exprs without else clause

```
error[E0317]: if may be missing an else clause
  --> $DIR/if-without-else-as-fn-expr.rs:2:5
   |
LL |   fn foo(bar: usize) -> usize {
   |                         ----- found `usize` because of this return type
LL | /     if bar % 5 == 0 {
LL | |         return 3;
LL | |     }
   | |_____^ expected (), found usize
   |
   = note: expected type `()`
              found type `usize`
   = note: `if` expressions without `else` must evaluate to `()`
```
src/librustc_typeck/check/mod.rs
src/test/ui/if/if-without-else-as-fn-expr.rs [new file with mode: 0644]
src/test/ui/if/if-without-else-as-fn-expr.stderr [new file with mode: 0644]
src/test/ui/if/if-without-else-result.stderr
src/test/ui/issues/issue-4201.stderr
src/test/ui/issues/issue-50577.stderr