summaryrefslogtreecommitdiffstats
path: root/src/exception.cpp
diff options
context:
space:
mode:
authordim <dim@FreeBSD.org>2013-04-27 17:27:12 +0000
committerdim <dim@FreeBSD.org>2013-04-27 17:27:12 +0000
commit8546120978e348b3bed62936eae651837ccbcafd (patch)
treef4dbdda47a8f2e8eb8196e6a33ed834e8400837e /src/exception.cpp
parentfab14d3df75fc3af83c06ed85bb9c068f1144351 (diff)
downloadFreeBSD-src-8546120978e348b3bed62936eae651837ccbcafd.zip
FreeBSD-src-8546120978e348b3bed62936eae651837ccbcafd.tar.gz
Vendor import of libc++ trunk r180598.
Diffstat (limited to 'src/exception.cpp')
-rw-r--r--src/exception.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/exception.cpp b/src/exception.cpp
index 0cd182b..1d2f6b2 100644
--- a/src/exception.cpp
+++ b/src/exception.cpp
@@ -14,7 +14,7 @@
#define __has_include(inc) 0
#endif
-#if __APPLE__
+#ifdef __APPLE__
#include <cxxabi.h>
using namespace __cxxabiv1;
@@ -77,6 +77,7 @@ get_terminate() _NOEXCEPT
return __sync_fetch_and_add(&__terminate_handler, (terminate_handler)0);
}
+#ifndef EMSCRIPTEN // We provide this in JS
_LIBCPP_NORETURN
void
terminate() _NOEXCEPT
@@ -97,12 +98,13 @@ terminate() _NOEXCEPT
}
#endif // _LIBCPP_NO_EXCEPTIONS
}
+#endif // !EMSCRIPTEN
#endif // !defined(LIBCXXRT) && !defined(_LIBCPPABI_VERSION)
-#if !defined(LIBCXXRT) && !defined(__GLIBCXX__)
+#if !defined(LIBCXXRT) && !defined(__GLIBCXX__) && !defined(EMSCRIPTEN)
bool uncaught_exception() _NOEXCEPT
{
-#if __APPLE__ || defined(_LIBCPPABI_VERSION)
+#if defined(__APPLE__) || defined(_LIBCPPABI_VERSION)
// on Darwin, there is a helper function so __cxa_get_globals is private
return __cxa_uncaught_exception();
#else // __APPLE__
OpenPOWER on IntegriCloud