Don't know if this will be useful in any manner, but it came this silly way: class MyClass { struct _static { static void myfun() { writeln("static myfun"); } } void myfun() { writeln("myfun"); } } void main() { auto obj = new MyClass(); obj.myfun(); //myfun obj._static.myfun(); //static MyClass._static.myfun(); //static }