summaryrefslogtreecommitdiffstats
path: root/src/test/ui/associated-types/hr-associated-type-bound-param-2.rs
blob: f74c5a8590d1d5989766217919f176d4e05b5e9d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
trait Z<'a, T: ?Sized>
where
    T: Z<'a, u16>,
    //~^ the trait bound `str: Clone` is not satisfied
    //~| the trait bound `str: Clone` is not satisfied
    for<'b> <T as Z<'b, u16>>::W: Clone,
{
    type W: ?Sized;
    fn h(&self, x: &T::W) {
        <T::W>::clone(x);
    }
}

impl<'a> Z<'a, u16> for u16 {
    type W = str;
    //~^ ERROR the trait bound `str: Clone
}

fn main() {
    1u16.h("abc");
}