diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2021-05-19 16:48:19 +0100 |
---|---|---|
committer | Jonathan Wakely <jwakely@redhat.com> | 2021-09-30 12:18:48 +0100 |
commit | a725ff1de965f4cc4f36a7e8ae795d40ca0350d7 (patch) | |
tree | ec4b0188ebd3a3a1277bfffd7df11fb21103fb2e | |
parent | 88361b408b9dbd313f15413cc2e6be0f1cafb01a (diff) | |
download | glibc-a725ff1de965f4cc4f36a7e8ae795d40ca0350d7.zip glibc-a725ff1de965f4cc4f36a7e8ae795d40ca0350d7.tar.gz glibc-a725ff1de965f4cc4f36a7e8ae795d40ca0350d7.tar.bz2 |
Suppress -Wcast-qual warnings in bsearch
The first cast to (void *) is redundant but should be (const void *)
anyway, because that's the type of the lvalue being assigned to.
The second cast is necessary and intentionally not const-correct, so
tell the compiler not to warn about it.
Reviewed-by: Florian Weimer <fweimer@redhat.com>
-rw-r--r-- | bits/stdlib-bsearch.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/bits/stdlib-bsearch.h b/bits/stdlib-bsearch.h index 4132dc6..d688ed2 100644 --- a/bits/stdlib-bsearch.h +++ b/bits/stdlib-bsearch.h @@ -29,14 +29,21 @@ bsearch (const void *__key, const void *__base, size_t __nmemb, size_t __size, while (__l < __u) { __idx = (__l + __u) / 2; - __p = (void *) (((const char *) __base) + (__idx * __size)); + __p = (const void *) (((const char *) __base) + (__idx * __size)); __comparison = (*__compar) (__key, __p); if (__comparison < 0) __u = __idx; else if (__comparison > 0) __l = __idx + 1; else +#if __GNUC_PREREQ(4, 6) +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wcast-qual" +#endif return (void *) __p; +#if __GNUC_PREREQ(4, 6) +# pragma GCC diagnostic pop +#endif } return NULL; |