From f565efd617fc2b74bca7fa637faf9c6241008442 Mon Sep 17 00:00:00 2001 From: Andy Russell Date: Wed, 13 Feb 2019 19:57:12 -0500 Subject: [PATCH] mask `compiler_builtins` docs Since `compiler_builtins` is being injected automatically, its docs aren't masked. This commit masks the crate's docs if it's brought in as an extern crate. --- src/librustdoc/clean/mod.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/librustdoc/clean/mod.rs b/src/librustdoc/clean/mod.rs index b0bb033b94b25..3044704718b4a 100644 --- a/src/librustdoc/clean/mod.rs +++ b/src/librustdoc/clean/mod.rs @@ -165,7 +165,12 @@ impl<'a, 'tcx, 'rcx> Clean for visit_ast::RustdocVisitor<'a, 'tcx, 'rcx> match module.inner { ModuleItem(ref module) => { for it in &module.items { - if it.is_extern_crate() && it.attrs.has_doc_flag("masked") { + // `compiler_builtins` should be masked too, but we can't apply + // `#[doc(masked)]` to the injected `extern crate` because it's unstable. + if it.is_extern_crate() + && (it.attrs.has_doc_flag("masked") + || self.cx.tcx.is_compiler_builtins(it.def_id.krate)) + { masked_crates.insert(it.def_id.krate); } }