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:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=nYZUMHeVseCJLknLvWe71BD7PKOrhGMrA2w/xVqdK94=; b=QT2+f+S09Ntvck4jAEO1qfJOG6rAWpZSm0eFFXjdJqnG9PuHbh3+N791qlvj0lEZKR wdEA8aW1HfK0vT3TlfPK+bUPmMQIjbs5fqW5m4zBzFBW4W1FkQ7L4g0/kazoItMQb6y7 5lOQ49S6E/LIJ21x5RG8uCAkarL4ua4azq7pQ= MIME-Version: 1.0 In-Reply-To: <201107121945.08515.juan.guerrero@gmx.de> References: <201107102211 DOT 05970 DOT juan DOT guerrero AT gmx DOT de> <201107121945 DOT 08515 DOT juan DOT guerrero AT gmx DOT de> Date: Tue, 12 Jul 2011 21:35:24 +0300 Message-ID: Subject: Re: longjmp not marked with noreturn attribute From: Ozkan Sezer To: djgpp-workers AT delorie DOT com Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id p6CIZUwo019924 Reply-To: djgpp-workers AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp-workers AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Tue, Jul 12, 2011 at 8:45 PM, Juan Manuel Guerrero wrote: > Am Montag, 11. Juli 2011 schrieb Ozkan Sezer: >> On Sun, Jul 10, 2011 at 11:11 PM, Juan Manuel Guerrero >> wrote: >> > Am Sonntag, 10. Juli 2011 schrieb Ozkan Sezer: >> >> The setjmp.h from djgpp does not mark longjmp() as noreturn, >> >> therefore, g++ warns upon seeing a function who is calling longjmp() >> >> and marked as noreturn: >> > [snip] >> > >> > I commited the patch. >> > >> > Regards, >> > Juan M. Guerrero >> > >> >> Thanks. >> >> However, I seem to missed touching siglongjmp in the same way: >> it needs the same noreturn attribute, too. >> >> -- >> O.S. >> > > Commited the following patch. > > Regards, > Juan M. Guerrero > > > > Index: djgpp/include/setjmp.h > =================================================================== > RCS file: /cvs/djgpp/djgpp/include/setjmp.h,v > retrieving revision 1.7 > diff -U 5 -r1.7 setjmp.h > --- djgpp/include/setjmp.h      10 Jul 2011 20:13:23 -0000      1.7 > +++ djgpp/include/setjmp.h      12 Jul 2011 17:46:24 -0000 > @@ -34,11 +34,11 @@ >  #ifndef __STRICT_ANSI__ > >  typedef jmp_buf sigjmp_buf; > >  int    sigsetjmp(sigjmp_buf env, int savemask); > -int    siglongjmp(sigjmp_buf env, int val); > +int    siglongjmp(sigjmp_buf env, int val) __attribute__((__noreturn__)); > >  #ifndef _POSIX_SOURCE > >  #endif /* !_POSIX_SOURCE */ >  #endif /* !__STRICT_ANSI__ */ > > Thanks, that finishes it. -- O.S.