aboutsummaryrefslogtreecommitdiff
path: root/system/lib/libcxxabi/src/temporary.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'system/lib/libcxxabi/src/temporary.cpp')
-rw-r--r--system/lib/libcxxabi/src/temporary.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/system/lib/libcxxabi/src/temporary.cpp b/system/lib/libcxxabi/src/temporary.cpp
new file mode 100644
index 00000000..5facf39d
--- /dev/null
+++ b/system/lib/libcxxabi/src/temporary.cpp
@@ -0,0 +1,41 @@
+//===---------------------------- temporary.cpp ---------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "abort_message.h"
+
+#pragma GCC visibility push(default)
+
+extern "C"
+{
+
+static
+void f1()
+{
+ abort_message("__cxa_new_handler shouldn't be called");
+}
+
+static
+void f2()
+{
+ abort_message("__cxa_terminate_handler shouldn't be called");
+}
+
+static
+void f3()
+{
+ abort_message("__cxa_unexpected_handler shouldn't be called");
+}
+
+void (*__cxa_new_handler)() = f1;
+void (*__cxa_terminate_handler)() = f2;
+void (*__cxa_unexpected_handler)() = f3;
+
+}
+
+#pragma GCC visibility pop