error: `A` is forbidden as the type of a const generic parameter --> $DIR/forbid-non-structural_match-types.rs:10:19 | LL | struct B; // ok | ^ | = note: the only supported types are integers, `bool` and `char` = help: more complex types are supported with `#[feature(const_generics)]` error: `C` is forbidden as the type of a const generic parameter --> $DIR/forbid-non-structural_match-types.rs:15:19 | LL | struct D; | ^ | = note: the only supported types are integers, `bool` and `char` = help: more complex types are supported with `#[feature(const_generics)]` error[E0741]: `C` must be annotated with `#[derive(PartialEq, Eq)]` to be used as the type of a const parameter --> $DIR/forbid-non-structural_match-types.rs:15:19 | LL | struct D; | ^ `C` doesn't derive both `PartialEq` and `Eq` error: aborting due to 3 previous errors For more information about this error, try `rustc --explain E0741`.