summaryrefslogtreecommitdiff
path: root/bridges
diff options
context:
space:
mode:
authorTor Lillqvist <tml@collabora.com>2014-04-30 14:11:19 +0300
committerTor Lillqvist <tml@collabora.com>2014-04-30 14:44:07 +0300
commit77cfb8478c8e8058bb43e92fa18c47411e11b2cf (patch)
tree0927c6ac710446eb6cac133aa0be9d0c4269b715 /bridges
parentc6b6fff63d9ce900bed5eda550ea1af9d854bc8d (diff)
Fix compilation error against OS X SDK 10.9
Despite what the comment says, it seems that the declarations *must* match the ones in the SDK's cxxabi.h. (Why do we need our own declarations at all then? I am not entirely sure.) Change-Id: I32c2bed69816dc5fd0a20afe04c5a9045ee70dc1
Diffstat (limited to 'bridges')
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_x86-64/share.hxx9
1 files changed, 8 insertions, 1 deletions
diff --git a/bridges/source/cpp_uno/gcc3_macosx_x86-64/share.hxx b/bridges/source/cpp_uno/gcc3_macosx_x86-64/share.hxx
index c8535d68ee1b..a10e46165f22 100644
--- a/bridges/source/cpp_uno/gcc3_macosx_x86-64/share.hxx
+++ b/bridges/source/cpp_uno/gcc3_macosx_x86-64/share.hxx
@@ -137,10 +137,17 @@ namespace CPPU_CURRENT_NAMESPACE
// complain about redeclarations of these somewhat implicitly declared
// functions):
#if __GNUC__ == 4 && __GNUC_MINOR__ <= 6
+
+#if defined __clang__ && MACOSX_SDK_VERSION >= 1090
+#define CXA_THROW_TINFO_TYPE std::type_info *
+#else
+#define CXA_THROW_TINFO_TYPE void *
+#endif
+
extern "C" void *__cxa_allocate_exception(
std::size_t thrown_size ) throw();
extern "C" void __cxa_throw (
- void *thrown_exception, void *tinfo, void (*dest) (void *) ) __attribute__((noreturn));
+ void *thrown_exception, CXA_THROW_TINFO_TYPE tinfo, void (*dest) (void *) ) __attribute__((noreturn));
#endif
// -----