diff options
Diffstat (limited to 'src/test/ui/traits/static-outlives-a-where-clause.rs')
-rw-r--r-- | src/test/ui/traits/static-outlives-a-where-clause.rs | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/test/ui/traits/static-outlives-a-where-clause.rs b/src/test/ui/traits/static-outlives-a-where-clause.rs new file mode 100644 index 000000000..f0c2c1082 --- /dev/null +++ b/src/test/ui/traits/static-outlives-a-where-clause.rs @@ -0,0 +1,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); +} |