DMD 2.062:

//-- module other.d, same dir as main --
module other;
int j;
//--

//-- module dir/other.d, subdir of main --
module dir.other;
int j;
//--


//-- module main.d --
module main;

import other;
pragma(msg, [__traits(allMembers, (other))]);

import dir.other;
pragma(msg, [__traits(allMembers, dir.other)]);

void main(){}
//--

When the module name I use inside __traits is in the same dir as the main module, I need the extra parenthesis to satisfy the compiler. Is this a bug, or unavoidable?

Reply via email to