Better output for validating size assert

This commit is contained in:
Filip Gawin 2021-01-22 19:54:43 +01:00
parent d77846bb16
commit 609cad506f
1 changed files with 5 additions and 2 deletions

View File

@ -364,8 +364,11 @@ __inline__ void TRACE(char *f, ...) { } // this is re3 only, and so the function
#define _TODO(x) #define _TODO(x)
#define _TODOCONST(x) (x) #define _TODOCONST(x) (x)
#ifdef CHECK_STRUCT_SIZES #if CHECK_STRUCT_SIZES
#define VALIDATE_SIZE(struc, size) static_assert(sizeof(struc) == size, "Invalid structure size of " #struc) template<int s, int t> struct check_size {
static_assert(s == t, "Invalid structure size");
};
#define VALIDATE_SIZE(struc, size) check_size<sizeof(struc), size> struc ## Check
#else #else
#define VALIDATE_SIZE(struc, size) #define VALIDATE_SIZE(struc, size)
#endif #endif