error: calling `mem::discriminant` on non-enum type `&str` --> $DIR/mem_discriminant.rs:14:5 | LL | mem::discriminant(&"hello"); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | note: lint level defined here --> $DIR/mem_discriminant.rs:1:9 | LL | #![deny(clippy::mem_discriminant_non_enum)] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: calling `mem::discriminant` on non-enum type `&std::option::Option` --> $DIR/mem_discriminant.rs:15:5 | LL | mem::discriminant(&&Some(2)); | ^^^^^^^^^^^^^^^^^^---------^ | | | help: try dereferencing: `&Some(2)` error: calling `mem::discriminant` on non-enum type `&std::option::Option` --> $DIR/mem_discriminant.rs:16:5 | LL | mem::discriminant(&&None::); | ^^^^^^^^^^^^^^^^^^------------^ | | | help: try dereferencing: `&None::` error: calling `mem::discriminant` on non-enum type `&Foo` --> $DIR/mem_discriminant.rs:17:5 | LL | mem::discriminant(&&Foo::One(5)); | ^^^^^^^^^^^^^^^^^^-------------^ | | | help: try dereferencing: `&Foo::One(5)` error: calling `mem::discriminant` on non-enum type `&Foo` --> $DIR/mem_discriminant.rs:18:5 | LL | mem::discriminant(&&Foo::Two(5)); | ^^^^^^^^^^^^^^^^^^-------------^ | | | help: try dereferencing: `&Foo::Two(5)` error: calling `mem::discriminant` on non-enum type `A` --> $DIR/mem_discriminant.rs:19:5 | LL | mem::discriminant(&A(Foo::One(0))); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: calling `mem::discriminant` on non-enum type `&std::option::Option` --> $DIR/mem_discriminant.rs:23:5 | LL | mem::discriminant(&ro); | ^^^^^^^^^^^^^^^^^^---^ | | | help: try dereferencing: `ro` error: calling `mem::discriminant` on non-enum type `&std::option::Option` --> $DIR/mem_discriminant.rs:24:5 | LL | mem::discriminant(rro); | ^^^^^^^^^^^^^^^^^^---^ | | | help: try dereferencing: `*rro` error: calling `mem::discriminant` on non-enum type `&&std::option::Option` --> $DIR/mem_discriminant.rs:25:5 | LL | mem::discriminant(&rro); | ^^^^^^^^^^^^^^^^^^----^ | | | help: try dereferencing: `*rro` error: calling `mem::discriminant` on non-enum type `&&std::option::Option` --> $DIR/mem_discriminant.rs:29:13 | LL | mem::discriminant($param) | ^^^^^^^^^^^^^^^^^^^^^^^^^ ... LL | mem_discriminant_but_in_a_macro!(&rro); | --------------------------------------- | | | | | help: try dereferencing: `*rro` | in this macro invocation error: calling `mem::discriminant` on non-enum type `&&&&&std::option::Option` --> $DIR/mem_discriminant.rs:36:5 | LL | mem::discriminant(&rrrrro); | ^^^^^^^^^^^^^^^^^^-------^ | | | help: try dereferencing: `****rrrrro` error: calling `mem::discriminant` on non-enum type `&&&std::option::Option` --> $DIR/mem_discriminant.rs:37:5 | LL | mem::discriminant(*rrrrro); | ^^^^^^^^^^^^^^^^^^-------^ | | | help: try dereferencing: `****rrrrro` error: aborting due to 12 previous errors