diff --git a/tests/ui/rmeta/auxiliary/doc-inline-metadata-encoding-lib.rs b/tests/ui/rmeta/auxiliary/doc-inline-metadata-encoding-lib.rs new file mode 100644 index 0000000000000..e9ee382993379 --- /dev/null +++ b/tests/ui/rmeta/auxiliary/doc-inline-metadata-encoding-lib.rs @@ -0,0 +1,27 @@ +#![crate_type = "lib"] +#![crate_name = "doc_inline_metadata_encoding_lib"] + +mod inner { + pub struct PublicItem { + pub field: i32, + } + + pub struct InnerItem { + pub field: i32, + } + + pub struct MixedAttributes { + pub field: i32, + } +} + +#[doc(inline)] +pub use inner::PublicItem; + +#[doc(inline)] +pub use inner::InnerItem; + +// Regression test for #149919. +#[doc(hidden)] +#[doc(inline)] +pub use inner::MixedAttributes; diff --git a/tests/ui/rmeta/doc-inline-metadata-encoding.rs b/tests/ui/rmeta/doc-inline-metadata-encoding.rs new file mode 100644 index 0000000000000..83553f33ea830 --- /dev/null +++ b/tests/ui/rmeta/doc-inline-metadata-encoding.rs @@ -0,0 +1,15 @@ +// Regression test for #149919 + +//@ compile-flags: --emit=metadata +//@ aux-build:doc-inline-metadata-encoding-lib.rs +//@ no-prefer-dynamic +//@ build-pass + +extern crate doc_inline_metadata_encoding_lib; + +use doc_inline_metadata_encoding_lib::*; + +pub fn main() { + let _ = PublicItem { field: 42 }; + let _ = InnerItem { field: 42 }; +}