Use DMD's C++ name mangling functionality.

Likely wrong for MinGW/MSVC.

Fixes DMD testcase 'test7030'.
This commit is contained in:
David Nadlinger
2013-01-04 05:45:42 +01:00
parent eb56e934a5
commit 86a6a6ba05
2 changed files with 2 additions and 2 deletions

View File

@@ -24,7 +24,7 @@
#include "id.h"
#include "module.h"
#if TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_OPENBSD || TARGET_SOLARIS
#if TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_OPENBSD || TARGET_SOLARIS || IN_LLVM
char *cpp_mangle(Dsymbol *s);
#endif

View File

@@ -110,7 +110,7 @@ void unittests();
// 2: Modifying iteratee in body is error without -d switch
// Set if C++ mangling is done by the front end
#define CPP_MANGLE (DMDV2 && (TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_OPENBSD || TARGET_SOLARIS))
#define CPP_MANGLE (DMDV2 && (TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_OPENBSD || TARGET_SOLARIS || IN_LLVM))
/* Other targets are TARGET_LINUX, TARGET_OSX, TARGET_FREEBSD, TARGET_OPENBSD and
* TARGET_SOLARIS, which are