From c9cc43aa66911b38e9da68de6c2c7ee1f37911ea Mon Sep 17 00:00:00 2001 From: Noah Lev Date: Mon, 6 Sep 2021 16:16:52 -0700 Subject: Move increment checks to improve errors --- src/test/ui/parser/increment.fixed | 36 +++++++++++++++++++++++++++ src/test/ui/parser/increment.rs | 27 +++++++++++++------- src/test/ui/parser/increment.stderr | 49 +++++++++++++++++-------------------- 3 files changed, 76 insertions(+), 36 deletions(-) create mode 100644 src/test/ui/parser/increment.fixed (limited to 'src/test/ui/parser') diff --git a/src/test/ui/parser/increment.fixed b/src/test/ui/parser/increment.fixed new file mode 100644 index 00000000000..ad61c4e66d2 --- /dev/null +++ b/src/test/ui/parser/increment.fixed @@ -0,0 +1,36 @@ +// run-rustfix + +fn post_regular() { + let mut i = 0; + { let tmp = i; i += 1; tmp }; //~ ERROR Rust has no postfix increment operator + println!("{}", i); +} + +fn post_while() { + let mut i = 0; + while { let tmp = i; i += 1; tmp } < 5 { + //~^ ERROR Rust has no postfix increment operator + println!("{}", i); + } +} + +fn pre_regular() { + let mut i = 0; + i += 1; //~ ERROR Rust has no prefix increment operator + println!("{}", i); +} + +fn pre_while() { + let mut i = 0; + while { i += 1; i } < 5 { + //~^ ERROR Rust has no prefix increment operator + println!("{}", i); + } +} + +fn main() { + post_regular(); + post_while(); + pre_regular(); + pre_while(); +} diff --git a/src/test/ui/parser/increment.rs b/src/test/ui/parser/increment.rs index 77a94b65f1f..f31031fed3a 100644 --- a/src/test/ui/parser/increment.rs +++ b/src/test/ui/parser/increment.rs @@ -1,27 +1,36 @@ +// run-rustfix + fn post_regular() { - let i = 0; - i++; //~ ERROR + let mut i = 0; + i++; //~ ERROR Rust has no postfix increment operator + println!("{}", i); } fn post_while() { - let i = 0; + let mut i = 0; while i++ < 5 { - //~^ ERROR + //~^ ERROR Rust has no postfix increment operator println!("{}", i); } } fn pre_regular() { - let i = 0; - ++i; //~ ERROR + let mut i = 0; + ++i; //~ ERROR Rust has no prefix increment operator + println!("{}", i); } fn pre_while() { - let i = 0; + let mut i = 0; while ++i < 5 { - //~^ ERROR + //~^ ERROR Rust has no prefix increment operator println!("{}", i); } } -fn main() {} +fn main() { + post_regular(); + post_while(); + pre_regular(); + pre_while(); +} diff --git a/src/test/ui/parser/increment.stderr b/src/test/ui/parser/increment.stderr index 667956cdd7d..6a2b37e3ddc 100644 --- a/src/test/ui/parser/increment.stderr +++ b/src/test/ui/parser/increment.stderr @@ -1,52 +1,47 @@ -error: expected expression, found `+` - --> $DIR/increment.rs:3:7 +error: Rust has no postfix increment operator + --> $DIR/increment.rs:5:6 | LL | i++; - | ^ expected expression + | ^^ not a valid postfix operator | - = note: Rust has no dedicated increment operator -help: try using `+= 1` instead +help: use `+= 1` instead | -LL | i += 1; - | ~~~~ +LL | { let tmp = i; i += 1; tmp }; + | +++++++++++ ~~~~~~~~~~~~~~~ -error: expected expression, found `+` - --> $DIR/increment.rs:8:13 +error: Rust has no postfix increment operator + --> $DIR/increment.rs:11:12 | LL | while i++ < 5 { - | ^ expected expression + | ^^ not a valid postfix operator | - = note: Rust has no dedicated increment operator -help: try using `+= 1` instead +help: use `+= 1` instead | -LL | while i += 1 < 5 { - | ~~~~ +LL | while { let tmp = i; i += 1; tmp } < 5 { + | +++++++++++ ~~~~~~~~~~~~~~~ -error: expected expression, found `+` - --> $DIR/increment.rs:16:5 +error: Rust has no prefix increment operator + --> $DIR/increment.rs:19:5 | LL | ++i; - | ^ expected expression + | ^^ not a valid prefix operator | - = note: Rust has no dedicated increment operator -help: try using `+= 1` instead +help: use `+= 1` instead | LL - ++i; LL + i += 1; | -error: expected expression, found `+` - --> $DIR/increment.rs:21:11 +error: Rust has no prefix increment operator + --> $DIR/increment.rs:25:11 | LL | while ++i < 5 { - | ^ expected expression + | ^^ not a valid prefix operator | - = note: Rust has no dedicated increment operator -help: try using `+= 1` instead +help: use `+= 1` instead | -LL - while ++i < 5 { -LL + while { i += 1; i } < 5 { - | +LL | while { i += 1; i } < 5 { + | ~ +++++++++ error: aborting due to 4 previous errors -- cgit 1.4.1-3-g733a5