dmd.cppmangle
Do mangling for C++ linkage.
Discussion
This is the POSIX side of the implementation.
It exports two functions to C++, toCppMangleItanium
and cppTypeInfoMangleItanium
.
License
Source: cppmangle.d
Documentation: https://dlang.org/phobos/dmd_cppmangle.html
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.
-
Declaration
const(char)*
toCppMangleItanium
(Dsymbols
); -
Declaration
const(char)*
cppTypeInfoMangleItanium
(Dsymbols
); -
Declaration
const(char)*
cppThunkMangleItanium
(FuncDeclarationfd
, intoffset
); -
Declaration
bool
isPrimaryDtor
(const Dsymbolsym
);Determine if
sym
is the 'primary' destructor, that is, the most-aggregate destructor (the one that is defined as _xdtor)Parameters
Dsymbol
sym
Dsymbol
Return Value
true
ifsym
is the primary destructor for an aggregate