1 /// Only named projected types can be imported.
2 /// See visibility.rs for named projected types.
3 
4 mod pub_ {
5     use pin_project::pin_project;
6 
7     #[pin_project]
8     pub struct Default(());
9 
10     #[pin_project(project_replace)]
11     pub struct Replace(());
12 }
13 #[allow(unused_imports)]
14 pub mod use_ {
15     #[rustfmt::skip]
16     use crate::pub_::__DefaultProjection; //~ ERROR E0432
17     #[rustfmt::skip]
18     use crate::pub_::__DefaultProjectionRef; //~ ERROR E0432
19     #[rustfmt::skip]
20     use crate::pub_::__ReplaceProjection; //~ ERROR E0432
21     #[rustfmt::skip]
22     use crate::pub_::__ReplaceProjectionOwned; //~ ERROR E0432
23     #[rustfmt::skip]
24     use crate::pub_::__ReplaceProjectionRef; //~ ERROR E0432
25 
26     // Confirm that the visibility of the original type is not changed.
27     pub use crate::pub_::{Default, Replace};
28 }
29 
main()30 fn main() {}
31