ref: 20d397b072ab41ba56b9408ecb44d7749ff86f07
parent: 95c4c9de216083ba784a4c9f7fb986531fc61b14
author: Ori Bernstein <ori@eigenstate.org>
date: Mon Aug 10 15:36:09 EDT 2020
stdio.h: correct return type of putc The putc macro is specified as returning an int, but our type conversion rules turned it into a uint. Put in the appropriate cast to make the type what we want.
--- a/sys/include/ape/stdio.h
+++ b/sys/include/ape/stdio.h
@@ -106,7 +106,7 @@
#define getchar() getc(stdin)
extern char *gets(char *);
extern int putc(int, FILE *);
-#define putc(c, f) ((f)->wp>=(f)->rp?_IO_putc(c, f):(*(unsigned char*)(f)->wp++=(c)&_IO_CHMASK))
+#define putc(c, f) ((f)->wp>=(f)->rp?_IO_putc(c, f):(int)(*(unsigned char*)(f)->wp++=(c)&_IO_CHMASK))
extern int _IO_putc(int, FILE *);
extern int putchar(int);
#define putchar(c) putc(c, stdout)
--- a/sys/include/stdio.h
+++ b/sys/include/stdio.h
@@ -92,7 +92,7 @@
#define getchar() getc(stdin)
char *gets(char *);
int putc(int, FILE *);
-#define putc(c, f) ((f)->wp>=(f)->rp?_IO_putc(c, f):(*(unsigned char*)(f)->wp++=(c)&_IO_CHMASK))
+#define putc(c, f) ((f)->wp>=(f)->rp?_IO_putc(c, f):(int)(*(unsigned char*)(f)->wp++=(c)&_IO_CHMASK))
int _IO_putc(int, FILE *);
int putchar(int);
#define putchar(c) putc(c, stdout)
--
⑨