Usability of "allMembers and derivedMembers traits now only return visible symbols"

ketmar via Digitalmars-d digitalmars-d at puremagic.com
Tue Aug 30 22:33:50 PDT 2016


On Tuesday, 30 August 2016 at 22:24:12 UTC, Ali Çehreli wrote:
yeah, the whole feature smells for me. the sole need of mixin 
hack indicates that something is very wrong here. i never ever 
needed that for normal D code. and now suddenly i have to 
remember that some thing is a template, that it needs mixing it 
to work properly, etc.

all this mess should be resolved in compiler by assigning 
template *two* visibility scopes: one is template's "normal" 
scope (so it can see symbols from it's originating module), and 
second is it's "instantiation" scope. after all, this is exactly 
what programmer is exepecting. current solution is not a solution 
at all, it's a hacky workaround promoted to "official technique".


More information about the Digitalmars-d mailing list