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