summaryrefslogtreecommitdiff
path: root/macros.h
diff options
context:
space:
mode:
authorEugene Syromyatnikov <evgsyr@gmail.com>2019-11-01 01:57:16 +0100
committerDmitry V. Levin <ldv@altlinux.org>2020-01-17 09:49:00 +0000
commitca83c2212225ea3c374d6980af08905fac23c35b (patch)
treea6f07bd87459c4b60668bc1309456fb0cc190c34 /macros.h
parent886c7b5e26747fc3690efc3ec410c8ba6105e5f6 (diff)
downloadstrace-ca83c2212225ea3c374d6980af08905fac23c35b.tar.gz
macros.h: introduce sizeof_field macro
Handy for field size checks. * macros.h (sizeof_field): New macro. (offsetofend): Use it.
Diffstat (limited to 'macros.h')
-rw-r--r--macros.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/macros.h b/macros.h
index b94c1ff4c..2391b082f 100644
--- a/macros.h
+++ b/macros.h
@@ -37,9 +37,11 @@
# define ROUNDUP(val_, div_) (ROUNDUP_DIV((val_), (div_)) * (div_))
# endif
+# define sizeof_field(type_, member_) (sizeof(((type_ *)0)->member_))
+
# ifndef offsetofend
# define offsetofend(type_, member_) \
- (offsetof(type_, member_) + sizeof(((type_ *)0)->member_))
+ (offsetof(type_, member_) + sizeof_field(type_, member_))
# endif
# ifndef cast_ptr