diff options
| author | r0cky <mu001999@outlook.com> | 2024-01-02 00:14:21 +0800 |
|---|---|---|
| committer | r0cky <mu001999@outlook.com> | 2024-02-07 10:22:16 +0800 |
| commit | 40878ca6ea79d6e55e430846a2de3350a76cd08f (patch) | |
| tree | c8cd71be649f14f5ac8b72024928f17acd6b899d /tests | |
| parent | 586893c7b0adabf5f0a4c155fd86e13cf470e74b (diff) | |
| download | rust-40878ca6ea79d6e55e430846a2de3350a76cd08f.tar.gz rust-40878ca6ea79d6e55e430846a2de3350a76cd08f.zip | |
Make traits / trait methods detected by the dead code lint!
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/ui/lint/dead-code/issue-41883.rs | 29 | ||||
| -rw-r--r-- | tests/ui/lint/dead-code/issue-41883.stderr | 36 |
2 files changed, 65 insertions, 0 deletions
diff --git a/tests/ui/lint/dead-code/issue-41883.rs b/tests/ui/lint/dead-code/issue-41883.rs new file mode 100644 index 00000000000..e165861e893 --- /dev/null +++ b/tests/ui/lint/dead-code/issue-41883.rs @@ -0,0 +1,29 @@ +#![deny(dead_code)] + +enum Category { + Dead, //~ ERROR variant `Dead` is never constructed + Used, +} + +trait UnusedTrait { //~ ERROR trait `UnusedTrait` is never used + fn this_is_unused(&self) -> Category { + Category::Dead + } +} + +struct UnusedStruct; //~ ERROR struct `UnusedStruct` is never constructed + +impl UnusedTrait for UnusedStruct { + fn this_is_unused(&self) -> Category { + Category::Used + } +} + +mod private { + #[derive(Debug)] + struct UnusedStruct; //~ ERROR struct `UnusedStruct` is never constructed +} + +fn main() { + let _c = Category::Used; +} diff --git a/tests/ui/lint/dead-code/issue-41883.stderr b/tests/ui/lint/dead-code/issue-41883.stderr new file mode 100644 index 00000000000..cf079e4dda3 --- /dev/null +++ b/tests/ui/lint/dead-code/issue-41883.stderr @@ -0,0 +1,36 @@ +error: variant `Dead` is never constructed + --> $DIR/issue-41883.rs:4:5 + | +LL | enum Category { + | -------- variant in this enum +LL | Dead, + | ^^^^ + | +note: the lint level is defined here + --> $DIR/issue-41883.rs:1:9 + | +LL | #![deny(dead_code)] + | ^^^^^^^^^ + +error: trait `UnusedTrait` is never used + --> $DIR/issue-41883.rs:8:7 + | +LL | trait UnusedTrait { + | ^^^^^^^^^^^ + +error: struct `UnusedStruct` is never constructed + --> $DIR/issue-41883.rs:14:8 + | +LL | struct UnusedStruct; + | ^^^^^^^^^^^^ + +error: struct `UnusedStruct` is never constructed + --> $DIR/issue-41883.rs:24:12 + | +LL | struct UnusedStruct; + | ^^^^^^^^^^^^ + | + = note: `UnusedStruct` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis + +error: aborting due to 4 previous errors + |
