about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/librustdoc/visit_ast.rs5
-rw-r--r--src/test/rustdoc/doc-auto-cfg.rs25
2 files changed, 19 insertions, 11 deletions
diff --git a/src/librustdoc/visit_ast.rs b/src/librustdoc/visit_ast.rs
index 00553d3f007..ac934f6925d 100644
--- a/src/librustdoc/visit_ast.rs
+++ b/src/librustdoc/visit_ast.rs
@@ -141,7 +141,10 @@ impl<'a, 'tcx> RustdocVisitor<'a, 'tcx> {
                     })
                     .collect::<Vec<_>>()
             })
-            .chain([Cfg::Cfg(sym::test, None)].into_iter())
+            .chain(
+                [Cfg::Cfg(sym::test, None), Cfg::Cfg(sym::doc, None), Cfg::Cfg(sym::doctest, None)]
+                    .into_iter(),
+            )
             .collect();
 
         self.cx.cache.exact_paths = self.exact_paths;
diff --git a/src/test/rustdoc/doc-auto-cfg.rs b/src/test/rustdoc/doc-auto-cfg.rs
index d73718762a7..7842ee69c9f 100644
--- a/src/test/rustdoc/doc-auto-cfg.rs
+++ b/src/test/rustdoc/doc-auto-cfg.rs
@@ -2,29 +2,34 @@
 #![crate_name = "foo"]
 
 // @has foo/fn.foo.html
-// @has - '//*[@class="item-info"]/*[@class="stab portability"]' 'non-doctest'
-#[cfg(not(doctest))]
+// @has - '//*[@class="item-info"]/*[@class="stab portability"]' 'non-meowmeow'
+#[cfg(not(meowmeow))]
 pub fn foo() {}
 
 // @has foo/fn.bar.html
-// @has - '//*[@class="item-info"]/*[@class="stab portability"]' 'doc'
+// @has - '//*[@class="item-info"]/*[@class="stab portability"]' 'meowmeow'
 // @!has - '//*[@class="item-info"]/*[@class="stab portability"]' 'test'
-#[cfg(any(test, doc))]
+// @!has - '//*[@class="item-info"]/*[@class="stab portability"]' 'doc'
+// @!has - '//*[@class="item-info"]/*[@class="stab portability"]' 'doctest'
+#[cfg(any(meowmeow, test, doc, doctest))]
 pub fn bar() {}
 
 // @has foo/fn.appear_1.html
-// @has - '//*[@class="item-info"]/*[@class="stab portability"]' 'doc'
+// @has - '//*[@class="item-info"]/*[@class="stab portability"]' 'meowmeow'
+// @!has - '//*[@class="item-info"]/*[@class="stab portability"]' 'doc'
 // @!has - '//*[@class="item-info"]/*[@class="stab portability"]' 'non-test'
-#[cfg(any(doc, not(test)))]
+#[cfg(any(meowmeow, doc, not(test)))]
 pub fn appear_1() {} // issue #98065
 
 // @has foo/fn.appear_2.html
-// @has - '//*[@class="item-info"]/*[@class="stab portability"]' 'doc'
+// @has - '//*[@class="item-info"]/*[@class="stab portability"]' 'meowmeow'
+// @!has - '//*[@class="item-info"]/*[@class="stab portability"]' 'doc'
 // @!has - '//*[@class="item-info"]/*[@class="stab portability"]' 'test'
-#[cfg(any(doc, all(test)))]
+#[cfg(any(meowmeow, doc, all(test)))]
 pub fn appear_2() {} // issue #98065
 
 // @has foo/fn.appear_3.html
-// @has - '//*[@class="item-info"]/*[@class="stab portability"]' 'doc'
-#[cfg(any(doc, all()))]
+// @has - '//*[@class="item-info"]/*[@class="stab portability"]' 'meowmeow'
+// @!has - '//*[@class="item-info"]/*[@class="stab portability"]' 'doc'
+#[cfg(any(meowmeow, doc, all()))]
 pub fn appear_3() {} // issue #98065