45d01b8131
and bless a test I missed
117 lines
6.0 KiB
Plaintext
117 lines
6.0 KiB
Plaintext
error: to use a constant of type `NoDerive` in a pattern, `NoDerive` must be annotated with `#[derive(PartialEq)]`
|
|
--> $DIR/reject_non_structural.rs:42:36
|
|
|
|
|
LL | match Derive::Some(NoDerive) { ENUM => dbg!(ENUM), _ => panic!("whoops"), };
|
|
| ^^^^
|
|
|
|
|
= note: the traits must be derived, manual `impl`s are not sufficient
|
|
= note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details
|
|
|
|
error: to use a constant of type `NoDerive` in a pattern, `NoDerive` must be annotated with `#[derive(PartialEq)]`
|
|
--> $DIR/reject_non_structural.rs:48:28
|
|
|
|
|
LL | match Some(NoDerive) { FIELD => dbg!(FIELD), _ => panic!("whoops"), };
|
|
| ^^^^^
|
|
|
|
|
= note: the traits must be derived, manual `impl`s are not sufficient
|
|
= note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details
|
|
|
|
error: to use a constant of type `NoDerive` in a pattern, `NoDerive` must be annotated with `#[derive(PartialEq)]`
|
|
--> $DIR/reject_non_structural.rs:55:27
|
|
|
|
|
LL | match Some(NoDerive) {INDIRECT => dbg!(INDIRECT), _ => panic!("whoops"), };
|
|
| ^^^^^^^^
|
|
|
|
|
= note: the traits must be derived, manual `impl`s are not sufficient
|
|
= note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details
|
|
|
|
error: to use a constant of type `NoDerive` in a pattern, `NoDerive` must be annotated with `#[derive(PartialEq)]`
|
|
--> $DIR/reject_non_structural.rs:61:36
|
|
|
|
|
LL | match (None, Some(NoDerive)) { TUPLE => dbg!(TUPLE), _ => panic!("whoops"), };
|
|
| ^^^^^
|
|
|
|
|
= note: the traits must be derived, manual `impl`s are not sufficient
|
|
= note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details
|
|
|
|
error: to use a constant of type `NoDerive` in a pattern, `NoDerive` must be annotated with `#[derive(PartialEq)]`
|
|
--> $DIR/reject_non_structural.rs:67:28
|
|
|
|
|
LL | match Some(NoDerive) { TYPE_ASCRIPTION => dbg!(TYPE_ASCRIPTION), _ => panic!("whoops"), };
|
|
| ^^^^^^^^^^^^^^^
|
|
|
|
|
= note: the traits must be derived, manual `impl`s are not sufficient
|
|
= note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details
|
|
|
|
error: to use a constant of type `NoDerive` in a pattern, `NoDerive` must be annotated with `#[derive(PartialEq)]`
|
|
--> $DIR/reject_non_structural.rs:73:36
|
|
|
|
|
LL | match [None, Some(NoDerive)] { ARRAY => dbg!(ARRAY), _ => panic!("whoops"), };
|
|
| ^^^^^
|
|
|
|
|
= note: the traits must be derived, manual `impl`s are not sufficient
|
|
= note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details
|
|
|
|
error: to use a constant of type `NoDerive` in a pattern, `NoDerive` must be annotated with `#[derive(PartialEq)]`
|
|
--> $DIR/reject_non_structural.rs:79:33
|
|
|
|
|
LL | match [Some(NoDerive); 2] { REPEAT => dbg!(REPEAT), _ => panic!("whoops"), };
|
|
| ^^^^^^
|
|
|
|
|
= note: the traits must be derived, manual `impl`s are not sufficient
|
|
= note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details
|
|
|
|
error: to use a constant of type `NoDerive` in a pattern, `NoDerive` must be annotated with `#[derive(PartialEq)]`
|
|
--> $DIR/reject_non_structural.rs:86:28
|
|
|
|
|
LL | match Some(NoDerive) { NoDerive::ASSOC => dbg!(NoDerive::ASSOC), _ => panic!("whoops"), };
|
|
| ^^^^^^^^^^^^^^^
|
|
|
|
|
= note: the traits must be derived, manual `impl`s are not sufficient
|
|
= note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details
|
|
|
|
error: to use a constant of type `NoDerive` in a pattern, `NoDerive` must be annotated with `#[derive(PartialEq)]`
|
|
--> $DIR/reject_non_structural.rs:92:28
|
|
|
|
|
LL | match Some(NoDerive) { BLOCK => dbg!(BLOCK), _ => panic!("whoops"), };
|
|
| ^^^^^
|
|
|
|
|
= note: the traits must be derived, manual `impl`s are not sufficient
|
|
= note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details
|
|
|
|
warning: to use a constant of type `NoDerive` in a pattern, `NoDerive` must be annotated with `#[derive(PartialEq)]`
|
|
--> $DIR/reject_non_structural.rs:98:29
|
|
|
|
|
LL | match &Some(NoDerive) { ADDR_OF => dbg!(ADDR_OF), _ => panic!("whoops"), };
|
|
| ^^^^^^^
|
|
|
|
|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
|
|
= note: for more information, see issue #120362 <https://github.com/rust-lang/rust/issues/120362>
|
|
= note: the traits must be derived, manual `impl`s are not sufficient
|
|
= note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details
|
|
note: the lint level is defined here
|
|
--> $DIR/reject_non_structural.rs:14:9
|
|
|
|
|
LL | #![warn(indirect_structural_match)]
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
error: aborting due to 9 previous errors; 1 warning emitted
|
|
|
|
Future incompatibility report: Future breakage diagnostic:
|
|
warning: to use a constant of type `NoDerive` in a pattern, `NoDerive` must be annotated with `#[derive(PartialEq)]`
|
|
--> $DIR/reject_non_structural.rs:98:29
|
|
|
|
|
LL | match &Some(NoDerive) { ADDR_OF => dbg!(ADDR_OF), _ => panic!("whoops"), };
|
|
| ^^^^^^^
|
|
|
|
|
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
|
|
= note: for more information, see issue #120362 <https://github.com/rust-lang/rust/issues/120362>
|
|
= note: the traits must be derived, manual `impl`s are not sufficient
|
|
= note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details
|
|
note: the lint level is defined here
|
|
--> $DIR/reject_non_structural.rs:14:9
|
|
|
|
|
LL | #![warn(indirect_structural_match)]
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|