diff options
author | Ed Maste <emaste@freebsd.org> | 2014-04-08 17:02:25 +0000 |
---|---|---|
committer | Ed Maste <emaste@freebsd.org> | 2014-04-08 17:02:25 +0000 |
commit | 42c549b3466684498f475381db0f06425fe7de98 (patch) | |
tree | 653014c259cf48014d9a9cef5b81991fdc05bdf7 /lldb/source/Core/Mangled.cpp | |
parent | c6574c1aa3b3e0f1e4ce5732188d61642c1c7d19 (diff) | |
download | bcm5719-llvm-42c549b3466684498f475381db0f06425fe7de98.tar.gz bcm5719-llvm-42c549b3466684498f475381db0f06425fe7de98.zip |
Revert r205769 as it breaks the build on FreeBSD:
error: declaration of constexpr static data member 'spec' requires an
initializer
llvm-svn: 205776
Diffstat (limited to 'lldb/source/Core/Mangled.cpp')
-rw-r--r-- | lldb/source/Core/Mangled.cpp | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/lldb/source/Core/Mangled.cpp b/lldb/source/Core/Mangled.cpp index 3da10e5192b..60cd80fa2ee 100644 --- a/lldb/source/Core/Mangled.cpp +++ b/lldb/source/Core/Mangled.cpp @@ -11,13 +11,7 @@ // FreeBSD9-STABLE requires this to know about size_t in cxxabi.h #include <cstddef> #if defined(_MSC_VER) -#define LLDB_USE_BUILTIN_DEMANGLER -// MSVC doesn't support constexpr, alignas, __attribute__ and noexcept yet -#define constexpr -#define alignas(X) -#define __attribute__(X) -#define noexcept -#define snprintf _snprintf +// 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 @@ -179,30 +173,30 @@ struct float_data<float> { static const size_t mangled_size = 8; static const size_t max_demangled_size = 24; - static constexpr const char* spec; + static constexpr const char* spec = "%af"; }; -constexpr const char* float_data<float>::spec = "%af"; +constexpr const char* float_data<float>::spec; template <> struct float_data<double> { static const size_t mangled_size = 16; static const size_t max_demangled_size = 32; - static constexpr const char* spec; + static constexpr const char* spec = "%a"; }; -constexpr const char* float_data<double>::spec = "%a"; +constexpr const char* float_data<double>::spec; template <> struct float_data<long double> { static const size_t mangled_size = 20; // May need to be adjusted to 16 or 24 on other platforms static const size_t max_demangled_size = 40; - static constexpr const char* spec; + static constexpr const char* spec = "%LaL"; }; -constexpr const char* float_data<long double>::spec = "%LaL"; +constexpr const char* float_data<long double>::spec; template <class Float, class C> const char* |