summaryrefslogtreecommitdiffstats
path: root/src/test/ui/traits/static-outlives-a-where-clause.rs
blob: f0c2c1082b09f8b3952175cb4bb2239a9b0184d7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// run-pass

trait Foo<'a> {
    fn xyz(self);
}
impl<'a, T> Foo<'a> for T where 'static: 'a {
    fn xyz(self) {}
}

trait Bar {
    fn uvw(self);
}
impl<T> Bar for T where for<'a> T: Foo<'a> {
    fn uvw(self) { self.xyz(); }
}

fn foo<T>(t: T) where T: Bar {
    t.uvw();
}

fn main() {
    foo(0);
}