diff options
| author | Guillaume Gomez <guillaume1.gomez@gmail.com> | 2022-08-26 14:08:48 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-08-26 14:08:48 +0200 |
| commit | 7cffb4ca63a71edbf5ecbddef9fc5a3075cf6a1a (patch) | |
| tree | 90489c484a92c1557e2f6e7c4460a2d28c777da7 /src/test/rustdoc | |
| parent | 378f851e95b706701af64de4c80f655b9654661c (diff) | |
| parent | 2ed945407f050385b6d4c34580f9b59db02a1b68 (diff) | |
| download | rust-7cffb4ca63a71edbf5ecbddef9fc5a3075cf6a1a.tar.gz rust-7cffb4ca63a71edbf5ecbddef9fc5a3075cf6a1a.zip | |
Rollup merge of #101006 - GuillaumeGomez:doc-cfg-reexport, r=notriddle
Fix doc cfg on reexports Fixes #83428. The problem was that the newly inlined item cfg propagation was not working since its real parent is different than its current one. For the implementation, I decided to put it directly into `CfgPropagation` instead of inside `inline.rs` because I thought it would be simpler to maintain and to not forget if new kind of items are added if it's all done in one place. r? `@notriddle`
Diffstat (limited to 'src/test/rustdoc')
| -rw-r--r-- | src/test/rustdoc/cfg_doc_reexport.rs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/test/rustdoc/cfg_doc_reexport.rs b/src/test/rustdoc/cfg_doc_reexport.rs new file mode 100644 index 00000000000..addb6709db1 --- /dev/null +++ b/src/test/rustdoc/cfg_doc_reexport.rs @@ -0,0 +1,33 @@ +#![feature(doc_cfg)] +#![feature(no_core)] + +#![crate_name = "foo"] +#![no_core] + +// @has 'foo/index.html' +// @has - '//*[@class="item-left module-item"]/*[@class="stab portability"]' 'foobar' +// @has - '//*[@class="item-left module-item"]/*[@class="stab portability"]' 'bar' + +#[doc(cfg(feature = "foobar"))] +mod imp_priv { + // @has 'foo/struct.BarPriv.html' + // @has - '//*[@id="main-content"]/*[@class="item-info"]/*[@class="stab portability"]' \ + // 'Available on crate feature foobar only.' + pub struct BarPriv {} + impl BarPriv { + pub fn test() {} + } +} +#[doc(cfg(feature = "foobar"))] +pub use crate::imp_priv::*; + +pub mod bar { + // @has 'foo/bar/struct.Bar.html' + // @has - '//*[@id="main-content"]/*[@class="item-info"]/*[@class="stab portability"]' \ + // 'Available on crate feature bar only.' + #[doc(cfg(feature = "bar"))] + pub struct Bar; +} + +#[doc(cfg(feature = "bar"))] +pub use bar::Bar; |
