From: Paul Eggert Date: Tue, 18 Jan 2005 21:09:14 +0000 (+0000) Subject: Merge changes from coreutils. X-Git-Tag: cvs-readonly~3599 X-Git-Url: http://erislabs.net/gitweb/?a=commitdiff_plain;h=79fedf129cbfc69a04861c64e58ddff9f05d47e1;p=gnulib.git Merge changes from coreutils. [DEFAULT_ALIGNMENT]: Use an intermediate type to simplify offsetof() macro construct to avoid compile failure with native HP-UX 11.0 ANSI C compiler. --- diff --git a/lib/obstack.c b/lib/obstack.c index 25cb9abba..63396131c 100644 --- a/lib/obstack.c +++ b/lib/obstack.c @@ -1,7 +1,7 @@ /* obstack.c - subroutines used implicitly by object stack macros Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1996, 1997, - 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, + 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify @@ -74,12 +74,17 @@ union fooround long double d; void *p; }; +struct fooalign +{ + char c; + union fooround u; +}; /* If malloc were really smart, it would round addresses to DEFAULT_ALIGNMENT. But in fact it might be less smart and round addresses to as much as DEFAULT_ROUNDING. So we prepare for it to do that. */ enum { - DEFAULT_ALIGNMENT = offsetof (struct { char c; union fooround u; }, u), + DEFAULT_ALIGNMENT = offsetof (struct fooalign, u), DEFAULT_ROUNDING = sizeof (union fooround) };