GNU bug report logs - #12446
port better to POSIX hosts lacking _setjmp

Previous Next

Package: emacs;

Reported by: Paul Eggert <eggert <at> cs.ucla.edu>

Date: Fri, 14 Sep 2012 19:47:01 UTC

Severity: normal

Tags: patch

Done: Paul Eggert <eggert <at> cs.ucla.edu>

Bug is archived. No further changes may be made.

Full log


Message #43 received at 12446 <at> debbugs.gnu.org (full text, mbox):

From: Paul Eggert <eggert <at> cs.ucla.edu>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: lekktu <at> gmail.com, 12446 <at> debbugs.gnu.org
Subject: Re: port better to POSIX hosts lacking _setjmp
Date: Sat, 15 Sep 2012 03:00:50 -0700
On 09/15/2012 02:44 AM, Eli Zaretskii wrote:
>> Some POSIXish hosts lack _setjmp, but have sigsetjmp,
> 
> How did those hosts succeed to compile Emacs before your changes, then?

They used setjmp, which meant they were slower and
had some (rare) race conditions that caused problems.

> longjmp restores the environment, including the signal mask, to what
> it was when setjmp was called.

No, sometimes it does, sometimes it doesn't.
It depends on the platform.  If you want the signal mask
restored portably, you have to do it some other way, by using
siglongjmp or pthread_sigmask or something like that.





This bug report was last modified 12 years and 255 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.