> On Feb 22, 2016, at 7:04 AM, Jonathan M Davis via dmd-internals > <[email protected]> wrote: > > On Sunday, February 21, 2016 19:08:37 Steven Schveighoffer via dmd-internals > wrote: >> >> The key comment in those PRs: >> https://github.com/D-Programming-Language/dmd/pull/5426#issuecomment-181589047 > > Well, while I can see why from an implementation perspective, it makes sense > to say that when you have > > import foo.bar : baz; > > you haven't really imported the module, so foo.bar.baz isn't legit, and you > have to say baz, from a usability perspective, nobody is going to expect > that foo.bar.baz suddenly is just baz and not foo.bar.baz, because you > imported it with a selective imports.
Like the comment says, however, what if you have a local foo symbol defined? The compiler is going to complain, or silently choose one (I think with the new lookup rules, it would choose the local module’s name). With Phobos, this isn’t strictly an issue, since we have no local symbols named std. But I could see lots of problems with other libraries. -Steve _______________________________________________ dmd-internals mailing list [email protected] http://lists.puremagic.com/mailman/listinfo/dmd-internals
