X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvppinfra%2Ferror_bootstrap.h;h=18d2176812da417be2aa53f67a9af10b9b4c47c9;hb=refs%2Fchanges%2F31%2F17631%2F2;hp=248d389d0f2e6e1b41a959e361b1f322a1458264;hpb=ba614d63a8dabaf95f012323c5f9bfba4a23f5cf;p=vpp.git diff --git a/src/vppinfra/error_bootstrap.h b/src/vppinfra/error_bootstrap.h index 248d389d0f2..18d2176812d 100644 --- a/src/vppinfra/error_bootstrap.h +++ b/src/vppinfra/error_bootstrap.h @@ -91,6 +91,10 @@ do { \ #define STATIC_ASSERT_OFFSET_OF(s, e, o) \ STATIC_ASSERT (STRUCT_OFFSET_OF(s,e) == o, "Offset of " #s "." #e " must be " # o) +#define STATIC_ASSERT_FITS_IN(s, e, o) \ + STATIC_ASSERT (STRUCT_OFFSET_OF(s,e) <= (o - sizeof(((s *)0)->e)), \ + #s "." #e " does not fit into " # o " bytes") + /* Assert without allocating memory. */ #define ASSERT_AND_PANIC(truth) \ do { \