aboutsummaryrefslogtreecommitdiff
path: root/stdlib/stdlib.h
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/stdlib.h')
-rw-r--r--stdlib/stdlib.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/stdlib/stdlib.h b/stdlib/stdlib.h
index 3b9539e329..8a47b81ed9 100644
--- a/stdlib/stdlib.h
+++ b/stdlib/stdlib.h
@@ -45,19 +45,23 @@ typedef struct
} div_t;
/* Returned by `ldiv'. */
+#ifndef __ldiv_t_defined
typedef struct
{
long int quot; /* Quotient. */
long int rem; /* Remainder. */
} ldiv_t;
+# define __ldiv_t_defined 1
+#endif
-#ifdef __USE_ISOC9X
+#if defined __USE_ISOC9X && !defined __lldiv_t_defined
/* Returned by `lldiv'. */
__extension__ typedef struct
{
long long int quot; /* Quotient. */
long long int rem; /* Remainder. */
} lldiv_t;
+# define __lldiv_t_defined 1
#endif
@@ -515,6 +519,12 @@ extern int on_exit __P ((void (*__func) (int __status, __ptr_t __arg),
perform stdio cleanup, and terminate program execution with STATUS. */
extern void exit __P ((int __status)) __attribute__ ((__noreturn__));
+#ifdef __USE_ISOC9X
+/* Terminate the program with STATUS without calling any of the
+ functions registered with `atexit' or `on_exit'. */
+extern void _Exit __P ((int __status)) __attribute__ ((__noreturn__));
+#endif
+
/* Return the value of envariable NAME, or NULL if it doesn't exist. */
extern char *getenv __P ((__const char *__name));