.
[gnulib.git] / lib / xalloc.h
index 38ae1d0..098a6c2 100644 (file)
@@ -1,5 +1,5 @@
 /* xalloc.h -- malloc with out-of-memory checking
-   Copyright (C) 1990-1998, 1999 Free Software Foundation, Inc.
+   Copyright (C) 1990-1998, 1999, 2000 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -27,7 +27,7 @@
 # endif
 
 # ifndef __attribute__
-#  if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7)
+#  if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8) || __STRICT_ANSI__
 #   define __attribute__(x)
 #  endif
 # endif
@@ -46,9 +46,9 @@ extern int xalloc_exit_failure;
 extern void (*xalloc_fail_func) PARAMS ((void));
 
 /* If XALLOC_FAIL_FUNC is undefined or a function that returns, this
-   message must be non-NULL.  It is translated via gettext.
-   The default value is "Memory exhausted".  */
-extern char *const xalloc_msg_memory_exhausted;
+   message is output.  It is translated via gettext.
+   Its value is "memory exhausted".  */
+extern char const xalloc_msg_memory_exhausted[];
 
 /* This function is always triggered when memory is exhausted.  It is
    in charge of honoring the three previous items.  This is the
@@ -61,10 +61,10 @@ void *xcalloc PARAMS ((size_t n, size_t s));
 void *xrealloc PARAMS ((void *p, size_t n));
 char *xstrdup PARAMS ((const char *str));
 
-# define XMALLOC(Type, N_bytes) ((Type *) xmalloc (sizeof (Type) * (N_bytes)))
-# define XCALLOC(Type, N_bytes) ((Type *) xcalloc (sizeof (Type), (N_bytes)))
-# define XREALLOC(Ptr, Type, N_bytes) \
-  ((Type *) xrealloc ((void *) (Ptr), sizeof (Type) * (N_bytes)))
+# define XMALLOC(Type, N_items) ((Type *) xmalloc (sizeof (Type) * (N_items)))
+# define XCALLOC(Type, N_items) ((Type *) xcalloc (sizeof (Type), (N_items)))
+# define XREALLOC(Ptr, Type, N_items) \
+  ((Type *) xrealloc ((void *) (Ptr), sizeof (Type) * (N_items)))
 
 /* Declare and alloc memory for VAR of type TYPE. */
 # define NEW(Type, Var)  Type *(Var) = XMALLOC (Type, 1)