blob: 6ae7e150c51be1c138e85c6a5abab25d1573406c [file] [log] [blame]
//@ check-pass
struct Foo<A: Repr>(<A as Repr>::Data);
impl<A> Copy for Foo<A> where <A as Repr>::Data: Copy {}
impl<A> Clone for Foo<A>
where
<A as Repr>::Data: Clone,
{
fn clone(&self) -> Self {
Foo(self.0.clone())
}
}
trait Repr {
type Data;
}
impl<A> Repr for A {
type Data = u32;
}
fn main() {}