aboutsummaryrefslogtreecommitdiff
path: root/newlib
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2023-12-28 04:31:19 +0100
committerHans-Peter Nilsson <hp@bitrange.com>2023-12-29 19:29:20 +0100
commitddb614993a78bf2cdf2ed269617f7f552490e76f (patch)
tree9177a14f5cf3fbdad5b33078441dd2c6b9e49bc9 /newlib
parent1a177610d8e181d09206a5a8ce2d873822751657 (diff)
downloadnewlib-ddb614993a78bf2cdf2ed269617f7f552490e76f.zip
newlib-ddb614993a78bf2cdf2ed269617f7f552490e76f.tar.gz
newlib-ddb614993a78bf2cdf2ed269617f7f552490e76f.tar.bz2
newlib MMIX: Fix compilation warnings that recent gcc treats as errors
Without this, when building with recent gcc, we'll see errors when compiling for --target mmix the first being: CC libc/sys/mmixware/libc_a-chmod.o In file included from /x/newlib/libc/sys/mmixware/chmod.c:17: /x/newlib/libc/sys/mmixware/chmod.c: In function 'chmod': /x/newlib/libc/sys/mmixware/sys/syscall.h:139:6: error: implicit declaration \ of function 'sprintf' [-Wimplicit-function-declaration] 139 | sprintf (buf, "UNIMPLEMENTED %s in %s\n", __FUNCTION__, __FILE__); \ Other warnings also quelled. * libc/sys/mmixware/sys/syscall.h: Include stdio.h, string.h and unistd.h. * libc/sys/mmixware/_exit.c: Call __unreachable after simulator exit. * libc/sys/mmixware/chown.c (chown): Match declaration in unistd.h. * libc/sys/mmixware/getpid.c (_getpid): Ditto. * libc/sys/mmixware/kill.c (_kill): Ditto. * libc/sys/mmixware/link.c (_link): Ditto. * libc/sys/mmixware/read.c (_read): Ditto. * libc/sys/mmixware/sbrk.c (_sbrk): Ditto. * libc/sys/mmixware/unlink.c (_unlink): Ditto. * libc/sys/mmixware/write.c (_write): Ditto.
Diffstat (limited to 'newlib')
-rw-r--r--newlib/libc/sys/mmixware/_exit.c3
-rw-r--r--newlib/libc/sys/mmixware/chown.c4
-rw-r--r--newlib/libc/sys/mmixware/getpid.c5
-rw-r--r--newlib/libc/sys/mmixware/kill.c5
-rw-r--r--newlib/libc/sys/mmixware/link.c4
-rw-r--r--newlib/libc/sys/mmixware/read.c4
-rw-r--r--newlib/libc/sys/mmixware/sbrk.c10
-rw-r--r--newlib/libc/sys/mmixware/sys/syscall.h8
-rw-r--r--newlib/libc/sys/mmixware/unlink.c4
-rw-r--r--newlib/libc/sys/mmixware/write.c4
10 files changed, 30 insertions, 21 deletions
diff --git a/newlib/libc/sys/mmixware/_exit.c b/newlib/libc/sys/mmixware/_exit.c
index 2f70154..9ac62c7 100644
--- a/newlib/libc/sys/mmixware/_exit.c
+++ b/newlib/libc/sys/mmixware/_exit.c
@@ -1,6 +1,6 @@
/* _exit for MMIXware.
- Copyright (C) 2001 Hans-Peter Nilsson
+ Copyright (C) 2001, 2023 Hans-Peter Nilsson
Permission to use, copy, modify, and distribute this software is
freely granted, provided that the above copyright notice, this notice
@@ -27,4 +27,5 @@ void _exit (int n)
: /* No outputs. */
: "r" (n)
: "memory");
+ __unreachable ();
}
diff --git a/newlib/libc/sys/mmixware/chown.c b/newlib/libc/sys/mmixware/chown.c
index f4fc49c..646504b 100644
--- a/newlib/libc/sys/mmixware/chown.c
+++ b/newlib/libc/sys/mmixware/chown.c
@@ -1,6 +1,6 @@
/* chown stub for MMIXware.
- Copyright (C) 2001 Hans-Peter Nilsson
+ Copyright (C) 2001, 2023 Hans-Peter Nilsson
Permission to use, copy, modify, and distribute this software is
freely granted, provided that the above copyright notice, this notice
@@ -18,7 +18,7 @@
#include <errno.h>
int
-chown (const char *path, short owner, short group)
+chown (const char *path, uid_t owner, gid_t group)
{
UNIMPLEMENTED (("path: %s, owner: %d, group: %d", path, owner, group));
errno = ENOSYS;
diff --git a/newlib/libc/sys/mmixware/getpid.c b/newlib/libc/sys/mmixware/getpid.c
index 5190726..723317f 100644
--- a/newlib/libc/sys/mmixware/getpid.c
+++ b/newlib/libc/sys/mmixware/getpid.c
@@ -1,6 +1,6 @@
/* getpid stub for MMIXware.
- Copyright (C) 2001 Hans-Peter Nilsson
+ Copyright (C) 2001, 2023 Hans-Peter Nilsson
Permission to use, copy, modify, and distribute this software is
freely granted, provided that the above copyright notice, this notice
@@ -16,7 +16,8 @@
#include <sys/stat.h>
#include "sys/syscall.h"
-_getpid (n)
+pid_t
+_getpid (void)
{
return 1;
}
diff --git a/newlib/libc/sys/mmixware/kill.c b/newlib/libc/sys/mmixware/kill.c
index c01f53c..ed9d92b 100644
--- a/newlib/libc/sys/mmixware/kill.c
+++ b/newlib/libc/sys/mmixware/kill.c
@@ -1,6 +1,6 @@
/* kill for MMIXware.
- Copyright (C) 2001 Hans-Peter Nilsson
+ Copyright (C) 2001, 2023 Hans-Peter Nilsson
Permission to use, copy, modify, and distribute this software is
freely granted, provided that the above copyright notice, this notice
@@ -17,7 +17,8 @@
#include "sys/syscall.h"
#include <errno.h>
-_kill (n, m)
+int
+_kill (pid_t n, int m __unused)
{
if (n == 1)
return TRAP1i (SYS_halt, 0);
diff --git a/newlib/libc/sys/mmixware/link.c b/newlib/libc/sys/mmixware/link.c
index 0629163..cbcf7ee 100644
--- a/newlib/libc/sys/mmixware/link.c
+++ b/newlib/libc/sys/mmixware/link.c
@@ -1,6 +1,6 @@
/* link stub for MMIXware.
- Copyright (C) 2002 Hans-Peter Nilsson
+ Copyright (C) 2002, 2023 Hans-Peter Nilsson
Permission to use, copy, modify, and distribute this software is
freely granted, provided that the above copyright notice, this notice
@@ -18,7 +18,7 @@
#include <errno.h>
int
-_link ()
+_link (const char *p1 __unused, const char *p2 __unused)
{
errno = EMLINK;
return -1;
diff --git a/newlib/libc/sys/mmixware/read.c b/newlib/libc/sys/mmixware/read.c
index f0f5e22..3f34ca4 100644
--- a/newlib/libc/sys/mmixware/read.c
+++ b/newlib/libc/sys/mmixware/read.c
@@ -1,6 +1,6 @@
/* read for MMIXware.
- Copyright (C) 2001 Hans-Peter Nilsson
+ Copyright (C) 2001, 2023 Hans-Peter Nilsson
Permission to use, copy, modify, and distribute this software is
freely granted, provided that the above copyright notice, this notice
@@ -19,7 +19,7 @@
int
_read (int file,
- char *ptr,
+ void *ptr,
size_t len)
{
long ret;
diff --git a/newlib/libc/sys/mmixware/sbrk.c b/newlib/libc/sys/mmixware/sbrk.c
index f50886d..621169f 100644
--- a/newlib/libc/sys/mmixware/sbrk.c
+++ b/newlib/libc/sys/mmixware/sbrk.c
@@ -1,6 +1,6 @@
/* sbrk for MMIXware.
- Copyright (C) 2001, 2012 Hans-Peter Nilsson
+ Copyright (C) 2001, 2012, 2023 Hans-Peter Nilsson
Permission to use, copy, modify, and distribute this software is
freely granted, provided that the above copyright notice, this notice
@@ -31,10 +31,10 @@ __asm__ (" .global _Sbrk_high\n"
"_Sbrk_high IS Pool_Segment\n"
"Pool_Segment IS 0x40<<56");
-caddr_t
-_sbrk (size_t incr)
+void *
+_sbrk (ptrdiff_t incr)
{
- char *prev_heap_end;
+ void *prev_heap_end;
prev_heap_end = _Sbrk_high;
@@ -55,5 +55,5 @@ _sbrk (size_t incr)
}
_Sbrk_high += incr;
- return (caddr_t) prev_heap_end;
+ return prev_heap_end;
}
diff --git a/newlib/libc/sys/mmixware/sys/syscall.h b/newlib/libc/sys/mmixware/sys/syscall.h
index 4b4419c..b5e40cc 100644
--- a/newlib/libc/sys/mmixware/sys/syscall.h
+++ b/newlib/libc/sys/mmixware/sys/syscall.h
@@ -1,6 +1,6 @@
/* syscall defines for MMIXware.
- Copyright (C) 2001, 2002, 2007 Hans-Peter Nilsson
+ Copyright (C) 2001, 2002, 2007, 2023 Hans-Peter Nilsson
Permission to use, copy, modify, and distribute this software is
freely granted, provided that the above copyright notice, this notice
@@ -11,6 +11,12 @@
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. */
+/* The standard-library calls in UNIMPLEMENTED, defined below, need to
+ be declared. Don't push the #include requirements to the caller. */
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
+
/* These are the mmixware simulator calls that are of use in newlib. */
#define SYS_halt 0
diff --git a/newlib/libc/sys/mmixware/unlink.c b/newlib/libc/sys/mmixware/unlink.c
index b70df2d..dfc92c6 100644
--- a/newlib/libc/sys/mmixware/unlink.c
+++ b/newlib/libc/sys/mmixware/unlink.c
@@ -1,6 +1,6 @@
/* unlink stub for MMIXware.
- Copyright (C) 2001 Hans-Peter Nilsson
+ Copyright (C) 2001, 2023 Hans-Peter Nilsson
Permission to use, copy, modify, and distribute this software is
freely granted, provided that the above copyright notice, this notice
@@ -17,7 +17,7 @@
#include "sys/syscall.h"
int
-_unlink ()
+_unlink (const char *p __unused)
{
return -1;
}
diff --git a/newlib/libc/sys/mmixware/write.c b/newlib/libc/sys/mmixware/write.c
index 74d5fca..8924789 100644
--- a/newlib/libc/sys/mmixware/write.c
+++ b/newlib/libc/sys/mmixware/write.c
@@ -1,6 +1,6 @@
/* write for MMIXware.
- Copyright (C) 2001 Hans-Peter Nilsson
+ Copyright (C) 2001, 2023 Hans-Peter Nilsson
Permission to use, copy, modify, and distribute this software is
freely granted, provided that the above copyright notice, this notice
@@ -19,7 +19,7 @@
int
_write ( int file,
- char *ptr,
+ const void *ptr,
size_t len)
{
long ret;