* lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
[pspp] / ChangeLog
index 9b5f0a56d06e341a9d854058cf864ccf101bfea8..d517e204a25b954f61ed39f10d775ab08740e3e3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,102 @@
+2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
+       definitions up, to avoid colliding with change below.
+       (static_inline) [HAVE_INLINE]: New macro.
+       (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
+       Provide extern decls when !HAVE_INLINE.  Do not define unless
+       static_inline is defined, either by us or by xmalloc.c.  Use
+       static_inline rather than static inline.
+       (XCALLOC): Optimize sizeof(T) = 1 case.
+       * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
+
+2006-11-07  Bruno Haible  <bruno@clisp.org>
+
+       * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
+       * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
+       AC_C_INLINE.
+       * modules/xalloc (Files): Add m4/inline.m4.
+
+2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * README: Fix typo.
+       * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
+       (Miscellanous Notes): ...from this.
+
+2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
+       Mention that offsetof should be used instead of sizeof.
+       From Bruno Haible.
+
+2006-11-07  Bruno Haible  <bruno@clisp.org>
+
+       * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
+
 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
 
+       Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
+       * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
+       (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
+       (gl_tree_add_before, gl_tree_add_after):
+       Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
+       * lib/gl_anyhash_list2.h (hash_resize): Likewise.
+       * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
+       (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
+       (gl_linked_add_after, gl_linked_add_at): Likewise.
+       * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
+       (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
+       (gl_tree_add_before, gl_tree_add_after): Likewise.
+       * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
+       * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
+       * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
+
+2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * lib/gl_oset.h: Use C comment style, not C++ comment style.
+
+2006-11-06  Bruno Haible  <bruno@clisp.org>
+
+       * m4/inline.m4: New file.
+       * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
+       * modules/list (Files): Add m4/inline.m4.
+       * modules/oset (Files): Likewise.
+
+2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * lib/idcache.c: Include <stddef.h>, for offsetof.
+       (struct userid.name): Change from char * to a flexible array member.
+       All uses changed.
+       * modules/idcache (Depends-on): Add flexmember.
+
+       * MODULES.html.sh (Core language properties): New module flexmember.
+       * modules/flexmember, m4/flexmember.m4: New files.
+
+       * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
+       inline functions that are identical with the old xnmalloc_inline,
+       xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
+       that we can avoid some unnecessary integer multiplications and
+       divisions in the common case where the element size is known at
+       compile time.
+       (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
+       needed.
+       (xnboundedmalloc): Remove.
+       (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
+       arguments, for consistency with rest of this header.
+       (xcharalloc): Rewrite using XNMALLOC.
+       * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
+       (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
+       versions have been moved to lib/xalloc.h and renamed to be the
+       non-*_inline versions.
+       (xmalloc, xrealloc): Implement without reference to the xnmalloc
+       and xnrealloc functions, since those functions are now inline and
+       now call us.
+       (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
+       renaming described above.
+       * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
+       xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
+       captures the dependency in AC_C_INLINE.
+
        New module canonicalize-lgpl, proposed by Charles Wilson in
        <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
        with a few small changes afterwards.