diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 1396496d5ebbdeeed066fc97856ccf0179568f28..8355247096df9627239f9a9228efc699bdca4c94 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,10 @@
+2002-12-10  Mark Mitchell  <mark@codesourcery.com>
+
+	* libsupc++/cxxabi.h (__cxa_bad_cast): Declare it.
+	(__cxa_bad_typeid): Likewise.
+	(__cxa_atexit): Likewise.
+	(__cxa_finalize): Likewise.
+
 2002-12-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>
 
 	* include/bits/slice_array.h (slice_array<>::operator=): Fix typo.
diff --git a/libstdc++-v3/libsupc++/cxxabi.h b/libstdc++-v3/libsupc++/cxxabi.h
index babb97f4aabc41ea051f6091dc112daa10f12d12..adb1a00d30740d58865f31925bc176a8d2dcb8d1 100644
--- a/libstdc++-v3/libsupc++/cxxabi.h
+++ b/libstdc++-v3/libsupc++/cxxabi.h
@@ -520,6 +520,22 @@ void __cxa_guard_abort (__guard *);
 extern "C" void
 __cxa_pure_virtual (void);
 
+/* exception handling */
+
+extern "C" void
+__cxa_bad_cast ();
+
+extern "C" void
+__cxa_bad_typeid ();
+
+/* DSO destruction */
+
+extern "C" int
+__cxa_atexit (void (*)(void *), void *, void *);
+
+extern "C" int
+__cxa_finalize (void *);
+
 /* demangling routines */
 
 extern "C"