Fix warnings

This change fixes Cosmopolitan so it has fewer opinions about compiler
warnings. The whole repository had to be cleaned up to be buildable in
-Werror -Wall mode. This lets us benefit from things like strict const
checking. Some actual bugs might have been caught too.
This commit is contained in:
Justine Tunney 2023-09-01 20:49:13 -07:00
parent e2b3c3618e
commit 0d748ad58e
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
571 changed files with 1306 additions and 1888 deletions

View file

@ -36,12 +36,13 @@ dontasan void *memmem(const void *haystack, size_t haystacklen,
const void *needle, size_t needlelen) {
#if defined(__x86_64__) && !defined(__chibicc__)
char c;
xmm_t n, *v;
xmm_t n;
const xmm_t *v;
unsigned i, k, m;
const char *p, *q, *e;
if (IsAsan()) __asan_verify(needle, needlelen);
if (IsAsan()) __asan_verify(haystack, haystacklen);
if (!needlelen) return haystack;
if (!needlelen) return (void *)haystack;
if (UNLIKELY(needlelen > haystacklen)) return 0;
q = needle;
c = *q;
@ -72,7 +73,7 @@ dontasan void *memmem(const void *haystack, size_t haystacklen,
}
#else
size_t i, j;
if (!needlelen) return haystack;
if (!needlelen) return (void *)haystack;
if (needlelen > haystacklen) return 0;
for (i = 0; i < haystacklen; ++i) {
for (j = 0;; ++j) {