summaryrefslogtreecommitdiff
path: root/misc/uClibc++
diff options
context:
space:
mode:
Diffstat (limited to 'misc/uClibc++')
-rw-r--r--misc/uClibc++/libxx/uClibc++/Make.defs1
-rw-r--r--misc/uClibc++/libxx/uClibc++/vterminate.cxx22
2 files changed, 23 insertions, 0 deletions
diff --git a/misc/uClibc++/libxx/uClibc++/Make.defs b/misc/uClibc++/libxx/uClibc++/Make.defs
index 335ae8db1..40aee6e47 100644
--- a/misc/uClibc++/libxx/uClibc++/Make.defs
+++ b/misc/uClibc++/libxx/uClibc++/Make.defs
@@ -52,6 +52,7 @@ endif
# libsupc++ replacement
+# CXXSRCS += vterminate.C
ifneq ($(CONFIG_UCLIBCXX_HAVE_LIBSUPCXX),y)
CXXSRCS += eh_alloc.cxx eh_globals.cxx eh_terminate.cxx
endif
diff --git a/misc/uClibc++/libxx/uClibc++/vterminate.cxx b/misc/uClibc++/libxx/uClibc++/vterminate.cxx
new file mode 100644
index 000000000..09d19b19f
--- /dev/null
+++ b/misc/uClibc++/libxx/uClibc++/vterminate.cxx
@@ -0,0 +1,22 @@
+/* Copyright (C) 2012 Gregory Nutt
+ *
+ * This file is part of the uClibc++ Library.
+ *
+ * A replacement for __gnu_cxx::terminate
+ */
+
+#include <basic_definitions>
+#include <cstdlib>
+#include <cunistd>
+#include <debug.h>
+
+// This is a brain-dead replacement for __gnu_cxx::__verbose_terminate_handler
+
+namespace __gnu_cxx
+{
+ void __verbose_terminate_handler()
+ {
+ ldbg("PID %d: Terminating...\n", getpid());
+ abort();
+ }
+}