38 lines
738 B
Rust
38 lines
738 B
Rust
|
#![allow(unused)]
|
||
|
#![warn(clippy::manual_main_separator_str)]
|
||
|
|
||
|
use std::path::MAIN_SEPARATOR;
|
||
|
|
||
|
fn len(s: &str) -> usize {
|
||
|
s.len()
|
||
|
}
|
||
|
|
||
|
struct U<'a> {
|
||
|
f: &'a str,
|
||
|
g: &'a String,
|
||
|
}
|
||
|
|
||
|
struct V<T> {
|
||
|
f: T,
|
||
|
}
|
||
|
|
||
|
fn main() {
|
||
|
// Should lint
|
||
|
let _: &str = &MAIN_SEPARATOR.to_string();
|
||
|
let _ = len(&MAIN_SEPARATOR.to_string());
|
||
|
let _: Vec<u16> = MAIN_SEPARATOR.to_string().encode_utf16().collect();
|
||
|
|
||
|
// Should lint for field `f` only
|
||
|
let _ = U {
|
||
|
f: &MAIN_SEPARATOR.to_string(),
|
||
|
g: &MAIN_SEPARATOR.to_string(),
|
||
|
};
|
||
|
|
||
|
// Should not lint
|
||
|
let _: &String = &MAIN_SEPARATOR.to_string();
|
||
|
let _ = &MAIN_SEPARATOR.to_string();
|
||
|
let _ = V {
|
||
|
f: &MAIN_SEPARATOR.to_string(),
|
||
|
};
|
||
|
}
|