From: LeSeulArtichaut Date: Thu, 25 Mar 2021 20:53:56 +0000 (+0100) Subject: Add additional test X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=08879449c645c224d3628bebb3e5b5a50a88cc3f;p=rust.git Add additional test Co-authored-by: Camelid --- diff --git a/src/test/ui/deref-suggestion.rs b/src/test/ui/deref-suggestion.rs index e62e8467bd2..4fd695585ba 100644 --- a/src/test/ui/deref-suggestion.rs +++ b/src/test/ui/deref-suggestion.rs @@ -63,4 +63,12 @@ fn main() { b //~^ ERROR mismatched types }; + let val = if true { + *a + } else if true { + //~^ ERROR incompatible types + b + } else { + &0 + }; } diff --git a/src/test/ui/deref-suggestion.stderr b/src/test/ui/deref-suggestion.stderr index 0de125695e6..1720421c7f6 100644 --- a/src/test/ui/deref-suggestion.stderr +++ b/src/test/ui/deref-suggestion.stderr @@ -107,6 +107,35 @@ LL | b | expected `i32`, found `&{integer}` | help: consider dereferencing the borrow: `*b` -error: aborting due to 12 previous errors +error[E0308]: `if` and `else` have incompatible types + --> $DIR/deref-suggestion.rs:68:12 + | +LL | let val = if true { + | _______________- +LL | | *a + | | -- expected because of this +LL | | } else if true { + | |____________^ +LL | || +LL | || b +LL | || } else { +LL | || &0 +LL | || }; + | || ^ + | ||_____| + | |______`if` and `else` have incompatible types + | expected `i32`, found `&{integer}` + | +help: consider dereferencing the borrow + | +LL | } else *if true { +LL | +LL | b +LL | } else { +LL | &0 +LL | }; + | + +error: aborting due to 13 previous errors For more information about this error, try `rustc --explain E0308`.