#include <ccan/array_size/array_size.h> | |
#include <stdlib.h> | |
struct foo { | |
unsigned int a, b; | |
}; | |
int check_parameter(const struct foo *array); | |
int check_parameter(const struct foo *array) | |
{ | |
#ifdef FAIL | |
return (ARRAY_SIZE(array) == 4); | |
#if !HAVE_TYPEOF || !HAVE_BUILTIN_TYPES_COMPATIBLE_P | |
#error "Unfortunately we don't fail if _array_size_chk is a noop." | |
#endif | |
#else | |
return sizeof(array) == 4 * sizeof(struct foo); | |
#endif | |
} | |
int main(void) | |
{ | |
return check_parameter(NULL); | |
} |