[Zope-Coders] [Fwd: [Zope-dev] recipe for trapping SIGSEGV and SIGILL signals on solaris]

Guido van Rossum guido@python.org
Mon, 17 Dec 2001 09:20:54 -0500


> Bleah -- what Joe says here in this note is in the Python 2.1 we ship; 
> I'm not sure if Python 2.1.1 has the fix or not.

This isn't in 2.1.1 yet. :-(  It's one of the reasons we're considering
2.1.2.

> I dont know what the total impact of this statement being called (inside 
> ceval, the frame block setup handler is being called with two arguments 
> reversed during exception handling) the way it is, but I'm sure it's not 
> good.

It can cause core dumps on certain cases using continue inside try.
Here's an example, from 

http://sourceforge.net/tracker/?group_id=5470&atid=105470&func=detail&aid=463359

#!/usr/local/bin/python
args = [1]
print "MAIN:", args
while 1:
    print "TOP OF LOOP"
    try:
        print "args:", args
        if not args:
            print "break"
            break
        i = int(args.pop(0))
        print i
        continue
    except:
        print "RAISE"
        raise
print "DONE"

--Guido van Rossum (home page: http://www.python.org/~guido/)