On Thu, Feb 15, 2007 at 01:53:58PM -0800, Andrew Morton wrote: > > The whole union thing was only needed to get rid of a warning but Marcel's > > solution does the same thing by attaching the packed keyword to the entire > > structure instead, so this patch is now using his macros but using __packed > > instead. > > How do we know this trick will work as-designed across all versions of gcc > and icc (at least) and for all architectures and for all sets of compiler > options? > > Basically, it has to be guaranteed by a C standard. Is it? Gcc info page says: [...] `packed' The `packed' attribute specifies that a variable or structure field should have the smallest possible alignment--one byte for a variable, and one bit for a field, unless you specify a larger value with the `aligned' attribute. [...] Qed? Ralf