Mercurial > gnulib
changeset 16013:c5fb9408985d
alignof: Avoid collision with stdalign module.
* lib/alignof.h (alignof): Remove macro.
* NEWS: Mention the change.
Reported by Paul Eggert.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Tue, 01 Nov 2011 12:43:23 +0100 |
parents | fb7a82c2a615 |
children | 3389dd4f050e |
files | ChangeLog NEWS lib/alignof.h |
diffstat | 3 files changed, 16 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Tue Nov 01 11:01:10 2011 +0100 +++ b/ChangeLog Tue Nov 01 12:43:23 2011 +0100 @@ -1,3 +1,10 @@ +2011-11-01 Bruno Haible <bruno@clisp.org> + + alignof: Avoid collision with stdalign module. + * lib/alignof.h (alignof): Remove macro. + * NEWS: Mention the change. + Reported by Paul Eggert. + 2011-11-01 Bruno Haible <bruno@clisp.org> New module 'fchownat', split off from module 'openat'.
--- a/NEWS Tue Nov 01 11:01:10 2011 +0100 +++ b/NEWS Tue Nov 01 12:43:23 2011 +0100 @@ -12,6 +12,9 @@ Date Modules Changes +2011-11-01 alignof This module no longer provides the alignof() macro. + Use either alignof_slot() or alignof_type() instead. + 2011-11-01 openat This module no longer provides the fchownat() function. If you need this function, you now need to request the 'fchownat' module.
--- a/lib/alignof.h Tue Nov 01 11:01:10 2011 +0100 +++ b/lib/alignof.h Tue Nov 01 12:43:23 2011 +0100 @@ -20,8 +20,11 @@ #include <stddef.h> -/* Determine the alignment of a structure slot (field) of a given type, +/* alignof_slot (TYPE) + Determine the alignment of a structure slot (field) of a given type, at compile time. Note that the result depends on the ABI. + This is the same as alignof (TYPE) and _Alignof (TYPE), defined in + <stdalign.h> if __alignof_is_defined is 1. Note: The result cannot be used as a value for an 'enum' constant, due to bugs in HP-UX 10.20 cc and AIX 3.2.5 xlc. */ #if defined __cplusplus @@ -31,7 +34,8 @@ # define alignof_slot(type) offsetof (struct { char __slot1; type __slot2; }, __slot2) #endif -/* Determine the good alignment of an object of the given type at compile time. +/* alignof_type (TYPE) + Determine the good alignment of an object of the given type at compile time. Note that this is not necessarily the same as alignof_slot(type). For example, with GNU C on x86 platforms: alignof_type(double) = 8, but - when -malign-double is not specified: alignof_slot(double) = 4, @@ -44,10 +48,4 @@ # define alignof_type alignof_slot #endif -/* alignof is an alias for alignof_slot semantics, since that's what most - callers need. - Note: The result cannot be used as a value for an 'enum' constant, - due to bugs in HP-UX 10.20 cc and AIX 3.2.5 xlc. */ -#define alignof alignof_slot - #endif /* _ALIGNOF_H */