2019-11-03 18:00:00 -06:00
|
|
|
// check-pass
|
2018-09-25 16:51:35 -05:00
|
|
|
#![allow(dead_code)]
|
2015-01-22 14:21:46 -06:00
|
|
|
// Test that the requirement (in `Bar`) that `T::Bar : 'static` does
|
|
|
|
// not wind up propagating to `T`.
|
|
|
|
|
2015-03-22 15:13:15 -05:00
|
|
|
// pretty-expanded FIXME #23616
|
|
|
|
|
2015-01-22 14:21:46 -06:00
|
|
|
pub trait Foo {
|
|
|
|
type Bar;
|
|
|
|
|
|
|
|
fn foo(&self) -> Self;
|
|
|
|
}
|
|
|
|
|
|
|
|
pub struct Static<T:'static>(T);
|
|
|
|
|
|
|
|
struct Bar<T:Foo>
|
|
|
|
where T::Bar : 'static
|
|
|
|
{
|
|
|
|
x: Static<Option<T::Bar>>
|
|
|
|
}
|
|
|
|
|
|
|
|
fn main() { }
|