about summary refs log tree commit diff
diff options
context:
space:
mode:
authorCaleb Cartwright <caleb.cartwright@outlook.com>2021-01-27 19:46:32 -0600
committerCaleb Cartwright <calebcartwright@users.noreply.github.com>2021-01-27 20:58:42 -0600
commitc13d2452c058a32d9f9c97d4d44d45b644621d8b (patch)
tree1e77d000049dd46802d6edeba0460af10be47b55
parentbd4dc36c4eb73a776143d51d15770d3060954d28 (diff)
downloadrust-c13d2452c058a32d9f9c97d4d44d45b644621d8b.tar.gz
rust-c13d2452c058a32d9f9c97d4d44d45b644621d8b.zip
chore: backport some empty block check fixes
-rw-r--r--src/expr.rs2
-rw-r--r--tests/source/issue_3868.rs13
-rw-r--r--tests/target/issue_3868.rs9
3 files changed, 23 insertions, 1 deletions
diff --git a/src/expr.rs b/src/expr.rs
index 9c5876ce647..7dfa4d57b13 100644
--- a/src/expr.rs
+++ b/src/expr.rs
@@ -429,7 +429,7 @@ fn rewrite_empty_block(
     prefix: &str,
     shape: Shape,
 ) -> Option<String> {
-    if !block.stmts.is_empty() {
+    if block_has_statements(&block) {
         return None;
     }
 
diff --git a/tests/source/issue_3868.rs b/tests/source/issue_3868.rs
new file mode 100644
index 00000000000..6c46c3c9e18
--- /dev/null
+++ b/tests/source/issue_3868.rs
@@ -0,0 +1,13 @@
+fn foo() {
+    ;
+}
+
+fn bar() {
+    for _ in 0..1 {
+        ;
+    }
+}
+
+fn baz() {
+    ();
+    }
\ No newline at end of file
diff --git a/tests/target/issue_3868.rs b/tests/target/issue_3868.rs
new file mode 100644
index 00000000000..06724135928
--- /dev/null
+++ b/tests/target/issue_3868.rs
@@ -0,0 +1,9 @@
+fn foo() {}
+
+fn bar() {
+    for _ in 0..1 {}
+}
+
+fn baz() {
+    ();
+}