From 4f85a73e516530844aecc44fb91d0db7604f7ac4 Mon Sep 17 00:00:00 2001 From: Waffle Maybe Date: Mon, 6 Jun 2022 01:35:37 +0400 Subject: [PATCH] Add spaces before and after expr in add {} suggestion Co-authored-by: Michael Goulet --- compiler/rustc_parse/src/parser/expr.rs | 4 ++-- .../ui/parser/recover-labeled-non-block-expr.fixed | 10 +++++----- .../parser/recover-labeled-non-block-expr.stderr | 14 +++++++------- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/compiler/rustc_parse/src/parser/expr.rs b/compiler/rustc_parse/src/parser/expr.rs index 0bc71de90ff1..b786c52e6880 100644 --- a/compiler/rustc_parse/src/parser/expr.rs +++ b/compiler/rustc_parse/src/parser/expr.rs @@ -1593,8 +1593,8 @@ impl<'a> Parser<'a> { let sugg_msg = "consider enclosing expression in a block"; let suggestions = vec![ - (span.shrink_to_lo(), "{".to_owned()), - (span.shrink_to_hi(), "}".to_owned()), + (span.shrink_to_lo(), "{ ".to_owned()), + (span.shrink_to_hi(), " }".to_owned()), ]; err.multipart_suggestion_verbose( diff --git a/src/test/ui/parser/recover-labeled-non-block-expr.fixed b/src/test/ui/parser/recover-labeled-non-block-expr.fixed index 3193d90d2d30..fe546a719711 100644 --- a/src/test/ui/parser/recover-labeled-non-block-expr.fixed +++ b/src/test/ui/parser/recover-labeled-non-block-expr.fixed @@ -4,12 +4,12 @@ fn main() { let _ = 1 + 1; //~ ERROR expected `while`, `for`, `loop` or `{` after a label match () { () => {}, }; //~ ERROR expected `while`, `for`, `loop` or `{` after a label - 'label: {match () { () => break 'label, }}; //~ ERROR expected `while`, `for`, `loop` or `{` after a label + 'label: { match () { () => break 'label, } }; //~ ERROR expected `while`, `for`, `loop` or `{` after a label #[allow(unused_labels)] - 'label: {match () { () => 'lp: loop { break 'lp 0 }, }}; //~ ERROR expected `while`, `for`, `loop` or `{` after a label + 'label: { match () { () => 'lp: loop { break 'lp 0 }, } }; //~ ERROR expected `while`, `for`, `loop` or `{` after a label let x = 1; - let _i = 'label: {match x { //~ ERROR expected `while`, `for`, `loop` or `{` after a label + let _i = 'label: { match x { //~ ERROR expected `while`, `for`, `loop` or `{` after a label 0 => 42, 1 if false => break 'label 17, 1 => { @@ -20,8 +20,8 @@ fn main() { } } _ => 1, - }}; + } }; let other = 3; - let _val = 'label: {(1, if other == 3 { break 'label (2, 3) } else { other })}; //~ ERROR expected `while`, `for`, `loop` or `{` after a label + let _val = 'label: { (1, if other == 3 { break 'label (2, 3) } else { other }) }; //~ ERROR expected `while`, `for`, `loop` or `{` after a label } diff --git a/src/test/ui/parser/recover-labeled-non-block-expr.stderr b/src/test/ui/parser/recover-labeled-non-block-expr.stderr index e289c5db5cb9..767389c48088 100644 --- a/src/test/ui/parser/recover-labeled-non-block-expr.stderr +++ b/src/test/ui/parser/recover-labeled-non-block-expr.stderr @@ -30,8 +30,8 @@ LL | 'label: match () { () => break 'label, }; | help: consider enclosing expression in a block | -LL | 'label: {match () { () => break 'label, }}; - | + + +LL | 'label: { match () { () => break 'label, } }; + | + + error: expected `while`, `for`, `loop` or `{` after a label --> $DIR/recover-labeled-non-block-expr.rs:9:13 @@ -41,8 +41,8 @@ LL | 'label: match () { () => 'lp: loop { break 'lp 0 }, }; | help: consider enclosing expression in a block | -LL | 'label: {match () { () => 'lp: loop { break 'lp 0 }, }}; - | + + +LL | 'label: { match () { () => 'lp: loop { break 'lp 0 }, } }; + | + + error: expected `while`, `for`, `loop` or `{` after a label --> $DIR/recover-labeled-non-block-expr.rs:12:22 @@ -52,7 +52,7 @@ LL | let _i = 'label: match x { | help: consider enclosing expression in a block | -LL ~ let _i = 'label: {match x { +LL ~ let _i = 'label: { match x { LL | 0 => 42, LL | 1 if false => break 'label 17, LL | 1 => { @@ -68,8 +68,8 @@ LL | let _val = 'label: (1, if other == 3 { break 'label (2, 3) } else { oth | help: consider enclosing expression in a block | -LL | let _val = 'label: {(1, if other == 3 { break 'label (2, 3) } else { other })}; - | + + +LL | let _val = 'label: { (1, if other == 3 { break 'label (2, 3) } else { other }) }; + | + + error: aborting due to 6 previous errors