From 2797b64f7ecd80c0d44167ac9ff2ce1167fe472f Mon Sep 17 00:00:00 2001 From: Andre Bogus Date: Tue, 14 Jan 2020 18:20:56 +0100 Subject: [PATCH] Omit doc safety/errors header checking for main --- clippy_lints/src/doc.rs | 6 ++++-- tests/ui/doc_errors.rs | 4 +++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/clippy_lints/src/doc.rs b/clippy_lints/src/doc.rs index 9a349611b3d..dd09499c0ce 100644 --- a/clippy_lints/src/doc.rs +++ b/clippy_lints/src/doc.rs @@ -1,4 +1,4 @@ -use crate::utils::{match_type, paths, return_ty, span_lint}; +use crate::utils::{is_entrypoint_fn, match_type, paths, return_ty, span_lint}; use itertools::Itertools; use rustc::lint::in_external_macro; use rustc_data_structures::fx::FxHashSet; @@ -153,7 +153,9 @@ impl<'a, 'tcx> LateLintPass<'a, 'tcx> for DocMarkdown { let headers = check_attrs(cx, &self.valid_idents, &item.attrs); match item.kind { hir::ItemKind::Fn(ref sig, ..) => { - if !in_external_macro(cx.tcx.sess, item.span) { + if !(is_entrypoint_fn(cx, cx.tcx.hir().local_def_id(item.hir_id)) + || in_external_macro(cx.tcx.sess, item.span)) + { lint_for_missing_headers(cx, item.hir_id, item.span, sig, headers); } }, diff --git a/tests/ui/doc_errors.rs b/tests/ui/doc_errors.rs index 408cf573896..776a65275e9 100644 --- a/tests/ui/doc_errors.rs +++ b/tests/ui/doc_errors.rs @@ -61,4 +61,6 @@ impl Trait1 for Struct1 { } } -fn main() {} +fn main() -> Result<(), ()> { + Ok(()) +}