| // This test ensures that non-glob reexports don't get their attributes merge with |
| // the reexported item whereas glob reexports do. |
| // Regression test for <https://github.com/rust-lang/rust/issues/120487>. |
| |
| #![crate_name = "foo"] |
| #![feature(doc_cfg)] |
| |
| //@ has 'foo/index.html' |
| // There are two items. |
| //@ count - '//*[@class="item-table"]//div[@class="item-name"]' 2 |
| // Only one of them should have an attribute. |
| //@ count - '//*[@class="item-table"]//div[@class="item-name"]/*[@class="stab portability"]' 1 |
| |
| mod a { |
| #[doc(cfg(not(feature = "a")))] |
| #[cfg(not(feature = "a"))] |
| pub struct Test1; |
| } |
| |
| mod b { |
| #[doc(cfg(not(feature = "a")))] |
| #[cfg(not(feature = "a"))] |
| pub struct Test2; |
| } |
| |
| //@ has 'foo/struct.Test1.html' |
| //@ count - '//*[@id="main-content"]/*[@class="item-info"]' 1 |
| //@ has - '//*[@id="main-content"]/*[@class="item-info"]' 'Available on non-crate feature a only.' |
| pub use a::*; |
| //@ has 'foo/struct.Test2.html' |
| //@ count - '//*[@id="main-content"]/*[@class="item-info"]' 0 |
| pub use b::Test2; |