Hello

The attached code creates a segfault with Cython 0.14.1. A workaround
is to use a real function instead of lambda. Using the normal python
interpreter the same code works flawlessly.

Here are my build commands:

cython --embed vectorizeBug.pyx
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O0 -Wall -fPIC
-lpython2.6 -I/usr/include/python2.6 -o vectorizeBug vectorizeBug.c

-- 
René Rex
TU Braunschweig
Bioinformatics & Biochemistry
Langer Kamp 19 b
38106 Braunschweig
Phone: +49-531-391-8315
(gdb) run
Starting program: /home/user/Desktop/vecBug/vectorizeBug 
[Thread debugging using libthread_db enabled]
[ 2.  2.  2.]

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff797b208 in ?? () from /usr/lib/libpython2.6.so.1.0
(gdb) backtrace 
#0  0x00007ffff797b208 in ?? () from /usr/lib/libpython2.6.so.1.0
#1  0x00007ffff797b590 in PyNumber_Add () from /usr/lib/libpython2.6.so.1.0
#2  0x0000000000401eb5 in __pyx_lambda_funcdef12vectorizeBug_4main_lambda1 
(__pyx_self=0x0, 
    __pyx_args=0x7ffff7f8f050, __pyx_kwds=0x0) at vectorizeBug.c:586
#3  0x00007ffff797abb3 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#4  0x00007ffff7a202a9 in PyEval_EvalFrameEx () from 
/usr/lib/libpython2.6.so.1.0
#5  0x00007ffff7a21468 in PyEval_EvalFrameEx () from 
/usr/lib/libpython2.6.so.1.0
#6  0x00007ffff7a228b0 in PyEval_EvalCodeEx () from /usr/lib/libpython2.6.so.1.0
#7  0x00007ffff79a8630 in ?? () from /usr/lib/libpython2.6.so.1.0
#8  0x00007ffff797abb3 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#9  0x00007ffff798c5bf in ?? () from /usr/lib/libpython2.6.so.1.0
#10 0x00007ffff797abb3 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#11 0x00007ffff79e1670 in ?? () from /usr/lib/libpython2.6.so.1.0
#12 0x00007ffff79d7958 in ?? () from /usr/lib/libpython2.6.so.1.0
#13 0x00007ffff797abb3 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#14 0x0000000000402535 in __pyx_pf_12vectorizeBug_1main (__pyx_self=0x0, 
unused=0x0)
    at vectorizeBug.c:689
#15 0x00007ffff797abb3 in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#16 0x00000000004034ff in initvectorizeBug () at vectorizeBug.c:952
#17 0x0000000000403bc7 in main (argc=1, argv=0x7fffffffdfd8) at 
vectorizeBug.c:1149

Attachment: vectorizeBug.pyx
Description: Binary data

_______________________________________________
cython-devel mailing list
cython-devel@python.org
http://mail.python.org/mailman/listinfo/cython-devel

Reply via email to