X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcfg%2Fcompiler.h;h=5cacf1dca66fe20041b8e2fa0aa5133b66aad3d0;hb=118ad7a5237089848ff7521e48e3e21082eb92cc;hp=87cdd9425a4159617880e40e2a803d929089a397;hpb=a0709949ddb69e5e28d79f7898c37ebf281696b0;p=bertos.git diff --git a/bertos/cfg/compiler.h b/bertos/cfg/compiler.h index 87cdd942..5cacf1dc 100644 --- a/bertos/cfg/compiler.h +++ b/bertos/cfg/compiler.h @@ -490,6 +490,16 @@ typedef unsigned char page_t; /**< Type for banked memory pages. */ */ #define countof(a) (sizeof(a) / sizeof(*(a))) #endif +#ifndef alignof + /** + * Return the alignment in memory of a generic data type. + * + * \note We need to worry about alignment when allocating memory that + * will be used later by unknown objects (e.g., malloc()) or, more + * generally, whenever creating generic container types. + */ + #define alignof(type) offsetof(struct { char c; type member; }, member) +#endif /** * Cast a member of a structure out to the containing structure.