summaryrefslogtreecommitdiffstats
path: root/lldb/source/Core/Mangled.cpp
diff options
context:
space:
mode:
authorColin Riley <colin@codeplay.com>2013-11-20 15:19:08 +0000
committerColin Riley <colin@codeplay.com>2013-11-20 15:19:08 +0000
commit61979ccad6ddbe46f85491511e6c710d8365a4aa (patch)
treec615c695d3da684f2bf6a4c703e255f72a22b855 /lldb/source/Core/Mangled.cpp
parent48437ce508df1badb71467dc3cc42aa22d3b5d1e (diff)
downloadbcm5719-llvm-61979ccad6ddbe46f85491511e6c710d8365a4aa.tar.gz
bcm5719-llvm-61979ccad6ddbe46f85491511e6c710d8365a4aa.zip
Fix MSVC build
The demangler added in r193708 from cxa_demangle.cpp uses language features which are not supported by the latest visual studio. In order to preserve the msvc build, this patch restores the previous (non)functionality in windows under msvc by disabling the demangler. llvm-svn: 195254
Diffstat (limited to 'lldb/source/Core/Mangled.cpp')
-rw-r--r--lldb/source/Core/Mangled.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/lldb/source/Core/Mangled.cpp b/lldb/source/Core/Mangled.cpp
index 189c3bc5531..a41986de514 100644
--- a/lldb/source/Core/Mangled.cpp
+++ b/lldb/source/Core/Mangled.cpp
@@ -10,7 +10,9 @@
// FreeBSD9-STABLE requires this to know about size_t in cxxabi.h
#include <cstddef>
-#if defined(_MSC_VER) || defined (__FreeBSD__)
+#if defined(_MSC_VER)
+// Cannot enable the builtin demangler on msvc as it does not support the cpp11 within the implementation.
+#elif defined (__FreeBSD__)
#define LLDB_USE_BUILTIN_DEMANGLER
#else
#include <cxxabi.h>
@@ -4890,6 +4892,9 @@ Mangled::GetDemangledName () const
// add it to our map.
#ifdef LLDB_USE_BUILTIN_DEMANGLER
char *demangled_name = __cxa_demangle (mangled_cstr, NULL, NULL, NULL);
+#elif defined(_MSC_VER)
+ // Cannot demangle on msvc.
+ char *demangled_name = nullptr;
#else
char *demangled_name = abi::__cxa_demangle (mangled_cstr, NULL, NULL, NULL);
#endif
OpenPOWER on IntegriCloud