Is anything private by default when declared in a module?

Adam D. Ruppe destructionator at gmail.com
Tue Dec 3 07:16:04 PST 2013


On Tuesday, 3 December 2013 at 07:34:37 UTC, Jonathan M Davis 
wrote:
> They create a conflicting symbol in the importing module's 
> scope.
> That's why you should never use them at this point.

Well, that's sometimes useful, it helps get rid of conflict 
errors quickly, easily, and explicitly.

It should just be a private name in the new scope unless the 
import was public.

BTW private names should be outright invisible outside the 
module. At least private things at module scope. I get really 
annoyed with "public symbol foo from module bar conflicts with 
private symbol foo from module baz". Gee, I wonder which one I 
wanted to use???

But that's a separate issue.

> https://d.puremagic.com/issues/show_bug.cgi?id=314

wait, I thought Kenji fixed that? The comments don't say why it 
was reopened... did it just break too much Phobos code or was the 
fix wrong in some other way?


More information about the Digitalmars-d-learn mailing list