diff options
Diffstat (limited to 'tests/ui/generic-const-items/compare-impl-item.rs')
| -rw-r--r-- | tests/ui/generic-const-items/compare-impl-item.rs | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/tests/ui/generic-const-items/compare-impl-item.rs b/tests/ui/generic-const-items/compare-impl-item.rs index 01e4477c698..21c958a0abe 100644 --- a/tests/ui/generic-const-items/compare-impl-item.rs +++ b/tests/ui/generic-const-items/compare-impl-item.rs @@ -6,9 +6,10 @@ trait Trait<P> { const B<const K: u64, const Q: u64>: u64; const C<T>: T; const D<const N: usize>: usize; + const E<'a>: &'a (); - const E: usize; - const F<T: PartialEq>: (); + const F: usize; + const G<T: PartialEq>: (); } impl<P> Trait<P> for () { @@ -20,11 +21,13 @@ impl<P> Trait<P> for () { //~^ ERROR const `C` has 0 type parameters but its trait declaration has 1 type parameter const D<const N: u16>: u16 = N; //~^ ERROR const `D` has an incompatible generic parameter for trait `Trait` + const E: &'static () = &(); + //~^ ERROR lifetime parameters or bounds on const `E` do not match the trait declaration - const E: usize = 1024 + const F: usize = 1024 where P: Copy; //~ ERROR impl has stricter requirements than trait - const F<T: Eq>: () = (); //~ ERROR impl has stricter requirements than trait + const G<T: Eq>: () = (); //~ ERROR impl has stricter requirements than trait } fn main() {} |
