Hello,

I'm not entirely sure if this is a feature or bug...

I noticed that, if a __cinit__ call raises an exception on an object, that __dealloc__ on that same object is still called.

The problem is that __cinit__ is supposed to set up the C-level attributes for that object. If this somehow fails, then the object isn't in a consistent state yet, so it makes no sense to call __dealloc__ on it.

Do you consider this a Cython bug or should I manually protect my code against this?


Thanks,
Jeroen.
_______________________________________________
cython-devel mailing list
cython-devel@python.org
https://mail.python.org/mailman/listinfo/cython-devel

Reply via email to