diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2020-07-01 16:45:41 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2020-07-01 16:48:11 -0700 |
commit | 59eb037fc92e23bd6c6034b2a3343ac81f1bd318 (patch) | |
tree | b690191e3ee62c30a9c6fa1e927e45af89fb9997 | |
parent | a0b286c0a5d50f2b52692f61f09e4500bcd98ebe (diff) | |
download | gnulib-59eb037fc92e23bd6c6034b2a3343ac81f1bd318.tar.gz gnulib-59eb037fc92e23bd6c6034b2a3343ac81f1bd318.tar.bz2 |
tests: pacify gcc -fanalyzer on zerosize_ptr
* tests/test-memcasecmp.c (main):
* tests/test-memchr.c (main):
* tests/test-memchr2.c (main):
* tests/test-memcmp.c (main):
* tests/test-memmem.c (main):
* tests/test-memrchr.c (main):
* tests/unistr/test-chr.h (main):
* tests/unistr/test-cmp.h (test_cmp):
Check whether zerosize_ptr returns NULL before using it.
This pacifies GCC 10.1’s new fanalyzer option, and matches
other uses of zerosize_ptr.
-rw-r--r-- | ChangeLog | 15 | ||||
-rw-r--r-- | tests/test-memcasecmp.c | 5 | ||||
-rw-r--r-- | tests/test-memchr.c | 4 | ||||
-rw-r--r-- | tests/test-memchr2.c | 4 | ||||
-rw-r--r-- | tests/test-memcmp.c | 5 | ||||
-rw-r--r-- | tests/test-memmem.c | 22 | ||||
-rw-r--r-- | tests/test-memrchr.c | 4 | ||||
-rw-r--r-- | tests/unistr/test-chr.h | 4 | ||||
-rw-r--r-- | tests/unistr/test-cmp.h | 5 |
9 files changed, 52 insertions, 16 deletions
@@ -1 +1,16 @@ +2020-07-01 Paul Eggert <eggert@cs.ucla.edu> + + tests: pacify gcc -fanalyzer on zerosize_ptr + * tests/test-memcasecmp.c (main): + * tests/test-memchr.c (main): + * tests/test-memchr2.c (main): + * tests/test-memcmp.c (main): + * tests/test-memmem.c (main): + * tests/test-memrchr.c (main): + * tests/unistr/test-chr.h (main): + * tests/unistr/test-cmp.h (test_cmp): + Check whether zerosize_ptr returns NULL before using it. + This pacifies GCC 10.1’s new fanalyzer option, and matches + other uses of zerosize_ptr. + 2020-07-01 Bruno Haible <bruno@clisp.org> diff --git a/tests/test-memcasecmp.c b/tests/test-memcasecmp.c index 00df2f7cf5..33507dc23e 100644 --- a/tests/test-memcasecmp.c +++ b/tests/test-memcasecmp.c @@ -30,3 +30,6 @@ main (void) /* Test equal / not equal distinction. */ - ASSERT (memcasecmp (zerosize_ptr (), zerosize_ptr (), 0) == 0); + void *page_boundary1 = zerosize_ptr (); + void *page_boundary2 = zerosize_ptr (); + if (page_boundary1 && page_boundary2) + ASSERT (memcasecmp (page_boundary1, page_boundary2, 0) == 0); ASSERT (memcasecmp ("foo", "foobar", 2) == 0); diff --git a/tests/test-memchr.c b/tests/test-memchr.c index ab8d2c0da0..d81bf3baf2 100644 --- a/tests/test-memchr.c +++ b/tests/test-memchr.c @@ -51,3 +51,5 @@ main (void) ASSERT (MEMCHR (input, 'a', 0) == NULL); - ASSERT (MEMCHR (zerosize_ptr (), 'a', 0) == NULL); + void *page_boundary = zerosize_ptr (); + if (page_boundary) + ASSERT (MEMCHR (page_boundary, 'a', 0) == NULL); diff --git a/tests/test-memchr2.c b/tests/test-memchr2.c index 47428f2151..8d5478919d 100644 --- a/tests/test-memchr2.c +++ b/tests/test-memchr2.c @@ -50,3 +50,5 @@ main (void) ASSERT (MEMCHR2 (input, 'a', 'b', 0) == NULL); - ASSERT (MEMCHR2 (zerosize_ptr (), 'a', 'b', 0) == NULL); + void *page_boundary = zerosize_ptr (); + if (page_boundary) + ASSERT (MEMCHR2 (page_boundary, 'a', 'b', 0) == NULL); diff --git a/tests/test-memcmp.c b/tests/test-memcmp.c index eaaac4531c..5b262aae79 100644 --- a/tests/test-memcmp.c +++ b/tests/test-memcmp.c @@ -33,3 +33,6 @@ main (void) /* Test equal / not equal distinction. */ - ASSERT (memcmp (zerosize_ptr (), zerosize_ptr (), 0) == 0); + void *page_boundary1 = zerosize_ptr (); + void *page_boundary2 = zerosize_ptr (); + if (page_boundary1 && page_boundary2) + ASSERT (memcmp (page_boundary1, page_boundary2, 0) == 0); ASSERT (memcmp ("foo", "foobar", 2) == 0); diff --git a/tests/test-memmem.c b/tests/test-memmem.c index 1c1e0ad392..132265f12c 100644 --- a/tests/test-memmem.c +++ b/tests/test-memmem.c @@ -75,12 +75,16 @@ main (int argc, char *argv[]) /* Check that length 0 does not dereference the pointer. */ - { - const char *result = memmem (zerosize_ptr (), 0, "foo", 3); - ASSERT (result == NULL); - } + void *page_boundary = zerosize_ptr (); + if (page_boundary) + { + { + const char *result = memmem (page_boundary, 0, "foo", 3); + ASSERT (result == NULL); + } - { - const char input[] = "foo"; - const char *result = memmem (input, strlen (input), zerosize_ptr (), 0); - ASSERT (result == input); - } + { + const char input[] = "foo"; + const char *result = memmem (input, strlen (input), page_boundary, 0); + ASSERT (result == input); + } + } diff --git a/tests/test-memrchr.c b/tests/test-memrchr.c index 001134bb27..235fb6948f 100644 --- a/tests/test-memrchr.c +++ b/tests/test-memrchr.c @@ -51,3 +51,5 @@ main (void) ASSERT (MEMRCHR (input, 'a', 0) == NULL); - ASSERT (MEMRCHR (zerosize_ptr (), 'a', 0) == NULL); + void *page_boundary = zerosize_ptr (); + if (page_boundary) + ASSERT (MEMRCHR (page_boundary, 'a', 0) == NULL); diff --git a/tests/unistr/test-chr.h b/tests/unistr/test-chr.h index b67be48861..f60610f22b 100644 --- a/tests/unistr/test-chr.h +++ b/tests/unistr/test-chr.h @@ -50,3 +50,5 @@ main (void) ASSERT (U_CHR (input, 0, 'a') == NULL); - ASSERT (U_CHR (zerosize_ptr (), 0, 'a') == NULL); + void *page_boundary = zerosize_ptr (); + if (page_boundary) + ASSERT (U_CHR (page_boundary, 0, 'a') == NULL); diff --git a/tests/unistr/test-cmp.h b/tests/unistr/test-cmp.h index 38a5223f7a..207c59a775 100644 --- a/tests/unistr/test-cmp.h +++ b/tests/unistr/test-cmp.h @@ -22,3 +22,6 @@ test_cmp (void) /* Test equal / not equal distinction. */ - ASSERT (U_CMP (zerosize_ptr (), zerosize_ptr (), 0) == 0); + void *page_boundary1 = zerosize_ptr (); + void *page_boundary2 = zerosize_ptr (); + if (page_boundary1 && page_boundary2) + ASSERT (U_CMP (page_boundary1, page_boundary2, 0) == 0); { |