W3cubDocs

/D

dmd.cppmangle

Compiler implementation of the D programming language

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

Authors:
Walter Bright, http://www.digitalmars.com
License:
Boost License 1.0
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.
Bugs:
https://issues.dlang.org/query.cgi enter C++, mangling as the keywords.
const(char)* toCppMangleItanium(Dsymbol s);
const(char)* cppTypeInfoMangleItanium(Dsymbol s);
bool isPrimaryDtor(const Dsymbol sym);

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

Parameters:
Dsymbol sym Dsymbol
Returns:
true if sym is the primary destructor for an aggregate

© 1999–2019 The D Language Foundation
Licensed under the Boost License 1.0.
https://dlang.org/phobos/dmd_cppmangle.html