Implement custom diagnostic for ConstParamTy
This commit is contained in:
parent
a9fcb524ff
commit
847d50453c
51 changed files with 455 additions and 152 deletions
|
@ -10,15 +10,19 @@ struct A;
|
|||
struct B<const X: A>; // error!
|
||||
```
|
||||
|
||||
Only structural-match types (that is, types that derive `PartialEq` and `Eq`)
|
||||
may be used as the types of const generic parameters.
|
||||
Only structural-match types, which are types that derive `PartialEq` and `Eq`
|
||||
and implement `ConstParamTy`, may be used as the types of const generic
|
||||
parameters.
|
||||
|
||||
To fix the previous code example, we derive `PartialEq` and `Eq`:
|
||||
To fix the previous code example, we derive `PartialEq`, `Eq`, and
|
||||
`ConstParamTy`:
|
||||
|
||||
```
|
||||
#![feature(adt_const_params)]
|
||||
|
||||
#[derive(PartialEq, Eq)] // We derive both traits here.
|
||||
use std::marker::ConstParamTy;
|
||||
|
||||
#[derive(PartialEq, Eq, ConstParamTy)] // We derive both traits here.
|
||||
struct A;
|
||||
|
||||
struct B<const X: A>; // ok!
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue