Add missing zstd.h to coregrind Makefile.am noinst_HEADERS
[valgrind.git] / memcheck / tests / freebsd / aligned_alloc.c
bloba7f4d848b7635417a05ab17bc0902376ec2fc341
1 #include <stdlib.h>
2 #include <assert.h>
3 #include <errno.h>
5 int main(void)
7 char* p = NULL;
10 // zero size
11 p = aligned_alloc(0, 8);
12 assert(p == NULL && errno == EINVAL);
13 errno = 0;
14 // non multiple of alignment passes on FreeBSD
15 p = aligned_alloc(8, 25);
16 assert(p && ((size_t)p % 8U == 0U));
17 free(p);
18 errno = 0;
19 // align not power of 2
20 p = aligned_alloc(40, 160);
21 assert(p == NULL && errno == EINVAL);
22 errno = 0;
24 // too big aligment
25 if (sizeof(size_t) == 8)
27 p = aligned_alloc(16, 1UL<<48);
29 else
31 p = NULL;
32 errno = ENOMEM;
35 assert(p == NULL && errno == ENOMEM);