https://issues.dlang.org/show_bug.cgi?id=13337 --- Comment #1 from Guillaume Chatelet <chatelet.guillaume at gmail.com> --- Specifying the mangling explicitely does work though extern(C++, A.B) { struct Type {} pragma(mangle,"_ZN1A1B3fooENS0_4TypeE") int foo(Type unused); } --