bors 1807580a49 Auto merge of #12772 - phi-gamma:redundant-struct-recreation, r=y21
add lint for recreation of an entire struct

This lint makes Clippy warn about situations where an owned struct is
essentially recreated by moving all its fields into a new instance of
the struct. The lint is not machine-applicable because the source
struct may have been partially moved.

This lint originated in something I spotted during peer review. While
working on their branch a colleague ended up with a commit where a
function returned a struct that 1:1 replicated one of its owned inputs
from its members. Initially I suspected they hadn’t run their code
through Clippy but AFAICS there is no lint for this situation yet.

changelog: new lint: [`redundant_owned_struct_recreation`]

### New lint checklist

- \[+] Followed [lint naming conventions][lint_naming]
- \[+] Added passing UI tests (including committed `.stderr` file)
- \[+] `cargo test` passes locally
- \[+] Executed `cargo dev update_lints`
- \[+] Added lint documentation
- \[+] Run `cargo dev fmt`
2024-07-21 23:02:38 +00:00
..
2024-07-17 14:05:49 -04:00
2024-07-17 14:05:49 -04:00
2024-07-17 14:05:49 -04:00
2024-07-17 14:05:49 -04:00
2024-07-20 12:50:36 +07:00
2024-07-17 14:05:49 -04:00
2024-07-17 14:05:49 -04:00
2024-07-17 14:05:49 -04:00
2024-07-04 14:31:15 +02:00
2024-07-05 10:28:26 +02:00
2024-07-17 14:05:49 -04:00
2024-04-04 19:44:04 +02:00
2024-07-17 14:05:49 -04:00
2024-06-23 13:11:54 +01:00
2024-07-17 14:05:49 -04:00
2024-07-07 18:05:41 -04:00
2024-07-07 18:05:51 -04:00
2024-03-10 23:33:00 +08:00
2024-07-07 18:07:16 -04:00
2024-07-07 18:12:05 -04:00
2024-07-07 18:12:39 -04:00
2024-07-17 14:05:49 -04:00
2024-04-15 18:48:12 -04:00
2024-05-17 18:33:37 -03:00
2024-07-17 14:05:49 -04:00
2024-07-17 14:05:49 -04:00
2024-07-20 12:50:36 +07:00
2024-06-23 13:11:54 +01:00
2024-07-17 14:05:49 -04:00
2024-03-22 11:13:29 -04:00
2024-07-17 14:05:49 -04:00
2024-07-17 14:05:49 -04:00
2024-07-17 14:05:49 -04:00