diff options
Diffstat (limited to 'lldb/source/Expression/ClangUtilityFunction.cpp')
-rw-r--r-- | lldb/source/Expression/ClangUtilityFunction.cpp | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/lldb/source/Expression/ClangUtilityFunction.cpp b/lldb/source/Expression/ClangUtilityFunction.cpp index fd78f6e0b89..c25916243a5 100644 --- a/lldb/source/Expression/ClangUtilityFunction.cpp +++ b/lldb/source/Expression/ClangUtilityFunction.cpp @@ -28,6 +28,33 @@ using namespace lldb_private; +static const char *g_global_defines = +"#undef NULL \n" +"#undef Nil \n" +"#undef nil \n" +"#undef YES \n" +"#undef NO \n" +"#define NULL ((int)0) \n" +"#define Nil ((Class)0) \n" +"#define nil ((id)0) \n" +"#define YES ((BOOL)1) \n" +"#define NO ((BOOL)0) \n" +"typedef signed char BOOL; \n" +"typedef signed __INT8_TYPE__ int8_t;\n" +"typedef unsigned __INT8_TYPE__ uint8_t;\n" +"typedef signed __INT16_TYPE__ int16_t;\n" +"typedef unsigned __INT16_TYPE__ uint16_t;\n" +"typedef signed __INT32_TYPE__ int32_t;\n" +"typedef unsigned __INT32_TYPE__ uint32_t;\n" +"typedef signed __INT64_TYPE__ int64_t;\n" +"typedef unsigned __INT64_TYPE__ uint64_t;\n" +"typedef signed __INTPTR_TYPE__ intptr_t;\n" +"typedef unsigned __INTPTR_TYPE__ uintptr_t;\n" +"typedef __SIZE_TYPE__ size_t; \n" +"typedef __PTRDIFF_TYPE__ ptrdiff_t;\n" +"typedef unsigned short unichar;\n"; + + //------------------------------------------------------------------ /// Constructor /// @@ -40,9 +67,11 @@ using namespace lldb_private; ClangUtilityFunction::ClangUtilityFunction (const char *text, const char *name) : ClangExpression (), - m_function_text (text), + m_function_text (g_global_defines), m_function_name (name) { + if (text && text[0]) + m_function_text.append (text); } ClangUtilityFunction::~ClangUtilityFunction () |