public inbox for newlib-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin] Fix various c99/gcc-14 issues in generic libgloss code
@ 2023-12-30  4:32 Jeff Law
  0 siblings, 0 replies; only message in thread
From: Jeff Law @ 2023-12-30  4:32 UTC (permalink / raw)
  To: newlib-cvs

https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=3d10b04f1ed9bf53c282081c88165951e8c32cec

commit 3d10b04f1ed9bf53c282081c88165951e8c32cec
Author: Jeff Law <jeffreyalaw@gmail.com>
Date:   Fri Dec 29 21:31:27 2023 -0700

    Fix various c99/gcc-14 issues in generic libgloss code
    
    Similar to what's been done in the ports, but this time in generic code.
    
    Add missing #includes to pick up prototypes.  Add prototypes for various
    internal functions where needed.  Fix signatures of various functions to match
    what's provided by the headers (read, sbrk, write, unlink).
    
    Nearly done with this effort ;-)
    
    Pushed to the trunk,

Diff:
---
 libgloss/glue.h   | 2 ++
 libgloss/putnum.c | 2 ++
 libgloss/read.c   | 5 +++--
 libgloss/sbrk.c   | 5 ++---
 libgloss/unlink.c | 2 +-
 libgloss/write.c  | 5 +++--
 6 files changed, 13 insertions(+), 8 deletions(-)

diff --git a/libgloss/glue.h b/libgloss/glue.h
index 0a7e36db2..98c0a6ad2 100644
--- a/libgloss/glue.h
+++ b/libgloss/glue.h
@@ -13,6 +13,7 @@
  * they apply.
  */
 #include <_ansi.h>
+#include <unistd.h>
 
 #ifndef NULL
 #  define NULL 0
@@ -28,4 +29,5 @@ extern char _end[];                /* _end is set in the linker command file */
 /* only one prcess support, as this is OS dependant */
 #define __MYPID 1
 
+int outbyte (char);
 
diff --git a/libgloss/putnum.c b/libgloss/putnum.c
index c368c4136..6e1051e24 100644
--- a/libgloss/putnum.c
+++ b/libgloss/putnum.c
@@ -14,6 +14,8 @@
  */
 #include "glue.h"
 
+extern void print (char *ptr);
+
 /*
  * putnum -- print a 32 bit number in hex
  */
diff --git a/libgloss/read.c b/libgloss/read.c
index 24108ce0d..83a3b549b 100644
--- a/libgloss/read.c
+++ b/libgloss/read.c
@@ -22,10 +22,11 @@ extern char inbyte (void);
  */
 int
 read (int fd,
-       char *buf,
-       int nbytes)
+       void *buf_,
+       size_t nbytes)
 {
   int i = 0;
+  char *buf = buf_;
 
   for (i = 0; i < nbytes; i++) {
     *(buf + i) = inbyte();
diff --git a/libgloss/sbrk.c b/libgloss/sbrk.c
index c222b4bbf..d567a4a60 100644
--- a/libgloss/sbrk.c
+++ b/libgloss/sbrk.c
@@ -27,9 +27,8 @@ char *heap_ptr;
  *         RAM. We just increment a pointer in what's
  *         left of memory on the board.
  */
-char *
-sbrk (nbytes)
-     int nbytes;
+void *
+sbrk (ptrdiff_t nbytes)
 {
   char        *base;
 
diff --git a/libgloss/unlink.c b/libgloss/unlink.c
index 76c1a4fef..af06c51d7 100644
--- a/libgloss/unlink.c
+++ b/libgloss/unlink.c
@@ -20,7 +20,7 @@
  *           we just return an error.
  */
 int
-unlink (char * path)
+unlink (const char * path)
 {
   errno = EIO;
   return (-1);
diff --git a/libgloss/write.c b/libgloss/write.c
index 28b7ea37a..80bcd4a77 100644
--- a/libgloss/write.c
+++ b/libgloss/write.c
@@ -23,10 +23,11 @@ extern int  outbyte (char x);
  */
 int
 write (int fd,
-       char *buf,
-       int nbytes)
+       const void *buf_,
+       size_t nbytes)
 {
   int i;
+  const char *buf = buf_;
 
   for (i = 0; i < nbytes; i++) {
     if (*(buf + i) == '\n') {

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-12-30  4:32 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-12-30  4:32 [newlib-cygwin] Fix various c99/gcc-14 issues in generic libgloss code Jeff Law

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).