rust/tests/ui/lint/dead-code
Trevor Gross a70dc297a8
Rollup merge of #127017 - mu001999-contrib:dead/enhance, r=pnkfelix
Extend rules of dead code analysis for impls for adts to impls for types refer to adts

The rules of dead code analysis for impl blocks can be extended to self types which refer to adts.

So that we can lint the following unused struct and trait:
```rust
struct Foo; //~ ERROR struct `Foo` is never constructed

trait Trait { //~ ERROR trait `Trait` is never used
    fn foo(&self) {}
}

impl Trait for &Foo {}
```

r? `@pnkfelix`
2024-07-26 02:20:29 -04:00
..
alias-in-pat.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
allow-or-expect-dead_code-114557-2.rs RFC 2383: Stabilize lint_reasons 🎉 2024-06-25 17:22:22 +02:00
allow-or-expect-dead_code-114557-2.stderr RFC 2383: Stabilize lint_reasons 🎉 2024-06-25 17:22:22 +02:00
allow-or-expect-dead_code-114557-3.rs RFC 2383: Stabilize lint_reasons 🎉 2024-06-25 17:22:22 +02:00
allow-or-expect-dead_code-114557-3.stderr RFC 2383: Stabilize lint_reasons 🎉 2024-06-25 17:22:22 +02:00
allow-or-expect-dead_code-114557.rs RFC 2383: Stabilize lint_reasons 🎉 2024-06-25 17:22:22 +02:00
allow-unconstructed-pub-struct.rs Add pub struct with allow(dead_code) into worklist 2024-06-12 17:58:20 +08:00
anon-const-in-pat.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
associated-type.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
basic.rs
basic.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
closure-bang.rs Unignore closure-bang. 2023-04-15 14:43:20 -07:00
closure-bang.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
const-and-self.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
const-and-self.stderr
empty-unused-enum.rs
empty-unused-enum.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
empty-unused-public-enum.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
enum-variants.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
impl-trait.rs
impl-trait.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
in-closure.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
in-closure.stderr
issue-41883.rs Make traits / trait methods detected by the dead code lint! 2024-02-07 10:22:16 +08:00
issue-41883.stderr Detect unused struct impls pub trait 2024-03-10 23:30:53 +08:00
issue-59003.rs Improve dead code analysis 2024-07-04 22:05:00 +08:00
issue-68408-false-positive.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-85071-2.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-85071-2.stderr
issue-85071.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-85071.stderr
issue-85255.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-85255.stderr dead-code-lint: de-dup multiple unused assoc fns 2023-04-13 22:42:47 +12:00
leading-underscore.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
lint-dead-code-1.rs Detect pub structs never constructed and unused associated constants in traits 2024-06-05 23:20:09 +08:00
lint-dead-code-1.stderr Detect pub structs never constructed and unused associated constants in traits 2024-06-05 23:20:09 +08:00
lint-dead-code-2.rs
lint-dead-code-2.stderr
lint-dead-code-3.rs
lint-dead-code-3.stderr dead-code-lint: de-dup multiple unused assoc fns 2023-04-13 22:42:47 +12:00
lint-dead-code-4.rs
lint-dead-code-4.stderr
lint-dead-code-5.rs Adjust compiler tests for unused_tuple_struct_fields -> dead_code 2024-01-02 15:34:37 -05:00
lint-dead-code-5.stderr Adjust compiler tests for unused_tuple_struct_fields -> dead_code 2024-01-02 15:34:37 -05:00
lint-dead-code-6.rs dead-code-lint: de-dup multiple unused assoc fns 2023-04-13 22:42:47 +12:00
lint-dead-code-6.stderr dead-code-lint: de-dup multiple unused assoc fns 2023-04-13 22:42:47 +12:00
lint-unused-adt-appeared-in-pattern.rs Improve dead code analysis 2024-07-04 22:05:00 +08:00
lint-unused-adt-appeared-in-pattern.stderr Improve dead code analysis 2024-07-04 22:05:00 +08:00
multiple-dead-codes-in-the-same-struct.rs Update tests 2024-02-07 10:42:01 +08:00
multiple-dead-codes-in-the-same-struct.stderr Detect unused struct impls pub trait 2024-03-10 23:30:53 +08:00
newline-span.rs
newline-span.stderr
not-lint-used-adt-appeared-in-pattern.rs Improve dead code analysis 2024-07-04 22:05:00 +08:00
offset-of-correct-param-env.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
offset-of.rs Stabilize simple offset_of 2024-01-19 20:38:51 +00:00
offset-of.stderr bless 2023-04-21 02:14:03 -07:00
pub-field-in-priv-mod.rs Replace visibility test with reachability test in dead code detection 2024-03-12 10:59:40 +01:00
pub-field-in-priv-mod.stderr Replace visibility test with reachability test in dead code detection 2024-03-12 10:59:40 +01:00
self-assign.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
self-assign.stderr
trait-impl.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
tuple-struct-field.rs Suggest removing unused tuple fields if they are the last fields 2024-05-13 17:42:44 +05:30
tuple-struct-field.stderr Suggest removing unused tuple fields if they are the last fields 2024-05-13 17:42:44 +05:30
type-alias.rs
type-alias.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
type-in-foreign.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-in-transparent.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
unused-adt-impl-pub-trait-with-assoc-const.rs Improve dead code analysis 2024-07-04 22:05:00 +08:00
unused-adt-impl-pub-trait-with-assoc-const.stderr Improve dead code analysis 2024-07-04 22:05:00 +08:00
unused-adt-impls-pub-trait.rs Detect unused struct impls pub trait 2024-03-10 23:30:53 +08:00
unused-adt-impls-pub-trait.stderr Detect unused struct impls pub trait 2024-03-10 23:30:53 +08:00
unused-adt-impls-trait.rs Detect unused structs which implement private traits 2024-05-23 09:07:59 +08:00
unused-adt-impls-trait.stderr Detect unused structs which implement private traits 2024-05-23 09:07:59 +08:00
unused-assoc-const.rs Detect pub structs never constructed and unused associated constants in traits 2024-06-05 23:20:09 +08:00
unused-assoc-const.stderr Detect pub structs never constructed and unused associated constants in traits 2024-06-05 23:20:09 +08:00
unused-assoc-fns.rs impl reviewer feedback 2023-04-13 23:39:14 +12:00
unused-assoc-fns.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
unused-enum.rs
unused-enum.stderr
unused-impl-for-non-adts.rs Extend rules of dead code analysis for impls for adts to impls for types refer to adts 2024-06-27 14:11:54 +08:00
unused-impl-for-non-adts.stderr Extend rules of dead code analysis for impls for adts to impls for types refer to adts 2024-06-27 14:11:54 +08:00
unused-pub-struct.rs Detect pub structs never constructed and unused associated constants in traits 2024-06-05 23:20:09 +08:00
unused-pub-struct.stderr Detect pub structs never constructed and unused associated constants in traits 2024-06-05 23:20:09 +08:00
unused-struct-derive-default.rs Improve dead code analysis 2024-07-04 22:05:00 +08:00
unused-struct-derive-default.stderr Improve dead code analysis 2024-07-04 22:05:00 +08:00
unused-struct-variant.rs
unused-struct-variant.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
unused-trait-with-assoc-ty.rs Mark assoc tys live only if the trait is live 2024-06-18 16:00:57 +08:00
unused-trait-with-assoc-ty.stderr Mark assoc tys live only if the trait is live 2024-06-18 16:00:57 +08:00
unused-variant-pub.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
unused-variant.rs Show notice about "never used" for enum 2024-06-16 18:33:51 +09:00
unused-variant.stderr Show notice about "never used" for enum 2024-06-16 18:33:51 +09:00
with-core-crate.rs
with-core-crate.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
with-impl.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00