Duane Ellis wrote: > Hello, > > I have a problem in a memory allocator that acts like Malloc(), where I > need to align the result value in the same form as malloc. > > I can easily hard code something :-( but I'd rather use some "well > known" perhaps ANSI-C #define for the alignment value. > It could be a GCC specific #define :-( but I'd rather it not be. > > Simply put, for portability reasons I'd rather not have a hard coded > thing like this: > > // ensure proper machine alignment > x = (x + 3) & (~3); > > Suggestions? Sure I could use sizeof(void *) also.. You want the largest possible alignment? That would be something like MAX (__alignof__ (double), __alignof__ (void *)) but you'd have to add a few more types to be sure. Andrew.