Hide __atexit
Bug: http://b/21640806
Change-Id: I778b35c8c7538859179e97fcf5a82db2fcd9e50f
diff --git a/libc/stdlib/atexit.c b/libc/stdlib/atexit.c
index df2b1b5..a6970dd 100644
--- a/libc/stdlib/atexit.c
+++ b/libc/stdlib/atexit.c
@@ -37,7 +37,18 @@
#include "atexit.h"
#include "private/thread_private.h"
-struct atexit *__atexit;
+struct atexit {
+ struct atexit *next; /* next in list */
+ int ind; /* next index in this table */
+ int max; /* max entries >= ATEXIT_SIZE */
+ struct atexit_fn {
+ void (*fn_ptr)(void *);
+ void *fn_arg; /* argument for CXA callback */
+ void *fn_dso; /* shared module handle */
+ } fns[1]; /* the table itself */
+};
+
+static struct atexit *__atexit;
static int restartloop;
/* BEGIN android-changed: __unregister_atfork is used by __cxa_finalize */
diff --git a/libc/stdlib/atexit.h b/libc/stdlib/atexit.h
index 3de2aa3..e01bb34 100644
--- a/libc/stdlib/atexit.h
+++ b/libc/stdlib/atexit.h
@@ -30,18 +30,5 @@
*
*/
-struct atexit {
- struct atexit *next; /* next in list */
- int ind; /* next index in this table */
- int max; /* max entries >= ATEXIT_SIZE */
- struct atexit_fn {
- void (*fn_ptr)(void *);
- void *fn_arg; /* argument for CXA callback */
- void *fn_dso; /* shared module handle */
- } fns[1]; /* the table itself */
-};
-
-extern struct atexit *__atexit; /* points to head of LIFO stack */
-
int __cxa_atexit(void (*)(void *), void *, void *);
void __cxa_finalize(void *);
diff --git a/libc/upstream-openbsd/android/include/openbsd-compat.h b/libc/upstream-openbsd/android/include/openbsd-compat.h
index 8f55a26..47bacc3 100644
--- a/libc/upstream-openbsd/android/include/openbsd-compat.h
+++ b/libc/upstream-openbsd/android/include/openbsd-compat.h
@@ -74,7 +74,6 @@
__LIBC64_HIDDEN__ extern const short* _tolower_tab_;
__LIBC64_HIDDEN__ extern const short* _toupper_tab_;
-__LIBC_HIDDEN__ extern struct atexit* __atexit;
__LIBC_HIDDEN__ extern const char _C_ctype_[];
__LIBC_HIDDEN__ extern const short _C_toupper_[];
__LIBC_HIDDEN__ extern const short _C_tolower_[];