2024-02-16 20:02:50 +00:00
|
|
|
//@ run-pass
|
2015-07-20 08:31:54 -04:00
|
|
|
trait Foo: Sized {
|
|
|
|
fn foo(self) {}
|
|
|
|
}
|
|
|
|
|
|
|
|
trait Bar: Sized {
|
|
|
|
fn bar(self) {}
|
|
|
|
}
|
|
|
|
|
|
|
|
struct S;
|
|
|
|
|
|
|
|
impl<'l> Foo for &'l S {}
|
|
|
|
|
|
|
|
impl<T: Foo> Bar for T {}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let s = S;
|
|
|
|
s.foo();
|
|
|
|
(&s).bar();
|
|
|
|
s.bar();
|
|
|
|
}
|