### What it does Checks for use of redundant allocations anywhere in the code. ### Why is this bad? Expressions such as `Rc<&T>`, `Rc>`, `Rc>`, `Rc>`, `Arc<&T>`, `Arc>`, `Arc>`, `Arc>`, `Box<&T>`, `Box>`, `Box>`, `Box>`, add an unnecessary level of indirection. ### Example ``` fn foo(bar: Rc<&usize>) {} ``` Better: ``` fn foo(bar: &usize) {} ```