From c6ded28dcede2a2c3b1b53c1d89a9d1e36b35339 Mon Sep 17 00:00:00 2001 From: Xavier Del Campo Romero Date: Wed, 29 Nov 2023 13:00:13 +0100 Subject: [PATCH] libpsx: Fix const-correctness for fwrite(3) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit According to C99 ยง7.19.8.2p1, fwrite(3) is expected to take a const void *, and not void *. --- libpsx/include/stdio.h | 2 +- libpsx/src/libc.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/libpsx/include/stdio.h b/libpsx/include/stdio.h index 34d2d57..b0979cc 100644 --- a/libpsx/include/stdio.h +++ b/libpsx/include/stdio.h @@ -118,7 +118,7 @@ FILE *fdopen(int fildes, const char *mode); FILE *fopen(const char *path, const char *mode); int fclose(FILE *stream); size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream); -size_t fwrite(void *ptr, size_t size, size_t nmemb, FILE *stream); +size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream); int fgetc(FILE *f); int ftell(FILE *f); diff --git a/libpsx/src/libc.c b/libpsx/src/libc.c index 58884b0..5c4b17a 100644 --- a/libpsx/src/libc.c +++ b/libpsx/src/libc.c @@ -722,12 +722,12 @@ int puts(const char *str) return EOF; } -size_t fwrite(void *restrict const ptr, const size_t size, const size_t nmemb, +size_t fwrite(const void *restrict const ptr, const size_t size, const size_t nmemb, FILE *restrict const f) { if(IS_CONS_OUT(f)) // stdout or stderr { - char *c = ptr; + const char *c = ptr; int i; for(i = 0; i < size; i++)