summaryrefslogtreecommitdiffstats
path: root/src/test/ui/derives/clone-debug-dead-code.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/derives/clone-debug-dead-code.rs')
-rw-r--r--src/test/ui/derives/clone-debug-dead-code.rs45
1 files changed, 0 insertions, 45 deletions
diff --git a/src/test/ui/derives/clone-debug-dead-code.rs b/src/test/ui/derives/clone-debug-dead-code.rs
deleted file mode 100644
index ab49260c0..000000000
--- a/src/test/ui/derives/clone-debug-dead-code.rs
+++ /dev/null
@@ -1,45 +0,0 @@
-// Checks that derived implementations of Clone and Debug do not
-// contribute to dead code analysis (issue #84647).
-
-#![forbid(dead_code)]
-
-struct A { f: () }
-//~^ ERROR: field `f` is never read
-
-#[derive(Clone)]
-struct B { f: () }
-//~^ ERROR: field `f` is never read
-
-#[derive(Debug)]
-struct C { f: () }
-//~^ ERROR: field `f` is never read
-
-#[derive(Debug,Clone)]
-struct D { f: () }
-//~^ ERROR: field `f` is never read
-
-struct E { f: () }
-//~^ ERROR: field `f` is never read
-// Custom impl, still doesn't read f
-impl Clone for E {
- fn clone(&self) -> Self {
- Self { f: () }
- }
-}
-
-struct F { f: () }
-// Custom impl that actually reads f
-impl Clone for F {
- fn clone(&self) -> Self {
- Self { f: self.f }
- }
-}
-
-fn main() {
- let _ = A { f: () };
- let _ = B { f: () };
- let _ = C { f: () };
- let _ = D { f: () };
- let _ = E { f: () };
- let _ = F { f: () };
-}