When type T is defined private in file test.nim and a public proc p (returns T) is defined in this file too, and test is imported in test2.nim, test.p can be used there but test.T can't and at the same time test.p returns T. I saw that this is forbidden in rust ([https://github.com/rust-lang/rust/issues/22261](https://github.com/rust-lang/rust/issues/22261)) and I think it makes sense to forbid it. IIRC Go allows it, like Nim.
Was this discussed before for Nim?
