| warning: type `Priv` is more private than the item `Leak` |
| --> $DIR/projections.rs:3:5 |
| | |
| LL | pub type Leak = Priv; |
| | ^^^^^^^^^^^^^ type alias `Leak` is reachable at visibility `pub(crate)` |
| | |
| note: but type `Priv` is only usable at visibility `pub(self)` |
| --> $DIR/projections.rs:2:5 |
| | |
| LL | struct Priv; |
| | ^^^^^^^^^^^ |
| = note: `#[warn(private_interfaces)]` on by default |
| |
| error[E0446]: private type `Priv` in public interface |
| --> $DIR/projections.rs:24:5 |
| | |
| LL | struct Priv; |
| | ----------- `Priv` declared as private |
| ... |
| LL | type A<T> = m::Leak; |
| | ^^^^^^^^^ can't leak private type |
| |
| error[E0446]: private type `Priv` in public interface |
| --> $DIR/projections.rs:39:5 |
| | |
| LL | struct Priv; |
| | ----------- `Priv` declared as private |
| ... |
| LL | type A<T: Trait> = T::A<m::Leak>; |
| | ^^^^^^^^^^^^^^^^ can't leak private type |
| |
| error: type `Priv` is private |
| --> $DIR/projections.rs:14:15 |
| | |
| LL | fn check() -> <u8 as Trait>::A<m::Leak> { |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^ private type |
| |
| error: type `Priv` is private |
| --> $DIR/projections.rs:29:39 |
| | |
| LL | fn check2() -> <u8 as Trait2>::A<u32> { |
| | _______________________________________^ |
| LL | | |
| LL | | todo!() |
| LL | | } |
| | |_^ private type |
| |
| error: type `Priv` is private |
| --> $DIR/projections.rs:24:17 |
| | |
| LL | type A<T> = m::Leak; |
| | ^^^^^^^ private type |
| |
| error: type `Priv` is private |
| --> $DIR/projections.rs:39:24 |
| | |
| LL | type A<T: Trait> = T::A<m::Leak>; |
| | ^^^^^^^^^^^^^ private type |
| |
| error: aborting due to 6 previous errors; 1 warning emitted |
| |
| For more information about this error, try `rustc --explain E0446`. |