diff options
Diffstat (limited to 'tests/ui/self/self_lifetime.rs')
-rw-r--r-- | tests/ui/self/self_lifetime.rs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/ui/self/self_lifetime.rs b/tests/ui/self/self_lifetime.rs new file mode 100644 index 000000000..f04bd83ab --- /dev/null +++ b/tests/ui/self/self_lifetime.rs @@ -0,0 +1,15 @@ +// check-pass + +// https://github.com/rust-lang/rust/pull/60944#issuecomment-495346120 + +struct Foo<'a>(&'a ()); +impl<'a> Foo<'a> { + fn foo<'b>(self: &'b Foo<'a>) -> &() { self.0 } +} + +type Alias = Foo<'static>; +impl Alias { + fn bar<'a>(self: &Alias, arg: &'a ()) -> &() { arg } +} + +fn main() {} |