1 #![feature(auto_traits)]
2 #![feature(negative_impls)]
3 
4 #[allow(private_in_public)]
5 mod m {
6     pub trait PubPrincipal {}
7     auto trait PrivNonPrincipal {}
leak_dyn_nonprincipal() -> Box<dyn PubPrincipal + PrivNonPrincipal>8     pub fn leak_dyn_nonprincipal() -> Box<dyn PubPrincipal + PrivNonPrincipal> { loop {} }
9 }
10 
main()11 fn main() {
12     m::leak_dyn_nonprincipal();
13     //~^ ERROR trait `PrivNonPrincipal` is private
14 }
15