diff options
| author | bors <bors@rust-lang.org> | 2021-10-11 17:12:14 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2021-10-11 17:12:14 +0000 |
| commit | 5b210643ebf2485aafdf2494de8cf41941a64e95 (patch) | |
| tree | 60ecf0b4cd6f526c9e5d02474b2c7e82ac233760 /library/core/src | |
| parent | 1067e2ca5e9cfe5c79f956e49ffc684c5142d49b (diff) | |
| parent | f4836768be12a0cd3a6bd8afc551ae836a87d973 (diff) | |
| download | rust-5b210643ebf2485aafdf2494de8cf41941a64e95.tar.gz rust-5b210643ebf2485aafdf2494de8cf41941a64e95.zip | |
Auto merge of #83908 - Flying-Toast:master, r=davidtwco
Add enum_intrinsics_non_enums lint There is a clippy lint to prevent calling [`mem::discriminant`](https://doc.rust-lang.org/std/mem/fn.discriminant.html) with a non-enum type. I think the lint is worthy of being included in rustc, given that `discriminant::<T>()` where `T` is a non-enum has an unspecified return value, and there are no valid use cases where you'd actually want this. I've also made the lint check [variant_count](https://doc.rust-lang.org/core/mem/fn.variant_count.html) (#73662). closes #83899
Diffstat (limited to 'library/core/src')
| -rw-r--r-- | library/core/src/mem/mod.rs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/library/core/src/mem/mod.rs b/library/core/src/mem/mod.rs index 84fd1a532c1..894ae10e1b4 100644 --- a/library/core/src/mem/mod.rs +++ b/library/core/src/mem/mod.rs @@ -1053,6 +1053,7 @@ pub const fn discriminant<T>(v: &T) -> Discriminant<T> { #[inline(always)] #[unstable(feature = "variant_count", issue = "73662")] #[rustc_const_unstable(feature = "variant_count", issue = "73662")] +#[rustc_diagnostic_item = "mem_variant_count"] pub const fn variant_count<T>() -> usize { intrinsics::variant_count::<T>() } |
