From e375d8aa6e09fdad211426106bd3711bcafa829e Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Mon, 15 Feb 2016 13:45:49 +0000 Subject: [PATCH 1/4] dbus-internals: add _DBUS_ALIGNOF This is useful when making static assertions about our types' properties. Signed-off-by: Simon McVittie Bug: https://bugs.freedesktop.org/show_bug.cgi?id=94136 --- dbus/dbus-internals.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dbus/dbus-internals.h b/dbus/dbus-internals.h index 3eb8749..df8e964 100644 --- a/dbus/dbus-internals.h +++ b/dbus/dbus-internals.h @@ -195,6 +195,9 @@ extern const char *_dbus_return_if_fail_warning_format; #define _DBUS_STRUCT_OFFSET(struct_type, member) \ ((intptr_t) ((unsigned char*) &((struct_type*) 0)->member)) +#define _DBUS_ALIGNOF(type) \ + (_DBUS_STRUCT_OFFSET (struct { char _1; type _2; }, _2)) + #ifdef DBUS_DISABLE_CHECKS /* this is an assert and not an error, but in the typical --disable-checks case (you're trying * to really minimize code size), disabling these assertions makes sense. -- 2.7.0