mirror of
https://github.com/rust-lang/rust-clippy
synced 2024-11-30 16:39:26 +00:00
21 lines
502 B
Rust
21 lines
502 B
Rust
#![warn(clippy::option_as_ref_cloned)]
|
|
#![allow(clippy::clone_on_copy)]
|
|
|
|
fn main() {
|
|
let mut x = Some(String::new());
|
|
|
|
let _: Option<String> = x.as_ref().cloned();
|
|
let _: Option<String> = x.as_mut().cloned();
|
|
|
|
let y = x.as_ref();
|
|
let _: Option<&String> = y.as_ref().cloned();
|
|
|
|
macro_rules! cloned_recv {
|
|
() => {
|
|
x.as_ref()
|
|
};
|
|
}
|
|
|
|
// Don't lint when part of the expression is from a macro
|
|
let _: Option<String> = cloned_recv!().cloned();
|
|
}
|