On 20 August 2011 00:34, mark florisson <markflorisso...@gmail.com> wrote: > Hey, > > I think I found a rather serious bug: if an error label is used in a > nogil function, it tries to build a traceback. So if the GIL is > released you will immediately segfault, and otherwise it will work > fine! Here is a snippet: > > cdef int with_gil_func() except 0 with gil: > raise Exception("error!") > > cdef int nogil_func() nogil except 0: > with_gil_func() > > with nogil: > nogil_func() > > > [0] [00:03] ~ ➤ python -c 'import test' > [1] 6888 segmentation fault python -c 'import test' > > I've tried as far back as 0.12 but all versions down to 0.12 have it. > > BTW, it's really weird that the except clause on the function has to > come after nogil but before with gil, and otherwise it's a syntax > error. > > Should we fix it and do a bugfix release? >
Ok I made a pull request for the fix: https://github.com/cython/cython/pull/56 Considering that it has been around this long and nobody has reported it (?), I assume nobody has had a problem with it, so it's perhaps not as urgent as I previously stated. What about the syntax issue though? Should we fix that? _______________________________________________ cython-devel mailing list cython-devel@python.org http://mail.python.org/mailman/listinfo/cython-devel