about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/test/ui/if/if-no-match-bindings.stderr44
-rw-r--r--src/test/ui/rfc-2497-if-let-chains/disallowed-positions.stderr48
2 files changed, 80 insertions, 12 deletions
diff --git a/src/test/ui/if/if-no-match-bindings.stderr b/src/test/ui/if/if-no-match-bindings.stderr
index cbf52476ae3..694b59897c5 100644
--- a/src/test/ui/if/if-no-match-bindings.stderr
+++ b/src/test/ui/if/if-no-match-bindings.stderr
@@ -2,7 +2,10 @@ error[E0308]: mismatched types
   --> $DIR/if-no-match-bindings.rs:18:8
    |
 LL |     if b_ref() {}
-   |        ^^^^^^^ expected bool, found &bool
+   |        ^^^^^^^
+   |        |
+   |        expected bool, found &bool
+   |        help: consider dereferencing the borrow: `*b_ref()`
    |
    = note: expected type `bool`
               found type `&bool`
@@ -11,7 +14,10 @@ error[E0308]: mismatched types
   --> $DIR/if-no-match-bindings.rs:19:8
    |
 LL |     if b_mut_ref() {}
-   |        ^^^^^^^^^^^ expected bool, found &mut bool
+   |        ^^^^^^^^^^^
+   |        |
+   |        expected bool, found &mut bool
+   |        help: consider dereferencing the borrow: `*b_mut_ref()`
    |
    = note: expected type `bool`
               found type `&mut bool`
@@ -20,7 +26,10 @@ error[E0308]: mismatched types
   --> $DIR/if-no-match-bindings.rs:20:8
    |
 LL |     if &true {}
-   |        ^^^^^ expected bool, found &bool
+   |        ^^^^^
+   |        |
+   |        expected bool, found &bool
+   |        help: consider dereferencing the borrow: `*&true`
    |
    = note: expected type `bool`
               found type `&bool`
@@ -29,7 +38,10 @@ error[E0308]: mismatched types
   --> $DIR/if-no-match-bindings.rs:21:8
    |
 LL |     if &mut true {}
-   |        ^^^^^^^^^ expected bool, found &mut bool
+   |        ^^^^^^^^^
+   |        |
+   |        expected bool, found &mut bool
+   |        help: consider dereferencing the borrow: `*&mut true`
    |
    = note: expected type `bool`
               found type `&mut bool`
@@ -38,7 +50,10 @@ error[E0308]: mismatched types
   --> $DIR/if-no-match-bindings.rs:24:11
    |
 LL |     while b_ref() {}
-   |           ^^^^^^^ expected bool, found &bool
+   |           ^^^^^^^
+   |           |
+   |           expected bool, found &bool
+   |           help: consider dereferencing the borrow: `*b_ref()`
    |
    = note: expected type `bool`
               found type `&bool`
@@ -47,7 +62,10 @@ error[E0308]: mismatched types
   --> $DIR/if-no-match-bindings.rs:25:11
    |
 LL |     while b_mut_ref() {}
-   |           ^^^^^^^^^^^ expected bool, found &mut bool
+   |           ^^^^^^^^^^^
+   |           |
+   |           expected bool, found &mut bool
+   |           help: consider dereferencing the borrow: `*b_mut_ref()`
    |
    = note: expected type `bool`
               found type `&mut bool`
@@ -55,8 +73,11 @@ LL |     while b_mut_ref() {}
 error[E0308]: mismatched types
   --> $DIR/if-no-match-bindings.rs:26:11
    |
-LL |     while &true {}
-   |           ^^^^^ expected bool, found &bool
+26 |     while &true {}
+   |           ^^^^^
+   |           |
+   |           expected bool, found &bool
+   |           help: consider dereferencing the borrow: `*&true`
    |
    = note: expected type `bool`
               found type `&bool`
@@ -64,8 +85,11 @@ LL |     while &true {}
 error[E0308]: mismatched types
   --> $DIR/if-no-match-bindings.rs:27:11
    |
-LL |     while &mut true {}
-   |           ^^^^^^^^^ expected bool, found &mut bool
+27 |     while &mut true {}
+   |           ^^^^^^^^^
+   |           |
+   |           expected bool, found &mut bool
+   |           help: consider dereferencing the borrow: `*&mut true`
    |
    = note: expected type `bool`
               found type `&mut bool`
diff --git a/src/test/ui/rfc-2497-if-let-chains/disallowed-positions.stderr b/src/test/ui/rfc-2497-if-let-chains/disallowed-positions.stderr
index 4edc00efc7e..ab1b405e5c2 100644
--- a/src/test/ui/rfc-2497-if-let-chains/disallowed-positions.stderr
+++ b/src/test/ui/rfc-2497-if-let-chains/disallowed-positions.stderr
@@ -513,11 +513,52 @@ warning: the feature `let_chains` is incomplete and may cause the compiler to cr
 LL | #![feature(let_chains)] // Avoid inflating `.stderr` with overzealous gates in this test.
    |            ^^^^^^^^^^
 
+warning: unnecessary parentheses around `if` condition
+  --> $DIR/disallowed-positions.rs:51:8
+   |
+LL |     if (true || let 0 = 0) {}
+   |        ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
+   |
+   = note: `#[warn(unused_parens)]` on by default
+
+warning: unnecessary parentheses around `while` condition
+  --> $DIR/disallowed-positions.rs:115:11
+   |
+LL |     while (true || let 0 = 0) {}
+   |           ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
+
+wrning: unnecessary parentheses around `let` head expression
+  --> $DIR/disallowed-positions.rs:160:41
+   |
+LL |     if let Range { start: _, end: _ } = (true..true || false) { }
+   |                                         ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
+
+warning: unnecessary parentheses around `let` head expression
+  --> $DIR/disallowed-positions.rs:162:41
+   |
+LL |     if let Range { start: _, end: _ } = (true..true && false) { }
+   |                                         ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
+
+warning: unnecessary parentheses around `let` head expression
+  --> $DIR/disallowed-positions.rs:164:44
+   |
+LL |     while let Range { start: _, end: _ } = (true..true || false) { }
+   |                                            ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
+
+warning: unnecessary parentheses around `let` head expression
+  --> $DIR/disallowed-positions.rs:166:44
+   |
+LL |     while let Range { start: _, end: _ } = (true..true && false) { }
+   |                                            ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
+
 error[E0308]: mismatched types
   --> $DIR/disallowed-positions.rs:32:8
    |
 LL |     if &let 0 = 0 {}
-   |        ^^^^^^^^^^ expected bool, found &bool
+   |        ^^^^^^^^^^
+   |        |
+   |        expected bool, found &bool
+   |        help: consider dereferencing the borrow: `*&let 0 = 0`
    |
    = note: expected type `bool`
               found type `&bool`
@@ -702,7 +743,10 @@ error[E0308]: mismatched types
   --> $DIR/disallowed-positions.rs:96:11
    |
 LL |     while &let 0 = 0 {}
-   |           ^^^^^^^^^^ expected bool, found &bool
+   |           ^^^^^^^^^^
+   |           |
+   |           expected bool, found &bool
+   |           help: consider dereferencing the borrow: `*&let 0 = 0`
    |
    = note: expected type `bool`
               found type `&bool`