1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
trait Z<'a, T: ?Sized>
where
T: Z<'a, u16>,
//~^ ERROR the trait bound `str: Clone` is not satisfied
//~| ERROR 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);
//~^ ERROR the trait bound `str: Clone` is not satisfied
//~| ERROR the trait bound `str: Clone` is not satisfied
//~| ERROR the trait bound `str: Clone` is not satisfied
}
}
impl<'a> Z<'a, u16> for u16 {
type W = str;
//~^ ERROR the trait bound `str: Clone
}
fn main() {
1u16.h("abc");
//~^ ERROR Clone` is not satisfied
}
|