[dmd-internals] Why are there suddenly tons of deprecation messages about imports in Phobos?

Jonathan M Davis via dmd-internals dmd-internals at puremagic.com
Mon Feb 22 15:18:37 PST 2016


On Monday, February 22, 2016 12:09:34 Steven Schveighoffer via dmd-internals wrote:
> I think you misunderstood the problem. If you have a local foo declared, then the FQN doesn’t help (as it starts with foo), you need to use a different name that doesn’t conflict, requiring either a renamed import, or using the leaf symbol name.

Well, if you have a conflict like that, I would expect the local symbol to
win, and then you use a renamed import to get around the naming conflict. It
doesn't require that selective imports not work with FQN. As long as
selective imports don't work with FQN, they basically become renaming
imports. Like Brad discussed elsewhere in the thread, I've always thought
that selective imports just filtered out which symbols got imported and
didn't do any renaming. As it is, their job seems overloaded. But clearly,
the way imports are implemented really doesn't match how either Brad or I
think of them. And IMHO, the way that they are implemented makes it way more
confusing than it should be for the user, though I doubt that it's likely
we're going to change Walter's mind without a really convincing argument,
which is usually very hard to do - especially if his way of looking at the
problem is completely different from yours.

- Jonathan M Davis




More information about the dmd-internals mailing list