delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2011/07/30/09:41:04

X-Authentication-Warning: delorie.com: mail set sender to djgpp-workers-bounces using -f
X-Recipient: djgpp-workers AT delorie DOT com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=gamma;
h=mime-version:date:message-id:subject:from:to:content-type;
bh=M9bzVvTsDi9+yaMxwV01ExUyh+mT9d1Z5GLKm+SsqH0=;
b=OOEXkV1LWF4doNZQcS1BTbNzxaE3VteLt1wzrT/rsGEPHfWU9BJKWZ+dMaadg0zWNc
LW5AiwPd9hTjoEBMdELp15+GAiLFRq2BZvcFD/zkCtdrch+Q0YIL/Y6pw1Jy1W3junTY
mmW77QGd5mSwmWtO0E4H9NgCg1JcPcCL0nZJM=
MIME-Version: 1.0
Date: Sat, 30 Jul 2011 16:40:54 +0300
Message-ID: <CAA2C=vCFYCBVK7f3WAr--roAkmWFVXwnqXUocL8KKVw2Qxo8xA@mail.gmail.com>
Subject: [PATCH] make siglongjmp void
From: Ozkan Sezer <sezeroz AT gmail DOT com>
To: djgpp-workers AT delorie DOT com
Reply-To: djgpp-workers AT delorie DOT com

In current setjmp.h, we have:
int	siglongjmp(sigjmp_buf env, int val) __attribute__((__noreturn__));

However, being a noreturn function, it should be a void one
(cf. the glibc man page.)  And the assembly code directly forwards
it to longjmp() which is void, too.   I suggest changing it:

--- setjmp.h.orig	2011-07-12 20:53:47.000000000 +0300
+++ setjmp.h	2011-07-30 16:40:04.000000000 +0300
@@ -36,7 +36,7 @@
 typedef jmp_buf sigjmp_buf;

 int	sigsetjmp(sigjmp_buf env, int savemask);
-int	siglongjmp(sigjmp_buf env, int val) __attribute__((__noreturn__));
+void	siglongjmp(sigjmp_buf env, int val) __attribute__((__noreturn__));

 #ifndef _POSIX_SOURCE


--
O.S.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019