Add Euro character.
[kopensolaris-gnu/glibc.git] / malloc / malloc.h
index ddbc694..81966b8 100644 (file)
@@ -1,5 +1,5 @@
 /* Prototypes and definition for malloc implementation.
-   Copyright (C) 1996 Free Software Foundation, Inc.
+   Copyright (C) 1996, 1997 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
 */
 
 #if defined(__STDC__) || defined (__cplusplus)
-#include <stddef.h>
-#define __malloc_ptr_t  void *
+# include <stddef.h>
+# define __malloc_ptr_t  void *
 #else
-#undef  size_t
-#define size_t          unsigned int
-#undef  ptrdiff_t
-#define ptrdiff_t       int
-#define __malloc_ptr_t  char *
+# undef  size_t
+# define size_t          unsigned int
+# undef  ptrdiff_t
+# define ptrdiff_t       int
+# define __malloc_ptr_t  char *
 #endif
 
 #ifdef _LIBC
 /* Used by GNU libc internals. */
-#define __malloc_size_t size_t
-#define __malloc_ptrdiff_t ptrdiff_t
+# define __malloc_size_t size_t
+# define __malloc_ptrdiff_t ptrdiff_t
 #endif
 
-#if defined (__STDC__) || defined (__cplusplus) || defined (__GNUC__)
-#define __MALLOC_P(args)        args
+#if defined __STDC__ || defined __cplusplus || defined __GNUC__
+# define __MALLOC_P(args)        args
 #else
-#define __MALLOC_P(args)        ()
+# define __MALLOC_P(args)        ()
 #endif
 
 #ifndef NULL
-#ifdef __cplusplus
-#define NULL    0
-#else
-#define NULL    ((__malloc_ptr_t) 0)
-#endif
+# ifdef __cplusplus
+#  define NULL 0
+# else
+#  define NULL ((__malloc_ptr_t) 0)
+# endif
 #endif
 
 #ifdef __cplusplus
@@ -74,6 +74,11 @@ extern "C" {
 #endif
 
 /* Nonzero if the malloc is already initialized.  */
+#ifdef _LIBC
+/* In the GNU libc we rename the global variable
+   `__malloc_initialized' to `__libc_malloc_initialized'.  */
+# define __malloc_initialized __libc_malloc_initialized
+#endif
 extern int __malloc_initialized;
 
 /* Initialize global configuration.  Not needed with GNU libc. */
@@ -133,16 +138,16 @@ extern struct mallinfo mallinfo __MALLOC_P ((void));
 
 /* SVID2/XPG mallopt options */
 #ifndef M_MXFAST
-#define M_MXFAST  1    /* UNUSED in this malloc */
+# define M_MXFAST  1   /* UNUSED in this malloc */
 #endif
 #ifndef M_NLBLKS
-#define M_NLBLKS  2    /* UNUSED in this malloc */
+# define M_NLBLKS  2   /* UNUSED in this malloc */
 #endif
 #ifndef M_GRAIN
-#define M_GRAIN   3    /* UNUSED in this malloc */
+# define M_GRAIN   3   /* UNUSED in this malloc */
 #endif
 #ifndef M_KEEP
-#define M_KEEP    4    /* UNUSED in this malloc */
+# define M_KEEP    4   /* UNUSED in this malloc */
 #endif
 
 /* mallopt options that actually do something */
@@ -166,24 +171,34 @@ extern size_t malloc_usable_size __MALLOC_P ((__malloc_ptr_t __ptr));
 /* Prints brief summary statistics on stderr. */
 extern void malloc_stats __MALLOC_P ((void));
 
-#if defined(__GLIBC__) || defined(MALLOC_HOOKS)
+/* Record the state of all malloc variables in an opaque data structure. */
+extern __malloc_ptr_t malloc_get_state __MALLOC_P ((void));
+
+/* Restore the state of all malloc variables from data obtained with
+   malloc_get_state(). */
+extern int malloc_set_state __MALLOC_P ((__malloc_ptr_t __ptr));
 
+#if defined __GLIBC__ || defined MALLOC_HOOKS
 /* Hooks for debugging versions. */
 extern void (*__malloc_initialize_hook) __MALLOC_P ((void));
-extern void (*__free_hook) __MALLOC_P ((__malloc_ptr_t __ptr));
-extern __malloc_ptr_t (*__malloc_hook) __MALLOC_P ((size_t __size));
+extern void (*__free_hook) __MALLOC_P ((__malloc_ptr_t __ptr,
+                                       __const __malloc_ptr_t));
+extern __malloc_ptr_t (*__malloc_hook) __MALLOC_P ((size_t __size,
+                                                   __const __malloc_ptr_t));
 extern __malloc_ptr_t (*__realloc_hook) __MALLOC_P ((__malloc_ptr_t __ptr,
-                                                    size_t __size));
+                                                    size_t __size,
+                                                    __const __malloc_ptr_t));
 extern __malloc_ptr_t (*__memalign_hook) __MALLOC_P ((size_t __size,
-                                                     size_t __alignment));
+                                                     size_t __alignment,
+                                                     __const __malloc_ptr_t));
+extern void (*__after_morecore_hook) __MALLOC_P ((void));
 
 /* Activate a standard set of debugging hooks. */
-extern void malloc_check_init __MALLOC_P ((void));
-
+extern void __malloc_check_init __MALLOC_P ((void));
 #endif
 
 #ifdef __cplusplus
 }; /* end of extern "C" */
 #endif
 
-#endif /* !defined(_MALLOC_H) */
+#endif /* malloc.h */