rust/tests/ui/moves
Esteban Küber 03c88aaf21 Tweak .clone() suggestion to work in more cases
When going through auto-deref, the `<T as Clone>` impl sometimes needs
to be specified for rustc to actually clone the value and not the
reference.

```
error[E0507]: cannot move out of dereference of `S`
  --> $DIR/needs-clone-through-deref.rs:15:18
   |
LL |         for _ in self.clone().into_iter() {}
   |                  ^^^^^^^^^^^^ ----------- value moved due to this method call
   |                  |
   |                  move occurs because value has type `Vec<usize>`, which does not implement the `Copy` trait
   |
note: `into_iter` takes ownership of the receiver `self`, which moves value
  --> $SRC_DIR/core/src/iter/traits/collect.rs:LL:COL
help: you can `clone` the value and consume it, but this might not be your desired behavior
   |
LL |         for _ in <Vec<usize> as Clone>::clone(&self.clone()).into_iter() {}
   |                  ++++++++++++++++++++++++++++++            +
```

CC #109429.
2023-12-04 21:54:32 +00:00
..
borrow-closures-instead-of-move.rs
borrow-closures-instead-of-move.stderr
issue-22536-copy-mustnt-zero.rs
issue-34721.fixed Move tests 2023-08-28 17:47:37 -03:00
issue-34721.rs Move tests 2023-08-28 17:47:37 -03:00
issue-34721.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-46099-move-in-macro.rs
issue-46099-move-in-macro.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-72649-uninit-in-loop.rs
issue-72649-uninit-in-loop.stderr
issue-75904-move-closure-loop.rs
issue-75904-move-closure-loop.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-99470-move-out-of-some.rs
issue-99470-move-out-of-some.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
move-1-unique.rs
move-2-unique.rs
move-2.rs
move-3-unique.rs
move-4-unique.rs
move-4.rs
move-arg-2-unique.rs
move-arg-2.rs
move-arg.rs
move-deref-coercion.rs
move-deref-coercion.stderr
move-fn-self-receiver.rs
move-fn-self-receiver.stderr
move-guard-same-consts.rs
move-guard-same-consts.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
move-in-guard-1.rs
move-in-guard-1.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
move-in-guard-2.rs
move-in-guard-2.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
move-into-dead-array-1.rs
move-into-dead-array-1.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
move-into-dead-array-2.rs
move-into-dead-array-2.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
move-nullary-fn.rs
move-of-addr-of-mut.rs
move-of-addr-of-mut.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
move-out-of-array-1.rs
move-out-of-array-1.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
move-out-of-array-ref.rs
move-out-of-array-ref.stderr
move-out-of-field.rs
move-out-of-slice-1.rs
move-out-of-slice-1.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
move-out-of-slice-2.rs
move-out-of-slice-2.stderr
move-out-of-tuple-field.rs
move-out-of-tuple-field.stderr
move-scalar.rs
moves-based-on-type-access-to-field.rs
moves-based-on-type-access-to-field.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
moves-based-on-type-block-bad.rs
moves-based-on-type-block-bad.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
moves-based-on-type-capture-clause-bad.rs
moves-based-on-type-capture-clause-bad.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
moves-based-on-type-capture-clause.rs
moves-based-on-type-cyclic-types-issue-4821.rs
moves-based-on-type-cyclic-types-issue-4821.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
moves-based-on-type-distribute-copy-over-paren.rs
moves-based-on-type-distribute-copy-over-paren.stderr
moves-based-on-type-exprs.rs
moves-based-on-type-exprs.stderr
moves-based-on-type-match-bindings.rs
moves-based-on-type-match-bindings.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
moves-based-on-type-move-out-of-closure-env-issue-1965.rs
moves-based-on-type-move-out-of-closure-env-issue-1965.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
moves-based-on-type-no-recursive-stack-closure.rs
moves-based-on-type-no-recursive-stack-closure.stderr
moves-based-on-type-tuple.rs
moves-based-on-type-tuple.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
moves-sru-moved-field.rs
moves-sru-moved-field.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
needs-clone-through-deref.fixed Tweak .clone() suggestion to work in more cases 2023-12-04 21:54:32 +00:00
needs-clone-through-deref.rs Tweak .clone() suggestion to work in more cases 2023-12-04 21:54:32 +00:00
needs-clone-through-deref.stderr Tweak .clone() suggestion to work in more cases 2023-12-04 21:54:32 +00:00
pin-mut-reborrow-infer-var-issue-107419.fixed
pin-mut-reborrow-infer-var-issue-107419.rs
pin-mut-reborrow-infer-var-issue-107419.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
pin-mut-reborrow.fixed
pin-mut-reborrow.rs
pin-mut-reborrow.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
suggest-clone.fixed Tweak .clone() suggestion to work in more cases 2023-12-04 21:54:32 +00:00
suggest-clone.rs
suggest-clone.stderr Tweak .clone() suggestion to work in more cases 2023-12-04 21:54:32 +00:00
use_of_moved_value_clone_suggestions.rs
use_of_moved_value_clone_suggestions.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
use_of_moved_value_copy_suggestions.fixed
use_of_moved_value_copy_suggestions.rs
use_of_moved_value_copy_suggestions.stderr