about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--tests/ui/clear_with_drain.fixed10
-rw-r--r--tests/ui/clear_with_drain.rs10
-rw-r--r--tests/ui/clear_with_drain.stderr12
3 files changed, 18 insertions, 14 deletions
diff --git a/tests/ui/clear_with_drain.fixed b/tests/ui/clear_with_drain.fixed
index 0a15463ddf7..9c4dc010ca7 100644
--- a/tests/ui/clear_with_drain.fixed
+++ b/tests/ui/clear_with_drain.fixed
@@ -10,7 +10,8 @@ fn range() {
     let n = v.drain(0..v.len()).count(); // Yay
 
     let mut v = vec![1, 2, 3];
-    let n = v.drain(usize::MIN..v.len()).count(); // Yay
+    let iter = v.drain(usize::MIN..v.len()); // Yay
+    let n = iter.count();
 
     let mut v = vec![1, 2, 3];
     v.clear(); // Nay
@@ -24,7 +25,8 @@ fn range_from() {
     let iter = v.drain(0..); // Yay
 
     let mut v = vec![1, 2, 3];
-    let next = v.drain(0..).next(); // Yay
+    let mut iter = v.drain(0..); // Yay
+    let next = iter.next();
 
     let mut v = vec![1, 2, 3];
     let next = v.drain(usize::MIN..).next(); // Yay
@@ -55,8 +57,8 @@ fn range_to() {
     let iter = v.drain(..v.len()); // Yay
 
     let mut v = vec![1, 2, 3];
-    // Yay
-    for x in v.drain(..v.len()) {
+    let iter = v.drain(..v.len()); // Yay
+    for x in iter {
         let y = format!("x = {x}");
     }
 
diff --git a/tests/ui/clear_with_drain.rs b/tests/ui/clear_with_drain.rs
index 40201d9cc4d..f00dbab234c 100644
--- a/tests/ui/clear_with_drain.rs
+++ b/tests/ui/clear_with_drain.rs
@@ -10,7 +10,8 @@ fn range() {
     let n = v.drain(0..v.len()).count(); // Yay
 
     let mut v = vec![1, 2, 3];
-    let n = v.drain(usize::MIN..v.len()).count(); // Yay
+    let iter = v.drain(usize::MIN..v.len()); // Yay
+    let n = iter.count();
 
     let mut v = vec![1, 2, 3];
     v.drain(0..v.len()); // Nay
@@ -24,7 +25,8 @@ fn range_from() {
     let iter = v.drain(0..); // Yay
 
     let mut v = vec![1, 2, 3];
-    let next = v.drain(0..).next(); // Yay
+    let mut iter = v.drain(0..); // Yay
+    let next = iter.next();
 
     let mut v = vec![1, 2, 3];
     let next = v.drain(usize::MIN..).next(); // Yay
@@ -55,8 +57,8 @@ fn range_to() {
     let iter = v.drain(..v.len()); // Yay
 
     let mut v = vec![1, 2, 3];
-    // Yay
-    for x in v.drain(..v.len()) {
+    let iter = v.drain(..v.len()); // Yay
+    for x in iter {
         let y = format!("x = {x}");
     }
 
diff --git a/tests/ui/clear_with_drain.stderr b/tests/ui/clear_with_drain.stderr
index e7152a1cb68..c88aa1a23cb 100644
--- a/tests/ui/clear_with_drain.stderr
+++ b/tests/ui/clear_with_drain.stderr
@@ -1,5 +1,5 @@
 error: `drain` used to clear a `Vec`
-  --> $DIR/clear_with_drain.rs:16:7
+  --> $DIR/clear_with_drain.rs:17:7
    |
 LL |     v.drain(0..v.len()); // Nay
    |       ^^^^^^^^^^^^^^^^^ help: try: `clear()`
@@ -7,31 +7,31 @@ LL |     v.drain(0..v.len()); // Nay
    = note: `-D clippy::clear-with-drain` implied by `-D warnings`
 
 error: `drain` used to clear a `Vec`
-  --> $DIR/clear_with_drain.rs:19:7
+  --> $DIR/clear_with_drain.rs:20:7
    |
 LL |     v.drain(usize::MIN..v.len()); // Nay
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `clear()`
 
 error: `drain` used to clear a `Vec`
-  --> $DIR/clear_with_drain.rs:33:7
+  --> $DIR/clear_with_drain.rs:35:7
    |
 LL |     v.drain(0..); // Nay
    |       ^^^^^^^^^^ help: try: `clear()`
 
 error: `drain` used to clear a `Vec`
-  --> $DIR/clear_with_drain.rs:36:7
+  --> $DIR/clear_with_drain.rs:38:7
    |
 LL |     v.drain(usize::MIN..); // Nay
    |       ^^^^^^^^^^^^^^^^^^^ help: try: `clear()`
 
 error: `drain` used to clear a `Vec`
-  --> $DIR/clear_with_drain.rs:50:7
+  --> $DIR/clear_with_drain.rs:52:7
    |
 LL |     v.drain(..); // Nay
    |       ^^^^^^^^^ help: try: `clear()`
 
 error: `drain` used to clear a `Vec`
-  --> $DIR/clear_with_drain.rs:64:7
+  --> $DIR/clear_with_drain.rs:66:7
    |
 LL |     v.drain(..v.len()); // Nay
    |       ^^^^^^^^^^^^^^^^ help: try: `clear()`