Report a bug
		
				If you spot a problem with this page, click here to create a Bugzilla issue.
		
			Improve this page
		
			Quickly fork, edit online, and submit a pull request for this page.
			Requires a signed-in GitHub account. This works well for small changes.
			If you'd like to make larger changes you may want to consider using
			a local clone.
		
	dmd.mangle.cpp
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, https://www.digitalmars.com
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.
- package CppOperatorisCppOperator(scope const Identifierid);
- Check if id is a C++ operatorParameters:Identifier ididentifier to be checked Returns:CppOperator, or Unknown if not a C++ operator
- const(char)*toCppMangleItanium(Dsymbols);
- const(char)*cppTypeInfoMangleItanium(Dsymbols);
- const(char)*cppThunkMangleItanium(FuncDeclarationfd, intoffset);
- boolisAggregateDtor(const Dsymbolsym);
- Determine if sym is a full aggregate destructor.Parameters:Dsymbol symDsymbol Returns:true if sym is an aggregate destructor
Copyright © 1999-2025 by the D Language Foundation | Page generated by
Ddoc on Mon Mar 31 10:28:06 2025