### What it does Checks for `enum`s with no variants. As of this writing, the `never_type` is still a nightly-only experimental API. Therefore, this lint is only triggered if the `never_type` is enabled. ### Why is this bad? If you want to introduce a type which can't be instantiated, you should use `!` (the primitive type "never"), or a wrapper around it, because `!` has more extensive compiler support (type inference, etc...) and wrappers around it are the conventional way to define an uninhabited type. For further information visit [never type documentation](https://doc.rust-lang.org/std/primitive.never.html) ### Example ``` enum Test {} ``` Use instead: ``` #![feature(never_type)] struct Test(!); ```