//! 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); | |
} |