On Tue, Mar 26, 2013 at 2:52 AM, Martin Fiers
<[email protected]> wrote:
> Dear Cython developers,
>
> I stumbled upon a strange error when using Cython. I made a minimal working
> example, see attachment for the two necessary files. (btw I didn't find the
> e-mail address of Robert Bradshaw so I could not request him for an account
> on the issue tracker. Is it possible to put the bug on there?)
Sure. You should have my email now.
> To reproduce the bug:
> 1) Reboot to Windows :) (the bug only appears on Windows)
> 2) Run compile_bug.py to generate the Cython extension
> 3) Try to run the my_func_exposed function:
>
> python
>>>> import complex_double
> (does not crash)
>>>> complex_double.my_func_exposed(1,1j)
> (crashes)
>>>> complex_double.my_func_exposed(1,1)
>
> If I put a breakpoint in the code with gdb, jump in the code, and leave the
> function again, it does not crash! Also, it is no problem on Linux.
>
> It has to do with the fact that in the first case, a real value was used. In
> the complex-value case, it does not crash. I went through the generated cpp
> file and I don't see any issues there (the reason I use cpp is because it's
> in a big project that needs cpp enabled; it is further linked and so on).
>
> gcc version used: 4.6.2 (mingw)
> cython version used: 0.18 (I did pip install Cython)
> python version used: python 2.7.3 (MSC v.1500 32 bit).
Very strange. Does calling PyComplex_AsCComplex directly produce the
same crash? What about
cdef complex double x = 1.0
or
cdef object py_x = 1.0
cdef complex double x = py_x
?
- Robert
_______________________________________________
cython-devel mailing list
[email protected]
http://mail.python.org/mailman/listinfo/cython-devel