{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreiafrngtu7zmytr5ypxym7yzqgawv2qxxegeaze5vamda43toll3by",
    "uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3mnixfj7maui2"
  },
  "path": "/t/make-derive-copy-enough-for-both-clone-and-copy/24371#post_3",
  "publishedAt": "2026-06-04T21:38:05.000Z",
  "site": "https://internals.rust-lang.org",
  "textContent": "It doesn't need to operate at the trait solver level, It can syntactically disappear the impl block if there is an `impl Clone` for whatever variant of the type with any generic bounds. If it removes the `impl Clone` too aggressively, people can just add the `Clone` derive again.\n\nI'm not saying this is the best way to implement it, just that the implementation side is not dead-end.",
  "title": "Make `#[derive(Copy)]` enough for both `Clone` and `Copy`"
}