This code: ``` rust mod A { struct X; mod B { use A::X; pub fn foo(_: X) {} } } ``` Triggers: ``` src\main.rs:6:23: 6:24 error: private type in exported type signature src\main.rs:6 pub fn foo(_: X) {} ``` The `foo` function is only visible to `A` and `B`, and `X` is also visible to both `A` and `B`, so I don't see why this would be forbidden. This was introduced in the `rustc 1.0.0-nightly (f4e0ce66a 2015-03-19) (built 2015-03-20)` nightly. With the 2015-03-17, this works.