On Saturday, 15 June 2013 at 21:30:50 UTC, Timon Gehr wrote:
So does this:
void main(){
void writeln(string) {}
writeln("foo");
{
import std.stdio;
writeln("bar");
}
}
Still not seeing any issue. The first writeln cannot know about
the import because it is at a deeper scope, so only the second
writeln will print anything.
It also isn't a problem at all, ...
It sure is, the module system is supposed to provide hijacking
protection.
Hmm good point.
More peculiar example:
...
'writefx' happens to be a private symbol in std.stdio.
I think this is just the separate bug where private symbols are
visible through imports. Should be solved by DIP22 IIRC.