On 08/20/2015 05:55 AM, Andrei Alexandrescu wrote:
We need to fix the implementation. We can't promote imports that hide
local symbols. -- Andrei
Great! We should probably agree on the precise new semantics first though.
The current viable proposals in the bug report are:
- The symbols declared in the module at any scope nesting depth hide the
symbols in the local import, but all symbols in imports in enclosing
scopes overload against each other.
- No hiding of imported symbols by less deeply nested ones; enclosing
scopes are treated the same way as imports.
I'm not sure what's better. I think Scala does something similar to the
second proposal.