Amaury Forgeot d'Arc, 18.02.2012 10:08: > 2012/2/18 Stefan Behnel > I made some modifications to pypy, cython and lxml, > and now I can compile and install cython, lxml, and they seem to work! > > Here are the changes I made, some parts are really hacks and should be > polished: > lxml: http://paste.pocoo.org/show/552903/ > cython: http://paste.pocoo.org/show/552904/
The exception handling code that you deleted in __Pyx_GetException(), that which accesses exc_type and friends, is actually needed for correct semantics of Cython code and Python code. Basically, it implements the part of the except clause that moves the hot exception into sys.exc_info(). This equally applies to __Pyx_ExceptionSave() and __Pyx_ExceptionReset(), which form something like an exception backup frame around code sections that may raise exceptions themselves but must otherwise not touch the current exception. Specifically, as part of the finally clause. In order to fix this, is there a way to store away and restore the current sys.exc_info() in PyPy? Stefan _______________________________________________ pypy-dev mailing list pypy-dev@python.org http://mail.python.org/mailman/listinfo/pypy-dev