changeset 7091:9f04f131a15e

Make the last patch more future-proof.
author Bruno Haible <bruno@clisp.org>
date Tue, 08 Aug 2006 13:11:11 +0000
parents dfc92f94c781
children 9b8b4dc0faa2
files lib/ChangeLog lib/allocsa.h
diffstat 2 files changed, 8 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/lib/ChangeLog
+++ b/lib/ChangeLog
@@ -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.
--- a/lib/allocsa.h
+++ b/lib/allocsa.h
@@ -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 @@
 #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