diff options
author | Ivan Maidanski <ivmai@mail.ru> | 2021-12-26 10:44:52 +0300 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2021-12-26 10:44:52 +0300 |
commit | f5c4fcadb760c6ab37e444d01c718fa28354956a (patch) | |
tree | 7024bd48b50ae0a0b09280c499dee9ead7ac951d | |
parent | cf451a53e05e4de8fb3d99a354c83d7e97789c82 (diff) | |
download | bdwgc-f5c4fcadb760c6ab37e444d01c718fa28354956a.tar.gz |
Eliminate 'value exceeds maximum object size' gcc warnings in huge_test
Issue #406 (bdwgc).
* huge_test.c [_FORTIFY_SOURCE] (main): Do not call GC_MALLOC() with
size argument bigger than GC_SWORD_MAX; add comment.
-rw-r--r-- | tests/huge_test.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/tests/huge_test.c b/tests/huge_test.c index bd3ad6c7..b9493f7a 100644 --- a/tests/huge_test.c +++ b/tests/huge_test.c @@ -48,10 +48,12 @@ int main(void) { - GC_INIT(); + GC_INIT(); - CHECK_ALLOC_FAILED(GC_MALLOC(GC_SWORD_MAX - 1024), "SWORD_MAX-1024"); - CHECK_ALLOC_FAILED(GC_MALLOC(GC_SWORD_MAX), "SWORD_MAX"); + CHECK_ALLOC_FAILED(GC_MALLOC(GC_SWORD_MAX - 1024), "SWORD_MAX-1024"); + CHECK_ALLOC_FAILED(GC_MALLOC(GC_SWORD_MAX), "SWORD_MAX"); + /* Skip other checks to avoid "exceeds maximum object size" gcc warning. */ +# if !defined(_FORTIFY_SOURCE) CHECK_ALLOC_FAILED(GC_MALLOC((GC_word)GC_SWORD_MAX + 1), "SWORD_MAX+1"); CHECK_ALLOC_FAILED(GC_MALLOC((GC_word)GC_SWORD_MAX + 1024), "SWORD_MAX+1024"); @@ -60,5 +62,6 @@ int main(void) CHECK_ALLOC_FAILED(GC_MALLOC(GC_WORD_MAX - 8), "WORD_MAX-8"); CHECK_ALLOC_FAILED(GC_MALLOC(GC_WORD_MAX - 4), "WORD_MAX-4"); CHECK_ALLOC_FAILED(GC_MALLOC(GC_WORD_MAX), "WORD_MAX"); - return 0; +# endif + return 0; } |