| #![warn(clippy::rc_buffer)] | |
| use std::cell::RefCell; | |
| use std::ffi::OsString; | |
| use std::path::PathBuf; | |
| use std::rc::Rc; | |
| struct S { | |
| // triggers lint | |
| bad1: Rc<str>, | |
| //~^ rc_buffer | |
| bad2: Rc<std::path::Path>, | |
| //~^ rc_buffer | |
| bad3: Rc<[u8]>, | |
| //~^ rc_buffer | |
| bad4: Rc<std::ffi::OsStr>, | |
| //~^ rc_buffer | |
| // does not trigger lint | |
| good1: Rc<RefCell<String>>, | |
| } | |
| // triggers lint | |
| fn func_bad1(_: Rc<str>) {} | |
| //~^ rc_buffer | |
| fn func_bad2(_: Rc<std::path::Path>) {} | |
| //~^ rc_buffer | |
| fn func_bad3(_: Rc<[u8]>) {} | |
| //~^ rc_buffer | |
| fn func_bad4(_: Rc<std::ffi::OsStr>) {} | |
| //~^ rc_buffer | |
| // does not trigger lint | |
| fn func_good1(_: Rc<RefCell<String>>) {} | |
| mod issue_15802 { | |
| fn foo(_: std::rc::Rc<[u8]>) {} | |
| //~^ rc_buffer | |
| } | |
| fn main() {} |