24 lines
520 B
Rust
24 lines
520 B
Rust
// Test that we DO NOT warn when lifetime name is used only
|
|
// once in a fn return type -- using `'_` is not legal there,
|
|
// as it must refer back to an argument.
|
|
//
|
|
// (Normally, using `'static` would be preferred, but there are
|
|
// times when that is not what you want.)
|
|
|
|
//@ check-pass
|
|
|
|
#![deny(single_use_lifetimes)]
|
|
|
|
// OK: used only in return type
|
|
fn b<'a>() -> &'a u32 {
|
|
&22
|
|
}
|
|
|
|
pub trait Tfv<'a> {}
|
|
impl Tfv<'_> for () {}
|
|
|
|
// Do NOT lint if used in return type.
|
|
pub fn i<'a>() -> impl Tfv<'a> {}
|
|
|
|
fn main() {}
|