blob: 670c6c080eca64c8a58b58f2282da402caa94066 [file] [log] [blame]
#![allow(unused)]
#![warn(clippy::size_of_ref)]
use std::mem::size_of_val;
fn main() {
let x = 5;
let y = &x;
size_of_val(&x); // no lint
size_of_val(y); // no lint
size_of_val(&&x);
//~^ ERROR: argument to `std::mem::size_of_val()` is a reference to a reference
size_of_val(&y);
//~^ ERROR: argument to `std::mem::size_of_val()` is a reference to a reference
}
struct S {
field: u32,
data: Vec<u8>,
}
impl S {
/// Get size of object including `self`, in bytes.
pub fn size(&self) -> usize {
std::mem::size_of_val(&self) + (std::mem::size_of::<u8>() * self.data.capacity())
//~^ ERROR: argument to `std::mem::size_of_val()` is a reference to a reference
}
}