| //! Regression test for #114728. | |
| trait Extend<'a, 'b> { | |
| fn extend(self, _: &'a str) -> &'b str; | |
| } | |
| impl<'a, 'b> Extend<'a, 'b> for Option<&'b &'a ()> { | |
| fn extend(self, s: &'a str) -> &'b str { | |
| s | |
| } | |
| } | |
| fn boom<'a, 'b>() -> impl Extend<'a, 'b> { | |
| None::<&'_ &'_ ()> //~ ERROR lifetime may not live long enough | |
| } | |
| fn main() { | |
| let y = boom().extend(&String::from("temporary")); | |
| println!("{}", y); | |
| } |