summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/libc/include/libc_private.h5
-rw-r--r--lib/libc/stdio/local.h1
-rw-r--r--lib/libc/stdio/makebuf.c4
-rw-r--r--lib/libc/stdlib/abort.c2
-rw-r--r--lib/libc/stdlib/exit.c4
5 files changed, 12 insertions, 4 deletions
diff --git a/lib/libc/include/libc_private.h b/lib/libc/include/libc_private.h
index 0f170db..8dca7a0 100644
--- a/lib/libc/include/libc_private.h
+++ b/lib/libc/include/libc_private.h
@@ -135,4 +135,9 @@ extern const char *__progname;
*/
extern struct _spinlock *__malloc_lock;
+/*
+ * Function to clean up streams, called from abort() and exit().
+ */
+extern void (*__cleanup)(void);
+
#endif /* _LIBC_PRIVATE_H_ */
diff --git a/lib/libc/stdio/local.h b/lib/libc/stdio/local.h
index 16a9e78..74c3238 100644
--- a/lib/libc/stdio/local.h
+++ b/lib/libc/stdio/local.h
@@ -65,7 +65,6 @@ extern fpos_t __sseek(void *, fpos_t, int);
extern int __sclose(void *);
extern void __sinit(void);
extern void _cleanup(void);
-extern void (*__cleanup)(void);
extern void __smakebuf(FILE *);
extern int __swhatbuf(FILE *, size_t *, int *);
extern int _fwalk(int (*)(FILE *));
diff --git a/lib/libc/stdio/makebuf.c b/lib/libc/stdio/makebuf.c
index bc8a468..bdade67 100644
--- a/lib/libc/stdio/makebuf.c
+++ b/lib/libc/stdio/makebuf.c
@@ -46,9 +46,11 @@ __FBSDID("$FreeBSD$");
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
-#include "local.h"
#include "un-namespace.h"
+#include "libc_private.h"
+#include "local.h"
+
/*
* Allocate a file buffer, or switch to unbuffered I/O.
* Per the ANSI C standard, ALL tty devices default to line buffered.
diff --git a/lib/libc/stdlib/abort.c b/lib/libc/stdlib/abort.c
index 36cd15b..468a9bf 100644
--- a/lib/libc/stdlib/abort.c
+++ b/lib/libc/stdlib/abort.c
@@ -45,7 +45,7 @@ __FBSDID("$FreeBSD$");
#include <pthread.h>
#include "un-namespace.h"
-void (*__cleanup)();
+#include "libc_private.h"
void
abort()
diff --git a/lib/libc/stdlib/exit.c b/lib/libc/stdlib/exit.c
index 83abdbd..cafb127 100644
--- a/lib/libc/stdlib/exit.c
+++ b/lib/libc/stdlib/exit.c
@@ -41,9 +41,11 @@ __FBSDID("$FreeBSD$");
#include <stdlib.h>
#include <unistd.h>
#include "un-namespace.h"
+
#include "atexit.h"
+#include "libc_private.h"
-void (*__cleanup)();
+void (*__cleanup)(void);
/*
* This variable is zero until a process has created a thread.
OpenPOWER on IntegriCloud