| #![deny( |
| clippy::unnecessary_safety_doc, |
| clippy::missing_errors_doc, |
| clippy::missing_panics_doc |
| )] |
| |
| /// This is a private function, skip to match behavior with `missing_safety_doc`. |
| /// |
| /// # Safety |
| /// |
| /// Boo! |
| fn you_dont_see_me() { |
| //~^ ERROR: safe function's docs have unnecessary `# Safety` section |
| unimplemented!(); |
| } |
| |
| mod private_mod { |
| /// This is public but unexported function. |
| /// |
| /// # Safety |
| /// |
| /// Very safe! |
| pub fn only_crate_wide_accessible() -> Result<(), ()> { |
| //~^ ERROR: safe function's docs have unnecessary `# Safety` section |
| //~| ERROR: docs for function returning `Result` missing `# Errors` section |
| unimplemented!(); |
| } |
| } |
| |
| pub struct S; |
| |
| impl S { |
| /// Private, fine again to stay consistent with `missing_safety_doc`. |
| /// |
| /// # Safety |
| /// |
| /// Unnecessary! |
| fn private(&self) { |
| //~^ ERROR: safe function's docs have unnecessary `# Safety` section |
| //~| ERROR: docs for function which may panic missing `# Panics` section |
| panic!(); |
| } |
| } |
| |
| #[doc(hidden)] |
| pub mod __macro { |
| pub struct T; |
| impl T { |
| pub unsafe fn f() {} |
| //~^ ERROR: unsafe function's docs are missing a `# Safety` section |
| } |
| } |
| |
| #[warn(clippy::missing_errors_doc)] |
| #[test] |
| fn test() -> Result<(), ()> { |
| Ok(()) |
| } |
| |
| fn main() {} |