dmd.cppmangle

Do mangling for C++ linkage.

This is the POSIX side of the implementation. It exports two functions to C++, toCppMangleItanium and cppTypeInfoMangleItanium.

Members

Functions

cppThunkMangleItanium
const(char)* cppThunkMangleItanium(FuncDeclaration fd, int offset)
cppTypeInfoMangleItanium
const(char)* cppTypeInfoMangleItanium(Dsymbol s)
isPrimaryDtor
bool isPrimaryDtor(Dsymbol sym)

Determine if sym is the 'primary' destructor, that is, the most-aggregate destructor (the one that is defined as __xdtor)

toCppMangleItanium
const(char)* toCppMangleItanium(Dsymbol s)

Bugs

https://issues.dlang.org/query.cgi

enter C++, mangling as the keywords.

Meta

Source

_cppmangle.d Documentation: https://dlang.org/phobos/dmd_cppmangle.html Coverage: https://codecov.io/gh/dlang/dmd/src/master/src/dmd/cppmangle.d

References: Follows Itanium C++ ABI 1.86 section 5.1 http://refspecs.linux-foundation.org/cxxabi-1.86.html#mangling

which is where the grammar comments come from.

Suggestion Box / Bug Report