mirror of
https://github.com/libevent/libevent.git
synced 2025-01-09 00:56:20 +08:00
test: ignore -Walloc-size-larger-than error for calloc() returns ENOMEM
Compiler report: /home/runner/work/libevent/libevent/test/regress_util.c: In function ‘test_event_calloc’: /home/runner/work/libevent/libevent/test/regress_util.c:1318:4: error: argument 2 value ‘9223372036854775815’ exceeds maximum object size 9223372036854775807 [-Werror=alloc-size-larger-than=] p = mm_calloc(EV_SIZE_MAX/2, EV_SIZE_MAX/2 + 8); In file included from /home/runner/work/libevent/libevent/test/../util-internal.h:37:0, from /home/runner/work/libevent/libevent/test/regress_util.c:30: /usr/include/stdlib.h:541:14: note: in a call to allocation function ‘calloc’ declared here extern void *calloc (size_t __nmemb, size_t __size) v2: clang on CI does not have this option
This commit is contained in:
parent
648af99afa
commit
8933217698
@ -1315,7 +1315,16 @@ test_event_calloc(void *arg)
|
||||
/* mm_calloc() should set errno = ENOMEM and return NULL
|
||||
* in case of potential overflow. */
|
||||
errno = 0;
|
||||
p = mm_calloc(EV_SIZE_MAX/2, EV_SIZE_MAX/2 + 8);
|
||||
#if defined(__clang__)
|
||||
#elif defined(__GNUC__)
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Walloc-size-larger-than="
|
||||
#endif
|
||||
p = mm_calloc(EV_SIZE_MAX, EV_SIZE_MAX);
|
||||
#if defined(__clang__)
|
||||
#elif defined(__GNUC__)
|
||||
#pragma GCC diagnostic pop
|
||||
#endif
|
||||
tt_assert(p == NULL);
|
||||
tt_int_op(errno, ==, ENOMEM);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user