From 0b09753a3f0c17164c877cf5ae9ebbc617bcf302 Mon Sep 17 00:00:00 2001 From: Alexey Lapshin Date: Wed, 7 Dec 2022 10:59:23 +0000 Subject: [PATCH] libc: fix fropen/fwopen compile warnings This patch fixes warnings that appears when compiling: #define fwopen(__cookie,__fn) funopen(__cookie, (int (*)())0, __fn, (fpos_t (*)())0, (int (*)())0) Expands to: funopen(__null, (int (*)())0, &app_printf, (fpos_t (*)())0, (int (*)())0) argument of type "int (*)()" is incompatible with parameter of type "int (*)(void *__cookie, char *__buf, int __n)"C/C++(167) invalid conversion from 'fpos_t (*)()' {aka 'long int (*)()'} to 'fpos_t (*)(void*, fpos_t, int)' {aka 'long int (*)(void*, Discussion is here: https://github.com/espressif/arduino-esp32/issues/7407 --- newlib/libc/include/stdio.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/newlib/libc/include/stdio.h b/newlib/libc/include/stdio.h index ea4ddf329..77966578d 100644 --- a/newlib/libc/include/stdio.h +++ b/newlib/libc/include/stdio.h @@ -620,10 +620,8 @@ FILE *_funopen_r (struct _reent *, const void *__cookie, int (*__closefn)(void *__cookie)); # endif /* !__LARGE64_FILES */ -# define fropen(__cookie, __fn) funopen(__cookie, __fn, (int (*)())0, \ - (fpos_t (*)())0, (int (*)())0) -# define fwopen(__cookie, __fn) funopen(__cookie, (int (*)())0, __fn, \ - (fpos_t (*)())0, (int (*)())0) +# define fropen(__cookie, __fn) funopen(__cookie, __fn, NULL, NULL, NULL) +# define fwopen(__cookie, __fn) funopen(__cookie, NULL, __fn, NULL, NULL) #endif /* __BSD_VISIBLE */ #if __GNU_VISIBLE