On Sunday, 29 December 2013 at 11:02:33 UTC, Jacob Carlborg wrote:
And my answer to that was probably something like: that module name could already be in use today.

Can't remember :) It won't if such modules will used a common reserved package name (__dmd.attributes or __compiler.attributes).

Also, then we get a third way of naming keywords:

@property nothrow @reserved.foobar int bar ();

Is it bad? Why would anyone want to qualify it explicitly?

My proposal to resolve such name clash was to use existing symbol resolution rules and add explicit symbol import in such cases:

import __compiler.attributes : property; // takes precedence over "silent" import AFAIK

Reply via email to