A)
Ticket #303 manifests itself like this:
cdef extern:
ctypedef float footype # really double!
cdef class A:
cdef public footype myproperty
My suggestion for a fix here is to replace all T_INT, T_UINT etc. with
simply three types: __Pyx_T_SIGNED, __Pyx_T_UNSIGNED, __Pyx_T_FLOAT.
These would use sizeof to determine the right type to flag the extension
type property as (like Lisandro did with T_SIZET already does).
I can then change T_SIZET to __Pyx_T_UNSIGNED, right? (Basically that
would be a rename...) Or it T_SIZET is defined in any Python version,
I'll just throw it in on the list of possible "outputs" from the macro
if it is defined.
B)
Given this change (which could happen in -devel), is there any obstacles
to getting rid of the detailed type system in PyrexTypes? Basically
Cython would only deal with "signed", "unsigned" and "float" (and in
time "complex").
Doing
cdef short i
would basically flag i as "signed"; the "short-ness" would only be
present as the cname of the type.
--
Dag Sverre
_______________________________________________
Cython-dev mailing list
[email protected]
http://codespeak.net/mailman/listinfo/cython-dev