https://issues.dlang.org/show_bug.cgi?id=24443
Issue ID: 24443 Summary: Substitution failure for nested/member functions on POSIX systems Product: D Version: D2 Hardware: x86 OS: Mac OS X Status: NEW Severity: enhancement Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: emmankoko...@gmail.com this assertion fails as the parameter fails to substitute extern (C++) struct A(T) { } extern(C++) struct B(T) { } extern (C++) struct G(key, value = A!(const(key)), alloc = B!(const(key))) { void foo(ref const(key)); } void main() { int a; assert(G!(int).foo.mangleof == "_ZN1GIi1AIKiE1BIS1_EE3fooERS1_"); } D's mangling: _ZN1GIi1AIKiE1BIS1_EE3fooERKi --