Commit e5688a61 authored by Stefan Behnel's avatar Stefan Behnel

merged 0.17 branch into master

parents 37a61d17 6ced0d1e
......@@ -40,3 +40,4 @@ ef9d2c680684d0df7d81f529cda29e9e1741f575 cython-0.10.1
a6b9f0a6d02d23fc3d3a9d0587867faa3afb2fcd 0.14.rc0
15bf34c9387444e262acb1de594405444dd571a4 0.14
5320ddd8c3a60d00e0513f9f70d6846cd449409b 0.17.beta1
275fb550c1d802da3df35ebae41e04eadc60e49e 0.17.2
......@@ -2,7 +2,7 @@
Cython Changelog
================
0.17.2 (2012-11-??)
0.17.2 (2012-11-20)
===================
Features added
......@@ -13,6 +13,12 @@ Features added
Bugs fixed
----------
* Replacing an object reference with the value of one of its cdef attributes could generate incorrect C code that accessed the object after deleting its last reference.
* C-to-Python type coercions during cascaded comparisons could generate invalid C code, specifically when using the 'in' operator.
* "obj[1,]" passed a single integer into the item getter instead of a tuple.
* "obj[1,]" passed a single integer into the item getter instead of a tuple.
* Cyclic imports at module init time did not work in Py3.
......
......@@ -246,6 +246,6 @@ cdef extern from "Python.h":
# and the value is clipped to PY_SSIZE_T_MIN for a negative
# integer or PY_SSIZE_T_MAX for a positive integer.
bint PyIndex_Check(object o)
bint PyIndex_Check "__Pyx_PyIndex_Check" (object)
# Returns True if o is an index integer (has the nb_index slot of
# the tp_as_number structure filled in).
......@@ -6,7 +6,7 @@ import cython
# from cpython cimport ...
cdef extern from "Python.h":
int PyIndex_Check(object)
int PyIndex_Check "__Pyx_PyIndex_Check" (object)
object PyLong_FromVoidPtr(void *)
cdef extern from "pythread.h":
......
......@@ -115,7 +115,6 @@ static CYTHON_INLINE int __pyx_sub_acquisition_count_locked(__pyx_atomic_int *ac
#define __PYX_XDEC_MEMVIEW(slice, have_gil) __Pyx_XDEC_MEMVIEW(slice, have_gil, __LINE__)
static CYTHON_INLINE void __Pyx_INC_MEMVIEW({{memviewslice_name}} *, int, int);
static CYTHON_INLINE void __Pyx_XDEC_MEMVIEW({{memviewslice_name}} *, int, int);
/////////////// MemviewSliceIndex.proto ///////////////
static CYTHON_INLINE char *__pyx_memviewslice_index_full(const char *bufp, Py_ssize_t idx, Py_ssize_t stride, Py_ssize_t suboffset);
......
......@@ -52,12 +52,15 @@
(PyErr_Format(PyExc_TypeError, \
"expected index value, got %.200s", Py_TYPE(o)->tp_name), \
(PyObject*)0))
#define PyIndex_Check(o) (PyNumber_Check(o) && !PyFloat_Check(o) && !PyComplex_Check(o))
#define __Pyx_PyIndex_Check(o) (PyNumber_Check(o) && !PyFloat_Check(o) && \
!PyComplex_Check(o))
#define PyIndex_Check __Pyx_PyIndex_Check
#define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message)
#define __PYX_BUILD_PY_SSIZE_T "i"
#else
#define __PYX_BUILD_PY_SSIZE_T "n"
#define CYTHON_FORMAT_SSIZE_T "z"
#define __Pyx_PyIndex_Check PyIndex_Check
#endif
#if PY_VERSION_HEX < 0x02060000
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment