[Numpy-discussion] Numpy complex types, packing and C99
Charles R Harris
Wed Jul 1 15:25:25 CDT 2009
On Wed, Jul 1, 2009 at 1:57 PM, Pauli Virtanen <email@example.com> wrote:
> On 2009-07-01, Charles R Harris <firstname.lastname@example.org> wrote:
> > On Wed, Jul 1, 2009 at 1:59 AM, David Cournapeau <
> email@example.com> wrote:
> >> I would like to add an explicit configuration test to check that our
> >> complex type is compatible with the C99 complex type (when available).
> >> Is this ok?
> Seems OK to me.
> >> As currently defined, complex c types (npy_cfloat, etc...) are not
> >> defined in a way such as they are binary compatible with the C99 complex
> >> type. Strictly speaking, packing the complex type is an ABI break, but
> >> we already make the assumption in ufunc, so we would have wrong
> >> results/crashes currently if it were not packed, so I believe the check
> Is there a reason not to pack our complex number struct? I think
> if we bump the ABI version, changing this should be OK.
This bothers me a bit. Since the two forms should normally be compatible
maybe we can use a union or some other way to preserve the current ABI. It
would be nice to have a deprecation warning too, but I can't figure out how
to deprecate a struct declaration. A compiler warning perhaps?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Numpy-discussion