public inbox for newlib-cvs@sourceware.org
help / color / mirror / Atom feed
From: Hans-Peter Nilsson <hp@sourceware.org>
To: newlib-cvs@sourceware.org
Subject: [newlib-cygwin] newlib cris: Fix compilation warnings that recent gcc treats as errors
Date: Wed,  6 Dec 2023 17:47:57 +0000 (GMT)	[thread overview]
Message-ID: <20231206174757.A77A8385E02B@sourceware.org> (raw)

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

commit 3bafe2fae7a0878598a82777c623edb2faa70b74
Author: Hans-Peter Nilsson <hp@axis.com>
Date:   Sat Dec 2 02:20:17 2023 +0100

    newlib cris: Fix compilation warnings that recent gcc treats as errors
    
    For the newlib part, warnings are all from lack of sync between
    libc/machine/cris/sys/signal.h and libc/include/sys/signal.h.  This
    commit gets them sufficiently in sync again, functionality-wise and
    declaration-wise.  Still, nothing is declared that isn't supported at
    the system level (i.e. in libgloss system calls and handled by the
    CRIS simulator in the gdb project).

Diff:
---
 newlib/libc/machine/cris/sys/signal.h | 43 ++++++++++++++++++++++++++++++-----
 1 file changed, 37 insertions(+), 6 deletions(-)

diff --git a/newlib/libc/machine/cris/sys/signal.h b/newlib/libc/machine/cris/sys/signal.h
index 9cb7ba530..7b6f3fa9b 100644
--- a/newlib/libc/machine/cris/sys/signal.h
+++ b/newlib/libc/machine/cris/sys/signal.h
@@ -12,6 +12,8 @@ extern "C" {
 #endif
 
 #include "_ansi.h"
+#include <sys/features.h>
+#include <sys/types.h>
 
 typedef unsigned long sigset_t;
 
@@ -32,21 +34,50 @@ struct sigaction {
 
 /* Adjusted to glibc; other values.  */
 #define SA_NOCLDSTOP 1	/* only value supported now for sa_flags */
+
+#if __POSIX_VISIBLE
 #define SIG_SETMASK 2	/* set mask with sigprocmask() */
 #define SIG_BLOCK 0	/* set of signals to block */
 #define SIG_UNBLOCK 1	/* set of signals to, well, unblock */
 
+int sigprocmask (int __how, const sigset_t *__a, sigset_t *__b);
+#endif	/* __POSIX_VISIBLE */
+
+#ifdef _LIBC
+int _kill (pid_t, int);
+#endif
+
+#if __POSIX_VISIBLE
+
+int kill (pid_t, int);
+int sigaddset (sigset_t *, const int);
+int sigdelset (sigset_t *, const int);
+int sigismember (const sigset_t *, int);
+int sigfillset (sigset_t *);
+int sigemptyset (sigset_t *);
+
 /* These depend upon the type of sigset_t, which right now
    is always a long.. They're in the POSIX namespace, but
    are not ANSI. */
-#define sigaddset(what,sig) (*(what) |= (1<<(sig)))
-#define sigemptyset(what)   (*(what) = 0)
+#define sigaddset(what,sig) (*(what) |= (1<<(sig)), 0)
+#define sigdelset(what,sig) (*(what) &= ~(1<<(sig)), 0)
+#define sigemptyset(what)   (*(what) = 0, 0)
+#define sigfillset(what)    (*(what) = ~(0), 0)
+#define sigismember(what,sig) (((*(what)) & (1<<(sig))) != 0)
 
-int sigprocmask (int __how, const sigset_t *__a, sigset_t *__b);
+#endif	/* __POSIX_VISIBLE */
+
+/* Using __MISC_VISIBLE until POSIX Issue 8 is officially released */
+#if __MISC_VISIBLE
+
+/* POSIX Issue 8 adds sig2str() and str2sig() */
+
+#define SIG2STR_MAX 17	/* (sizeof("RTMAX+") + sizeof("4294967295") - 1) */
+
+int sig2str(int, char *);
+int str2sig(const char *__restrict, int *__restrict);
 
-/* The first argument is really a pid_t, but that's just a typedef'd
-   int, so let's avoid requiring sys/types only for this declaration.  */
-int kill (int, int);
+#endif /* __MISC_VISIBLE */
 
 #define SIGHUP		 1
 #define SIGINT		 2

                 reply	other threads:[~2023-12-06 17:47 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231206174757.A77A8385E02B@sourceware.org \
    --to=hp@sourceware.org \
    --cc=newlib-cvs@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).