Commit 3dfaebdb authored by Robert Bradshaw's avatar Robert Bradshaw

INLINE -> CYTHON_INLINE to avoid conflicts

parent 656037fc
...@@ -446,9 +446,9 @@ def buf_lookup_full_code(proto, defin, name, nd): ...@@ -446,9 +446,9 @@ def buf_lookup_full_code(proto, defin, name, nd):
proto.putln("#define %s(type, buf, %s) (type)(%s_imp(buf, %s))" % (name, macroargs, name, macroargs)) proto.putln("#define %s(type, buf, %s) (type)(%s_imp(buf, %s))" % (name, macroargs, name, macroargs))
funcargs = ", ".join(["Py_ssize_t i%d, Py_ssize_t s%d, Py_ssize_t o%d" % (i, i, i) for i in range(nd)]) funcargs = ", ".join(["Py_ssize_t i%d, Py_ssize_t s%d, Py_ssize_t o%d" % (i, i, i) for i in range(nd)])
proto.putln("static INLINE void* %s_imp(void* buf, %s);" % (name, funcargs)) proto.putln("static CYTHON_INLINE void* %s_imp(void* buf, %s);" % (name, funcargs))
defin.putln(dedent(""" defin.putln(dedent("""
static INLINE void* %s_imp(void* buf, %s) { static CYTHON_INLINE void* %s_imp(void* buf, %s) {
char* ptr = (char*)buf; char* ptr = (char*)buf;
""") % (name, funcargs) + "".join([dedent("""\ """) % (name, funcargs) + "".join([dedent("""\
ptr += s%d * i%d; ptr += s%d * i%d;
...@@ -723,10 +723,10 @@ typedef struct { ...@@ -723,10 +723,10 @@ typedef struct {
} __Pyx_BufFmt_StackElem; } __Pyx_BufFmt_StackElem;
static INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info); static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info);
static int __Pyx_GetBufferAndValidate(Py_buffer* buf, PyObject* obj, __Pyx_TypeInfo* dtype, int flags, int nd, int cast, __Pyx_BufFmt_StackElem* stack); static int __Pyx_GetBufferAndValidate(Py_buffer* buf, PyObject* obj, __Pyx_TypeInfo* dtype, int flags, int nd, int cast, __Pyx_BufFmt_StackElem* stack);
""", impl=""" """, impl="""
static INLINE int __Pyx_IsLittleEndian(void) { static CYTHON_INLINE int __Pyx_IsLittleEndian(void) {
unsigned int n = 1; unsigned int n = 1;
return *(unsigned char*)(&n) != 0; return *(unsigned char*)(&n) != 0;
} }
...@@ -1123,7 +1123,7 @@ static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const cha ...@@ -1123,7 +1123,7 @@ static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const cha
} }
} }
static INLINE void __Pyx_ZeroBuffer(Py_buffer* buf) { static CYTHON_INLINE void __Pyx_ZeroBuffer(Py_buffer* buf) {
buf->buf = NULL; buf->buf = NULL;
buf->obj = NULL; buf->obj = NULL;
buf->strides = __Pyx_zeros; buf->strides = __Pyx_zeros;
...@@ -1164,7 +1164,7 @@ fail:; ...@@ -1164,7 +1164,7 @@ fail:;
return -1; return -1;
} }
static INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info) { static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info) {
if (info->buf == NULL) return; if (info->buf == NULL) return;
if (info->suboffsets == __Pyx_minusones) info->suboffsets = NULL; if (info->suboffsets == __Pyx_minusones) info->suboffsets = NULL;
__Pyx_ReleaseBuffer(info); __Pyx_ReleaseBuffer(info);
......
...@@ -294,19 +294,19 @@ proto = """ ...@@ -294,19 +294,19 @@ proto = """
#define PySet_Pop(set) \\ #define PySet_Pop(set) \\
PyObject_CallMethod(set, (char *)"pop", NULL) PyObject_CallMethod(set, (char *)"pop", NULL)
static INLINE int PySet_Clear(PyObject *set) { static CYTHON_INLINE int PySet_Clear(PyObject *set) {
PyObject *ret = PyObject_CallMethod(set, (char *)"clear", NULL); PyObject *ret = PyObject_CallMethod(set, (char *)"clear", NULL);
if (!ret) return -1; if (!ret) return -1;
Py_DECREF(ret); return 0; Py_DECREF(ret); return 0;
} }
static INLINE int PySet_Discard(PyObject *set, PyObject *key) { static CYTHON_INLINE int PySet_Discard(PyObject *set, PyObject *key) {
PyObject *ret = PyObject_CallMethod(set, (char *)"discard", (char *)"O", key); PyObject *ret = PyObject_CallMethod(set, (char *)"discard", (char *)"O", key);
if (!ret) return -1; if (!ret) return -1;
Py_DECREF(ret); return 0; Py_DECREF(ret); return 0;
} }
static INLINE int PySet_Add(PyObject *set, PyObject *key) { static CYTHON_INLINE int PySet_Add(PyObject *set, PyObject *key) {
PyObject *ret = PyObject_CallMethod(set, (char *)"add", (char *)"O", key); PyObject *ret = PyObject_CallMethod(set, (char *)"add", (char *)"O", key);
if (!ret) return -1; if (!ret) return -1;
Py_DECREF(ret); return 0; Py_DECREF(ret); return 0;
......
...@@ -5385,8 +5385,8 @@ class CmpNode(object): ...@@ -5385,8 +5385,8 @@ class CmpNode(object):
contians_utility_code = UtilityCode( contians_utility_code = UtilityCode(
proto=""" proto="""
static INLINE long __Pyx_NegateNonNeg(long b) { return unlikely(b < 0) ? b : !b; } static CYTHON_INLINE long __Pyx_NegateNonNeg(long b) { return unlikely(b < 0) ? b : !b; }
static INLINE PyObject* __Pyx_PyBoolOrNull_FromLong(long b) { static CYTHON_INLINE PyObject* __Pyx_PyBoolOrNull_FromLong(long b) {
return unlikely(b < 0) ? NULL : __Pyx_PyBool_FromLong(b); return unlikely(b < 0) ? NULL : __Pyx_PyBool_FromLong(b);
} }
""") """)
...@@ -6113,10 +6113,10 @@ bad: ...@@ -6113,10 +6113,10 @@ bad:
type_test_utility_code = UtilityCode( type_test_utility_code = UtilityCode(
proto = """ proto = """
static INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); /*proto*/ static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); /*proto*/
""", """,
impl = """ impl = """
static INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {
if (unlikely(!type)) { if (unlikely(!type)) {
PyErr_Format(PyExc_SystemError, "Missing type object"); PyErr_Format(PyExc_SystemError, "Missing type object");
return 0; return 0;
...@@ -6197,7 +6197,7 @@ impl = "" ...@@ -6197,7 +6197,7 @@ impl = ""
getitem_int_utility_code = UtilityCode( getitem_int_utility_code = UtilityCode(
proto = """ proto = """
static INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {
PyObject *r; PyObject *r;
if (!j) return NULL; if (!j) return NULL;
r = PyObject_GetItem(o, j); r = PyObject_GetItem(o, j);
...@@ -6211,7 +6211,7 @@ static INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { ...@@ -6211,7 +6211,7 @@ static INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {
__Pyx_GetItemInt_%(type)s_Fast(o, i, size <= sizeof(long)) : \\ __Pyx_GetItemInt_%(type)s_Fast(o, i, size <= sizeof(long)) : \\
__Pyx_GetItemInt_Generic(o, to_py_func(i))) __Pyx_GetItemInt_Generic(o, to_py_func(i)))
static INLINE PyObject *__Pyx_GetItemInt_%(type)s_Fast(PyObject *o, Py_ssize_t i, int fits_long) { static CYTHON_INLINE PyObject *__Pyx_GetItemInt_%(type)s_Fast(PyObject *o, Py_ssize_t i, int fits_long) {
if (likely(o != Py_None)) { if (likely(o != Py_None)) {
if (likely((0 <= i) & (i < Py%(type)s_GET_SIZE(o)))) { if (likely((0 <= i) & (i < Py%(type)s_GET_SIZE(o)))) {
PyObject *r = Py%(type)s_GET_ITEM(o, i); PyObject *r = Py%(type)s_GET_ITEM(o, i);
...@@ -6233,7 +6233,7 @@ static INLINE PyObject *__Pyx_GetItemInt_%(type)s_Fast(PyObject *o, Py_ssize_t i ...@@ -6233,7 +6233,7 @@ static INLINE PyObject *__Pyx_GetItemInt_%(type)s_Fast(PyObject *o, Py_ssize_t i
__Pyx_GetItemInt_Fast(o, i, size <= sizeof(long)) : \\ __Pyx_GetItemInt_Fast(o, i, size <= sizeof(long)) : \\
__Pyx_GetItemInt_Generic(o, to_py_func(i))) __Pyx_GetItemInt_Generic(o, to_py_func(i)))
static INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int fits_long) { static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int fits_long) {
PyObject *r; PyObject *r;
if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) { if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) {
r = PyList_GET_ITEM(o, i); r = PyList_GET_ITEM(o, i);
...@@ -6265,7 +6265,7 @@ proto = """ ...@@ -6265,7 +6265,7 @@ proto = """
__Pyx_SetItemInt_Fast(o, i, v, size <= sizeof(long)) : \\ __Pyx_SetItemInt_Fast(o, i, v, size <= sizeof(long)) : \\
__Pyx_SetItemInt_Generic(o, to_py_func(i), v)) __Pyx_SetItemInt_Generic(o, to_py_func(i), v))
static INLINE int __Pyx_SetItemInt_Generic(PyObject *o, PyObject *j, PyObject *v) { static CYTHON_INLINE int __Pyx_SetItemInt_Generic(PyObject *o, PyObject *j, PyObject *v) {
int r; int r;
if (!j) return -1; if (!j) return -1;
r = PyObject_SetItem(o, j, v); r = PyObject_SetItem(o, j, v);
...@@ -6273,7 +6273,7 @@ static INLINE int __Pyx_SetItemInt_Generic(PyObject *o, PyObject *j, PyObject *v ...@@ -6273,7 +6273,7 @@ static INLINE int __Pyx_SetItemInt_Generic(PyObject *o, PyObject *j, PyObject *v
return r; return r;
} }
static INLINE int __Pyx_SetItemInt_Fast(PyObject *o, Py_ssize_t i, PyObject *v, int fits_long) { static CYTHON_INLINE int __Pyx_SetItemInt_Fast(PyObject *o, Py_ssize_t i, PyObject *v, int fits_long) {
if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) { if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) {
Py_INCREF(v); Py_INCREF(v);
Py_DECREF(PyList_GET_ITEM(o, i)); Py_DECREF(PyList_GET_ITEM(o, i));
...@@ -6299,7 +6299,7 @@ proto = """ ...@@ -6299,7 +6299,7 @@ proto = """
__Pyx_DelItemInt_Fast(o, i, size <= sizeof(long)) : \\ __Pyx_DelItemInt_Fast(o, i, size <= sizeof(long)) : \\
__Pyx_DelItem_Generic(o, to_py_func(i))) __Pyx_DelItem_Generic(o, to_py_func(i)))
static INLINE int __Pyx_DelItem_Generic(PyObject *o, PyObject *j) { static CYTHON_INLINE int __Pyx_DelItem_Generic(PyObject *o, PyObject *j) {
int r; int r;
if (!j) return -1; if (!j) return -1;
r = PyObject_DelItem(o, j); r = PyObject_DelItem(o, j);
...@@ -6307,7 +6307,7 @@ static INLINE int __Pyx_DelItem_Generic(PyObject *o, PyObject *j) { ...@@ -6307,7 +6307,7 @@ static INLINE int __Pyx_DelItem_Generic(PyObject *o, PyObject *j) {
return r; return r;
} }
static INLINE int __Pyx_DelItemInt_Fast(PyObject *o, Py_ssize_t i, int fits_long) { static CYTHON_INLINE int __Pyx_DelItemInt_Fast(PyObject *o, Py_ssize_t i, int fits_long) {
if (Py_TYPE(o)->tp_as_sequence && Py_TYPE(o)->tp_as_sequence->sq_ass_item && likely(i >= 0)) if (Py_TYPE(o)->tp_as_sequence && Py_TYPE(o)->tp_as_sequence->sq_ass_item && likely(i >= 0))
return PySequence_DelItem(o, i); return PySequence_DelItem(o, i);
else { else {
...@@ -6323,50 +6323,50 @@ impl = """ ...@@ -6323,50 +6323,50 @@ impl = """
raise_noneattr_error_utility_code = UtilityCode( raise_noneattr_error_utility_code = UtilityCode(
proto = """ proto = """
static INLINE void __Pyx_RaiseNoneAttributeError(const char* attrname); static CYTHON_INLINE void __Pyx_RaiseNoneAttributeError(const char* attrname);
""", """,
impl = ''' impl = '''
static INLINE void __Pyx_RaiseNoneAttributeError(const char* attrname) { static CYTHON_INLINE void __Pyx_RaiseNoneAttributeError(const char* attrname) {
PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", attrname); PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", attrname);
} }
''') ''')
raise_noneindex_error_utility_code = UtilityCode( raise_noneindex_error_utility_code = UtilityCode(
proto = """ proto = """
static INLINE void __Pyx_RaiseNoneIndexingError(void); static CYTHON_INLINE void __Pyx_RaiseNoneIndexingError(void);
""", """,
impl = ''' impl = '''
static INLINE void __Pyx_RaiseNoneIndexingError(void) { static CYTHON_INLINE void __Pyx_RaiseNoneIndexingError(void) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is unsubscriptable"); PyErr_SetString(PyExc_TypeError, "'NoneType' object is unsubscriptable");
} }
''') ''')
raise_none_iter_error_utility_code = UtilityCode( raise_none_iter_error_utility_code = UtilityCode(
proto = """ proto = """
static INLINE void __Pyx_RaiseNoneNotIterableError(void); static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void);
""", """,
impl = ''' impl = '''
static INLINE void __Pyx_RaiseNoneNotIterableError(void) { static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
} }
''') ''')
raise_too_many_values_to_unpack = UtilityCode( raise_too_many_values_to_unpack = UtilityCode(
proto = """ proto = """
static INLINE void __Pyx_RaiseTooManyValuesError(void); static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(void);
""", """,
impl = ''' impl = '''
static INLINE void __Pyx_RaiseTooManyValuesError(void) { static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(void) {
PyErr_SetString(PyExc_ValueError, "too many values to unpack"); PyErr_SetString(PyExc_ValueError, "too many values to unpack");
} }
''') ''')
raise_need_more_values_to_unpack = UtilityCode( raise_need_more_values_to_unpack = UtilityCode(
proto = """ proto = """
static INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index);
""", """,
impl = ''' impl = '''
static INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) {
PyErr_Format(PyExc_ValueError, PyErr_Format(PyExc_ValueError,
#if PY_VERSION_HEX < 0x02050000 #if PY_VERSION_HEX < 0x02050000
"need more than %d value%s to unpack", (int)index, "need more than %d value%s to unpack", (int)index,
...@@ -6464,10 +6464,10 @@ static PyObject* __Pyx_PyEval_CallObjectWithKeywords(PyObject *callable, PyObjec ...@@ -6464,10 +6464,10 @@ static PyObject* __Pyx_PyEval_CallObjectWithKeywords(PyObject *callable, PyObjec
int_pow_utility_code = UtilityCode( int_pow_utility_code = UtilityCode(
proto=""" proto="""
static INLINE %(type)s %(func_name)s(%(type)s, %(type)s); /* proto */ static CYTHON_INLINE %(type)s %(func_name)s(%(type)s, %(type)s); /* proto */
""", """,
impl=""" impl="""
static INLINE %(type)s %(func_name)s(%(type)s b, %(type)s e) { static CYTHON_INLINE %(type)s %(func_name)s(%(type)s b, %(type)s e) {
%(type)s t = b; %(type)s t = b;
switch (e) { switch (e) {
case 3: case 3:
...@@ -6494,10 +6494,10 @@ static INLINE %(type)s %(func_name)s(%(type)s b, %(type)s e) { ...@@ -6494,10 +6494,10 @@ static INLINE %(type)s %(func_name)s(%(type)s b, %(type)s e) {
div_int_utility_code = UtilityCode( div_int_utility_code = UtilityCode(
proto=""" proto="""
static INLINE %(type)s __Pyx_div_%(type_name)s(%(type)s, %(type)s); /* proto */ static CYTHON_INLINE %(type)s __Pyx_div_%(type_name)s(%(type)s, %(type)s); /* proto */
""", """,
impl=""" impl="""
static INLINE %(type)s __Pyx_div_%(type_name)s(%(type)s a, %(type)s b) { static CYTHON_INLINE %(type)s __Pyx_div_%(type_name)s(%(type)s a, %(type)s b) {
%(type)s q = a / b; %(type)s q = a / b;
%(type)s r = a - q*b; %(type)s r = a - q*b;
q -= ((r != 0) & ((r ^ b) < 0)); q -= ((r != 0) & ((r ^ b) < 0));
...@@ -6507,10 +6507,10 @@ static INLINE %(type)s __Pyx_div_%(type_name)s(%(type)s a, %(type)s b) { ...@@ -6507,10 +6507,10 @@ static INLINE %(type)s __Pyx_div_%(type_name)s(%(type)s a, %(type)s b) {
mod_int_utility_code = UtilityCode( mod_int_utility_code = UtilityCode(
proto=""" proto="""
static INLINE %(type)s __Pyx_mod_%(type_name)s(%(type)s, %(type)s); /* proto */ static CYTHON_INLINE %(type)s __Pyx_mod_%(type_name)s(%(type)s, %(type)s); /* proto */
""", """,
impl=""" impl="""
static INLINE %(type)s __Pyx_mod_%(type_name)s(%(type)s a, %(type)s b) { static CYTHON_INLINE %(type)s __Pyx_mod_%(type_name)s(%(type)s a, %(type)s b) {
%(type)s r = a %% b; %(type)s r = a %% b;
r += ((r != 0) & ((r ^ b) < 0)) * b; r += ((r != 0) & ((r ^ b) < 0)) * b;
return r; return r;
...@@ -6519,10 +6519,10 @@ static INLINE %(type)s __Pyx_mod_%(type_name)s(%(type)s a, %(type)s b) { ...@@ -6519,10 +6519,10 @@ static INLINE %(type)s __Pyx_mod_%(type_name)s(%(type)s a, %(type)s b) {
mod_float_utility_code = UtilityCode( mod_float_utility_code = UtilityCode(
proto=""" proto="""
static INLINE %(type)s __Pyx_mod_%(type_name)s(%(type)s, %(type)s); /* proto */ static CYTHON_INLINE %(type)s __Pyx_mod_%(type_name)s(%(type)s, %(type)s); /* proto */
""", """,
impl=""" impl="""
static INLINE %(type)s __Pyx_mod_%(type_name)s(%(type)s a, %(type)s b) { static CYTHON_INLINE %(type)s __Pyx_mod_%(type_name)s(%(type)s a, %(type)s b) {
%(type)s r = fmod%(math_h_modifier)s(a, b); %(type)s r = fmod%(math_h_modifier)s(a, b);
r += ((r != 0) & ((r < 0) ^ (b < 0))) * b; r += ((r != 0) & ((r < 0) ^ (b < 0))) * b;
return r; return r;
......
...@@ -2111,10 +2111,10 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode): ...@@ -2111,10 +2111,10 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
streq_utility_code = UtilityCode( streq_utility_code = UtilityCode(
proto = """ proto = """
static INLINE int __Pyx_StrEq(const char *, const char *); /*proto*/ static CYTHON_INLINE int __Pyx_StrEq(const char *, const char *); /*proto*/
""", """,
impl = """ impl = """
static INLINE int __Pyx_StrEq(const char *s1, const char *s2) { static CYTHON_INLINE int __Pyx_StrEq(const char *s1, const char *s2) {
while (*s1 != '\\0' && *s1 == *s2) { s1++; s2++; } while (*s1 != '\\0' && *s1 == *s2) { s1++; s2++; }
return *s1 == *s2; return *s1 == *s2;
} }
......
...@@ -1463,6 +1463,8 @@ class CFuncDefNode(FuncDefNode): ...@@ -1463,6 +1463,8 @@ class CFuncDefNode(FuncDefNode):
storage_class = "" storage_class = ""
else: else:
storage_class = "static " storage_class = "static "
if 'inline' in self.modifiers:
self.modifiers[self.modifiers.index('inline')] = 'cython_inline'
code.putln("%s%s %s {" % ( code.putln("%s%s %s {" % (
storage_class, storage_class,
' '.join(self.modifiers).upper(), # macro forms ' '.join(self.modifiers).upper(), # macro forms
...@@ -4815,13 +4817,13 @@ class FromImportStatNode(StatNode): ...@@ -4815,13 +4817,13 @@ class FromImportStatNode(StatNode):
utility_function_predeclarations = \ utility_function_predeclarations = \
""" """
#ifndef INLINE #ifndef CYTHON_INLINE
#if defined(__GNUC__) #if defined(__GNUC__)
#define INLINE __inline__ #define CYTHON_INLINE __inline__
#elif defined(_MSC_VER) #elif defined(_MSC_VER)
#define INLINE __inline #define CYTHON_INLINE __inline
#else #else
#define INLINE #define CYTHON_INLINE
#endif #endif
#endif #endif
...@@ -5009,11 +5011,11 @@ requires=[printing_utility_code]) ...@@ -5009,11 +5011,11 @@ requires=[printing_utility_code])
restore_exception_utility_code = UtilityCode( restore_exception_utility_code = UtilityCode(
proto = """ proto = """
static INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb); /*proto*/ static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb); /*proto*/
static INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb); /*proto*/
""", """,
impl = """ impl = """
static INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb) { static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb) {
PyObject *tmp_type, *tmp_value, *tmp_tb; PyObject *tmp_type, *tmp_value, *tmp_tb;
PyThreadState *tstate = PyThreadState_GET(); PyThreadState *tstate = PyThreadState_GET();
...@@ -5028,7 +5030,7 @@ static INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *t ...@@ -5028,7 +5030,7 @@ static INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *t
Py_XDECREF(tmp_tb); Py_XDECREF(tmp_tb);
} }
static INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb) { static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb) {
PyThreadState *tstate = PyThreadState_GET(); PyThreadState *tstate = PyThreadState_GET();
*type = tstate->curexc_type; *type = tstate->curexc_type;
*value = tstate->curexc_value; *value = tstate->curexc_value;
...@@ -5248,11 +5250,11 @@ requires=[get_exception_utility_code]) ...@@ -5248,11 +5250,11 @@ requires=[get_exception_utility_code])
reset_exception_utility_code = UtilityCode( reset_exception_utility_code = UtilityCode(
proto = """ proto = """
static INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb); /*proto*/
static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb); /*proto*/ static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb); /*proto*/
""", """,
impl = """ impl = """
static INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb) { static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb) {
PyThreadState *tstate = PyThreadState_GET(); PyThreadState *tstate = PyThreadState_GET();
*type = tstate->exc_type; *type = tstate->exc_type;
*value = tstate->exc_value; *value = tstate->exc_value;
...@@ -5351,10 +5353,10 @@ static void __Pyx_RaiseArgtupleInvalid( ...@@ -5351,10 +5353,10 @@ static void __Pyx_RaiseArgtupleInvalid(
raise_keyword_required_utility_code = UtilityCode( raise_keyword_required_utility_code = UtilityCode(
proto = """ proto = """
static INLINE void __Pyx_RaiseKeywordRequired(const char* func_name, PyObject* kw_name); /*proto*/ static CYTHON_INLINE void __Pyx_RaiseKeywordRequired(const char* func_name, PyObject* kw_name); /*proto*/
""", """,
impl = """ impl = """
static INLINE void __Pyx_RaiseKeywordRequired( static CYTHON_INLINE void __Pyx_RaiseKeywordRequired(
const char* func_name, const char* func_name,
PyObject* kw_name) PyObject* kw_name)
{ {
...@@ -5396,11 +5398,11 @@ static void __Pyx_RaiseDoubleKeywordsError( ...@@ -5396,11 +5398,11 @@ static void __Pyx_RaiseDoubleKeywordsError(
keyword_string_check_utility_code = UtilityCode( keyword_string_check_utility_code = UtilityCode(
proto = """ proto = """
static INLINE int __Pyx_CheckKeywordStrings(PyObject *kwdict, static CYTHON_INLINE int __Pyx_CheckKeywordStrings(PyObject *kwdict,
const char* function_name, int kw_allowed); /*proto*/ const char* function_name, int kw_allowed); /*proto*/
""", """,
impl = """ impl = """
static INLINE int __Pyx_CheckKeywordStrings( static CYTHON_INLINE int __Pyx_CheckKeywordStrings(
PyObject *kwdict, PyObject *kwdict,
const char* function_name, const char* function_name,
int kw_allowed) int kw_allowed)
......
...@@ -1583,7 +1583,7 @@ class OptimizeBuiltinCalls(Visitor.EnvTransform): ...@@ -1583,7 +1583,7 @@ class OptimizeBuiltinCalls(Visitor.EnvTransform):
append_utility_code = UtilityCode( append_utility_code = UtilityCode(
proto = """ proto = """
static INLINE PyObject* __Pyx_PyObject_Append(PyObject* L, PyObject* x) { static CYTHON_INLINE PyObject* __Pyx_PyObject_Append(PyObject* L, PyObject* x) {
if (likely(PyList_CheckExact(L))) { if (likely(PyList_CheckExact(L))) {
if (PyList_Append(L, x) < 0) return NULL; if (PyList_Append(L, x) < 0) return NULL;
Py_INCREF(Py_None); Py_INCREF(Py_None);
...@@ -1605,7 +1605,7 @@ impl = "" ...@@ -1605,7 +1605,7 @@ impl = ""
pop_utility_code = UtilityCode( pop_utility_code = UtilityCode(
proto = """ proto = """
static INLINE PyObject* __Pyx_PyObject_Pop(PyObject* L) { static CYTHON_INLINE PyObject* __Pyx_PyObject_Pop(PyObject* L) {
if (likely(PyList_CheckExact(L)) if (likely(PyList_CheckExact(L))
/* Check that both the size is positive and no reallocation shrinking needs to be done. */ /* Check that both the size is positive and no reallocation shrinking needs to be done. */
&& likely(PyList_GET_SIZE(L) > (((PyListObject*)L)->allocated >> 1))) { && likely(PyList_GET_SIZE(L) > (((PyListObject*)L)->allocated >> 1))) {
...@@ -1721,7 +1721,7 @@ proto = """ ...@@ -1721,7 +1721,7 @@ proto = """
tpnew_utility_code = UtilityCode( tpnew_utility_code = UtilityCode(
proto = """ proto = """
static INLINE PyObject* __Pyx_tp_new(PyObject* type_obj) { static CYTHON_INLINE PyObject* __Pyx_tp_new(PyObject* type_obj) {
return (PyObject*) (((PyTypeObject*)(type_obj))->tp_new( return (PyObject*) (((PyTypeObject*)(type_obj))->tp_new(
(PyTypeObject*)(type_obj), %(TUPLE)s, NULL)); (PyTypeObject*)(type_obj), %(TUPLE)s, NULL));
} }
......
...@@ -638,10 +638,10 @@ type_conversion_functions = "" ...@@ -638,10 +638,10 @@ type_conversion_functions = ""
c_int_from_py_function = UtilityCode( c_int_from_py_function = UtilityCode(
proto=""" proto="""
static INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject *); static CYTHON_INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject *);
""", """,
impl=""" impl="""
static INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject* x) { static CYTHON_INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject* x) {
const %(type)s neg_one = (%(type)s)-1, const_zero = 0; const %(type)s neg_one = (%(type)s)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero; const int is_unsigned = neg_one > const_zero;
if (sizeof(%(type)s) < sizeof(long)) { if (sizeof(%(type)s) < sizeof(long)) {
...@@ -663,10 +663,10 @@ static INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject* x) { ...@@ -663,10 +663,10 @@ static INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject* x) {
c_long_from_py_function = UtilityCode( c_long_from_py_function = UtilityCode(
proto=""" proto="""
static INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject *); static CYTHON_INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject *);
""", """,
impl=""" impl="""
static INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject* x) { static CYTHON_INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject* x) {
const %(type)s neg_one = (%(type)s)-1, const_zero = 0; const %(type)s neg_one = (%(type)s)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero; const int is_unsigned = neg_one > const_zero;
#if PY_VERSION_HEX < 0x03000000 #if PY_VERSION_HEX < 0x03000000
...@@ -704,10 +704,10 @@ static INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject* x) { ...@@ -704,10 +704,10 @@ static INLINE %(type)s __Pyx_PyInt_As%(SignWord)s%(TypeName)s(PyObject* x) {
c_typedef_int_from_py_function = UtilityCode( c_typedef_int_from_py_function = UtilityCode(
proto=""" proto="""
static INLINE %(type)s __Pyx_PyInt_from_py_%(TypeName)s(PyObject *); static CYTHON_INLINE %(type)s __Pyx_PyInt_from_py_%(TypeName)s(PyObject *);
""", """,
impl=""" impl="""
static INLINE %(type)s __Pyx_PyInt_from_py_%(TypeName)s(PyObject* x) { static CYTHON_INLINE %(type)s __Pyx_PyInt_from_py_%(TypeName)s(PyObject* x) {
const %(type)s neg_one = (%(type)s)-1, const_zero = 0; const %(type)s neg_one = (%(type)s)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero; const int is_unsigned = neg_one > const_zero;
if (sizeof(%(type)s) == sizeof(char)) { if (sizeof(%(type)s) == sizeof(char)) {
...@@ -751,10 +751,10 @@ static INLINE %(type)s __Pyx_PyInt_from_py_%(TypeName)s(PyObject* x) { ...@@ -751,10 +751,10 @@ static INLINE %(type)s __Pyx_PyInt_from_py_%(TypeName)s(PyObject* x) {
c_typedef_int_to_py_function = UtilityCode( c_typedef_int_to_py_function = UtilityCode(
proto=""" proto="""
static INLINE PyObject *__Pyx_PyInt_to_py_%(TypeName)s(%(type)s); static CYTHON_INLINE PyObject *__Pyx_PyInt_to_py_%(TypeName)s(%(type)s);
""", """,
impl=""" impl="""
static INLINE PyObject *__Pyx_PyInt_to_py_%(TypeName)s(%(type)s val) { static CYTHON_INLINE PyObject *__Pyx_PyInt_to_py_%(TypeName)s(%(type)s val) {
const %(type)s neg_one = (%(type)s)-1, const_zero = 0; const %(type)s neg_one = (%(type)s)-1, const_zero = 0;
const int is_unsigned = neg_one > const_zero; const int is_unsigned = neg_one > const_zero;
if (sizeof(%(type)s) < sizeof(long)) { if (sizeof(%(type)s) < sizeof(long)) {
...@@ -1111,21 +1111,21 @@ proto=""" ...@@ -1111,21 +1111,21 @@ proto="""
complex_from_parts_utility_code = UtilityCode( complex_from_parts_utility_code = UtilityCode(
proto_block='utility_code_proto', proto_block='utility_code_proto',
proto=""" proto="""
static INLINE %(type)s %(type_name)s_from_parts(%(real_type)s, %(real_type)s); static CYTHON_INLINE %(type)s %(type_name)s_from_parts(%(real_type)s, %(real_type)s);
""", """,
impl=""" impl="""
#if CYTHON_CCOMPLEX #if CYTHON_CCOMPLEX
#ifdef __cplusplus #ifdef __cplusplus
static INLINE %(type)s %(type_name)s_from_parts(%(real_type)s x, %(real_type)s y) { static CYTHON_INLINE %(type)s %(type_name)s_from_parts(%(real_type)s x, %(real_type)s y) {
return ::std::complex< %(real_type)s >(x, y); return ::std::complex< %(real_type)s >(x, y);
} }
#else #else
static INLINE %(type)s %(type_name)s_from_parts(%(real_type)s x, %(real_type)s y) { static CYTHON_INLINE %(type)s %(type_name)s_from_parts(%(real_type)s x, %(real_type)s y) {
return x + y*(%(type)s)_Complex_I; return x + y*(%(type)s)_Complex_I;
} }
#endif #endif
#else #else
static INLINE %(type)s %(type_name)s_from_parts(%(real_type)s x, %(real_type)s y) { static CYTHON_INLINE %(type)s %(type_name)s_from_parts(%(real_type)s x, %(real_type)s y) {
%(type)s z; %(type)s z;
z.real = x; z.real = x;
z.imag = y; z.imag = y;
...@@ -1177,65 +1177,65 @@ proto=""" ...@@ -1177,65 +1177,65 @@ proto="""
/*#define __Pyx_c_abs%(m)s(z) (cabs%(m)s(z))*/ /*#define __Pyx_c_abs%(m)s(z) (cabs%(m)s(z))*/
#endif #endif
#else #else
static INLINE int __Pyx_c_eq%(m)s(%(type)s, %(type)s); static CYTHON_INLINE int __Pyx_c_eq%(m)s(%(type)s, %(type)s);
static INLINE %(type)s __Pyx_c_sum%(m)s(%(type)s, %(type)s); static CYTHON_INLINE %(type)s __Pyx_c_sum%(m)s(%(type)s, %(type)s);
static INLINE %(type)s __Pyx_c_diff%(m)s(%(type)s, %(type)s); static CYTHON_INLINE %(type)s __Pyx_c_diff%(m)s(%(type)s, %(type)s);
static INLINE %(type)s __Pyx_c_prod%(m)s(%(type)s, %(type)s); static CYTHON_INLINE %(type)s __Pyx_c_prod%(m)s(%(type)s, %(type)s);
static INLINE %(type)s __Pyx_c_quot%(m)s(%(type)s, %(type)s); static CYTHON_INLINE %(type)s __Pyx_c_quot%(m)s(%(type)s, %(type)s);
static INLINE %(type)s __Pyx_c_neg%(m)s(%(type)s); static CYTHON_INLINE %(type)s __Pyx_c_neg%(m)s(%(type)s);
static INLINE int __Pyx_c_is_zero%(m)s(%(type)s); static CYTHON_INLINE int __Pyx_c_is_zero%(m)s(%(type)s);
static INLINE %(type)s __Pyx_c_conj%(m)s(%(type)s); static CYTHON_INLINE %(type)s __Pyx_c_conj%(m)s(%(type)s);
/*static INLINE %(real_type)s __Pyx_c_abs%(m)s(%(type)s);*/ /*static CYTHON_INLINE %(real_type)s __Pyx_c_abs%(m)s(%(type)s);*/
#endif #endif
""", """,
impl=""" impl="""
#if CYTHON_CCOMPLEX #if CYTHON_CCOMPLEX
#else #else
static INLINE int __Pyx_c_eq%(m)s(%(type)s a, %(type)s b) { static CYTHON_INLINE int __Pyx_c_eq%(m)s(%(type)s a, %(type)s b) {
return (a.real == b.real) && (a.imag == b.imag); return (a.real == b.real) && (a.imag == b.imag);
} }
static INLINE %(type)s __Pyx_c_sum%(m)s(%(type)s a, %(type)s b) { static CYTHON_INLINE %(type)s __Pyx_c_sum%(m)s(%(type)s a, %(type)s b) {
%(type)s z; %(type)s z;
z.real = a.real + b.real; z.real = a.real + b.real;
z.imag = a.imag + b.imag; z.imag = a.imag + b.imag;
return z; return z;
} }
static INLINE %(type)s __Pyx_c_diff%(m)s(%(type)s a, %(type)s b) { static CYTHON_INLINE %(type)s __Pyx_c_diff%(m)s(%(type)s a, %(type)s b) {
%(type)s z; %(type)s z;
z.real = a.real - b.real; z.real = a.real - b.real;
z.imag = a.imag - b.imag; z.imag = a.imag - b.imag;
return z; return z;
} }
static INLINE %(type)s __Pyx_c_prod%(m)s(%(type)s a, %(type)s b) { static CYTHON_INLINE %(type)s __Pyx_c_prod%(m)s(%(type)s a, %(type)s b) {
%(type)s z; %(type)s z;
z.real = a.real * b.real - a.imag * b.imag; z.real = a.real * b.real - a.imag * b.imag;
z.imag = a.real * b.imag + a.imag * b.real; z.imag = a.real * b.imag + a.imag * b.real;
return z; return z;
} }
static INLINE %(type)s __Pyx_c_quot%(m)s(%(type)s a, %(type)s b) { static CYTHON_INLINE %(type)s __Pyx_c_quot%(m)s(%(type)s a, %(type)s b) {
%(type)s z; %(type)s z;
%(real_type)s denom = b.real * b.real + b.imag * b.imag; %(real_type)s denom = b.real * b.real + b.imag * b.imag;
z.real = (a.real * b.real + a.imag * b.imag) / denom; z.real = (a.real * b.real + a.imag * b.imag) / denom;
z.imag = (a.imag * b.real - a.real * b.imag) / denom; z.imag = (a.imag * b.real - a.real * b.imag) / denom;
return z; return z;
} }
static INLINE %(type)s __Pyx_c_neg%(m)s(%(type)s a) { static CYTHON_INLINE %(type)s __Pyx_c_neg%(m)s(%(type)s a) {
%(type)s z; %(type)s z;
z.real = -a.real; z.real = -a.real;
z.imag = -a.imag; z.imag = -a.imag;
return z; return z;
} }
static INLINE int __Pyx_c_is_zero%(m)s(%(type)s a) { static CYTHON_INLINE int __Pyx_c_is_zero%(m)s(%(type)s a) {
return (a.real == 0) && (a.imag == 0); return (a.real == 0) && (a.imag == 0);
} }
static INLINE %(type)s __Pyx_c_conj%(m)s(%(type)s a) { static CYTHON_INLINE %(type)s __Pyx_c_conj%(m)s(%(type)s a) {
%(type)s z; %(type)s z;
z.real = a.real; z.real = a.real;
z.imag = -a.imag; z.imag = -a.imag;
return z; return z;
} }
/* /*
static INLINE %(real_type)s __Pyx_c_abs%(m)s(%(type)s z) { static CYTHON_INLINE %(real_type)s __Pyx_c_abs%(m)s(%(type)s z) {
#if HAVE_HYPOT #if HAVE_HYPOT
return hypot%(m)s(z.real, z.imag); return hypot%(m)s(z.real, z.imag);
#else #else
...@@ -2127,8 +2127,8 @@ type_conversion_predeclarations = """ ...@@ -2127,8 +2127,8 @@ type_conversion_predeclarations = """
#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) __Pyx_PyBytes_AsString(s)) #define __Pyx_PyBytes_AsUString(s) ((unsigned char*) __Pyx_PyBytes_AsString(s))
#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) #define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False))
static INLINE int __Pyx_PyObject_IsTrue(PyObject*); static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x);
#if !defined(T_PYSSIZET) #if !defined(T_PYSSIZET)
#if PY_VERSION_HEX < 0x02050000 #if PY_VERSION_HEX < 0x02050000
...@@ -2192,9 +2192,9 @@ static INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); ...@@ -2192,9 +2192,9 @@ static INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x);
#endif #endif
#endif #endif
static INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
static INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*);
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) #define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
...@@ -2203,13 +2203,13 @@ static INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); ...@@ -2203,13 +2203,13 @@ static INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*);
type_conversion_functions = """ type_conversion_functions = """
/* Type Conversion Functions */ /* Type Conversion Functions */
static INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {
if (x == Py_True) return 1; if (x == Py_True) return 1;
else if ((x == Py_False) | (x == Py_None)) return 0; else if ((x == Py_False) | (x == Py_None)) return 0;
else return PyObject_IsTrue(x); else return PyObject_IsTrue(x);
} }
static INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) {
PyNumberMethods *m; PyNumberMethods *m;
const char *name = NULL; const char *name = NULL;
PyObject *res = NULL; PyObject *res = NULL;
...@@ -2255,7 +2255,7 @@ static INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { ...@@ -2255,7 +2255,7 @@ static INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) {
return res; return res;
} }
static INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
Py_ssize_t ival; Py_ssize_t ival;
PyObject* x = PyNumber_Index(b); PyObject* x = PyNumber_Index(b);
if (!x) return -1; if (!x) return -1;
...@@ -2264,7 +2264,7 @@ static INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { ...@@ -2264,7 +2264,7 @@ static INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
return ival; return ival;
} }
static INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {
#if PY_VERSION_HEX < 0x02050000 #if PY_VERSION_HEX < 0x02050000
if (ival <= LONG_MAX) if (ival <= LONG_MAX)
return PyInt_FromLong((long)ival); return PyInt_FromLong((long)ival);
...@@ -2278,7 +2278,7 @@ static INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { ...@@ -2278,7 +2278,7 @@ static INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {
#endif #endif
} }
static INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) {
unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x);
if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) {
return (size_t)-1; return (size_t)-1;
......
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