Make the last patch more future-proof.
authorBruno Haible <bruno@clisp.org>
Tue, 8 Aug 2006 13:11:11 +0000 (13:11 +0000)
committerBruno Haible <bruno@clisp.org>
Tue, 8 Aug 2006 13:11:11 +0000 (13:11 +0000)
lib/ChangeLog
lib/allocsa.h

index 3cbbf933a521fc938434219e47ae1a1ad193660e..e4c72a4ed8f04ad531fb6c300c09d8e1b78998d9 100644 (file)
@@ -1,3 +1,9 @@
+2006-08-07  Bruno Haible  <bruno@clisp.org>
+
+       * allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
+       versions of AIX.
+       Reported by Ralf Wildenhues.
+
 2006-08-06  Eric Blake  <ebb9@byu.net>
 
        * error.h: Fold in some upstream changes from glibc.
index 36379aad5ac081ea3d8b948260d08e8de2a445d0..f8c0bc0bd7abe5bcc066448fa0b69b919ec0f190 100644 (file)
@@ -1,5 +1,5 @@
 /* Safe automatic memory allocation.
-   Copyright (C) 2003-2005 Free Software Foundation, Inc.
+   Copyright (C) 2003-2006 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2003.
 
    This program is free software; you can redistribute it and/or modify
@@ -95,7 +95,7 @@ extern void freesa (void *p);
 #elif defined _AIX
   /* Work around an AIX 3.2.5 xlc bug with enums constants defined as offsetof
      values.  */
-# define sa_alignof(type) 4
+# define sa_alignof(type) (sizeof (type) <= 4 ? 4 : 8)
 #else
 # define sa_alignof(type) offsetof (struct { char __slot1; type __slot2; }, __slot2)
 #endif