about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-03-29 21:57:11 +0000
committerbors <bors@rust-lang.org>2023-03-29 21:57:11 +0000
commit2fb0e8d162a021f8a795fb603f5d8c0017855160 (patch)
tree9bff7eab583aa5f93f7186c4a891b9e3d3032c11 /src
parent17c11672167827b0dd92c88ef69f24346d1286dd (diff)
parent02cb4da8969ba2d9f2879df33fc13fce83012ed7 (diff)
downloadrust-2fb0e8d162a021f8a795fb603f5d8c0017855160.tar.gz
rust-2fb0e8d162a021f8a795fb603f5d8c0017855160.zip
Auto merge of #109734 - matthiaskrgr:rollup-oy4nlli, r=matthiaskrgr
Rollup of 8 pull requests

Successful merges:

 - #107387 (Use random `HashMap` keys on Hermit)
 - #109511 (Make `EvalCtxt`'s `infcx` private)
 - #109554 (Suggest ..= when someone tries to create an overflowing range)
 - #109675 (Do not consider elaborated projection predicates for objects in new solver)
 - #109693 (Remove ~const from alloc)
 - #109700 (Lint against escape sequences in Fluent files)
 - #109716 (Move `mir::Field` → `abi::FieldIdx`)
 - #109726 (rustdoc: Don't strip crate module)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
Diffstat (limited to 'src')
-rw-r--r--src/librustdoc/passes/strip_hidden.rs9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/librustdoc/passes/strip_hidden.rs b/src/librustdoc/passes/strip_hidden.rs
index 890b3e8d67f..a688aa14863 100644
--- a/src/librustdoc/passes/strip_hidden.rs
+++ b/src/librustdoc/passes/strip_hidden.rs
@@ -121,9 +121,14 @@ impl<'a, 'tcx> DocFolder for Stripper<'a, 'tcx> {
                 // strip things like impl methods but when doing so
                 // we must not add any items to the `retained` set.
                 let old = mem::replace(&mut self.update_retained, false);
-                let ret = strip_item(self.set_is_in_hidden_item_and_fold(true, i));
+                let ret = self.set_is_in_hidden_item_and_fold(true, i);
                 self.update_retained = old;
-                Some(ret)
+                if ret.is_crate() {
+                    // We don't strip the crate, even if it has `#[doc(hidden)]`.
+                    Some(ret)
+                } else {
+                    Some(strip_item(ret))
+                }
             }
             _ => {
                 let ret = self.set_is_in_hidden_item_and_fold(true, i);