traits getMember gives a deprecation warning

Adil via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Tue Apr 26 03:03:25 PDT 2016


I'm using DMD 2.071 and am getting this new deprecation error:

source/screener/lib/syntax/semantics.d(42): Deprecation: 
screener.lib.virtualmachine.functions.object is not visible from 
module semantics
source/screener/lib/syntax/semantics.d(42): Deprecation: 
screener.lib.virtualmachine.functions.object is not visible from 
module semantics
source/screener/lib/syntax/semantics.d(42): Deprecation: 
screener.lib.virtualmachine.functions.screener is not visible 
from module semantics
source/screener/lib/syntax/semantics.d(42): Deprecation: 
screener.lib.virtualmachine.functions.screener is not visible 
from module semantics


The offendding line is this :

  import screener.lib.virtualmachine.functions;
         alias funcModule = screener.lib.virtualmachine.functions;

         bool found = false;
         foreach(m; __traits(allMembers, funcModule)) {
             static if ((__traits(isStaticFunction, 
__traits(getMember, funcModule, m)) || __traits(isTemplate, 
__traits(getMember, funcModule, m))) && __traits(getProtection, 
__traits(getMember, funcModule, m)) != "private")
             {

The module 'screener.lib.virtualmachine.functions' defines 
'public' functions/templates. How can i fix this?


More information about the Digitalmars-d-learn mailing list