??? $ cat a.d module a; pragma(mangle, "foo") extern(D) void foo() { import std.stdio; writeln("in extern foo"); } $ cat b.d module b; pragma(mangle, "foo") extern void foo(); void main() { foo(); } $ ./a in extern foo