Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Gwenaël Samain
cython
Commits
1fa4b6a0
Commit
1fa4b6a0
authored
Sep 03, 2014
by
scoder
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #319 from cython/dalcinl/no-old-python
Get rid of obsolete Python cruft
parents
2075746f
5fb94a34
Changes
12
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
50 additions
and
69 deletions
+50
-69
Cython/Compiler/Code.py
Cython/Compiler/Code.py
+1
-2
Cython/Compiler/ModuleNode.py
Cython/Compiler/ModuleNode.py
+17
-17
Cython/Compiler/TypeSlots.py
Cython/Compiler/TypeSlots.py
+4
-4
Cython/Includes/cpython/number.pxd
Cython/Includes/cpython/number.pxd
+1
-1
Cython/Includes/cpython/version.pxd
Cython/Includes/cpython/version.pxd
+2
-2
Cython/Utility/Capsule.c
Cython/Utility/Capsule.c
+1
-1
Cython/Utility/CythonFunction.c
Cython/Utility/CythonFunction.c
+5
-5
Cython/Utility/Generator.c
Cython/Utility/Generator.c
+4
-4
Cython/Utility/ImportExport.c
Cython/Utility/ImportExport.c
+8
-8
Cython/Utility/MemoryView.pyx
Cython/Utility/MemoryView.pyx
+1
-1
Cython/Utility/ModuleSetupCode.c
Cython/Utility/ModuleSetupCode.c
+4
-17
tests/run/ext_attribute_cache.pyx
tests/run/ext_attribute_cache.pyx
+2
-7
No files found.
Cython/Compiler/Code.py
View file @
1fa4b6a0
...
@@ -46,7 +46,6 @@ non_portable_builtins_map = {
...
@@ -46,7 +46,6 @@ non_portable_builtins_map = {
'basestring'
:
(
'PY_MAJOR_VERSION >= 3'
,
'str'
),
'basestring'
:
(
'PY_MAJOR_VERSION >= 3'
,
'str'
),
'xrange'
:
(
'PY_MAJOR_VERSION >= 3'
,
'range'
),
'xrange'
:
(
'PY_MAJOR_VERSION >= 3'
,
'range'
),
'raw_input'
:
(
'PY_MAJOR_VERSION >= 3'
,
'input'
),
'raw_input'
:
(
'PY_MAJOR_VERSION >= 3'
,
'input'
),
'BaseException'
:
(
'PY_VERSION_HEX < 0x02050000'
,
'Exception'
),
}
}
basicsize_builtins_map
=
{
basicsize_builtins_map
=
{
...
@@ -1920,7 +1919,7 @@ class CCodeWriter(object):
...
@@ -1920,7 +1919,7 @@ class CCodeWriter(object):
if
entry
.
is_special
:
if
entry
.
is_special
:
method_flags
+=
[
method_coexist
]
method_flags
+=
[
method_coexist
]
self
.
putln
(
self
.
putln
(
'{
__Pyx_NAMESTR("%s"), (PyCFunction)%s, %s, __Pyx_DOCSTR(%s)
}%s'
%
(
'{
"%s", (PyCFunction)%s, %s, %s
}%s'
%
(
entry
.
name
,
entry
.
name
,
entry
.
func_cname
,
entry
.
func_cname
,
"|"
.
join
(
method_flags
),
"|"
.
join
(
method_flags
),
...
...
Cython/Compiler/ModuleNode.py
View file @
1fa4b6a0
...
@@ -1894,7 +1894,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -1894,7 +1894,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
code
.
putln
(
code
.
putln
(
"PyVarObject_HEAD_INIT(0, 0)"
)
"PyVarObject_HEAD_INIT(0, 0)"
)
code
.
putln
(
code
.
putln
(
'
__Pyx_NAMESTR("%s.%s")
, /*tp_name*/'
%
(
'
"%s.%s"
, /*tp_name*/'
%
(
self
.
full_module_name
,
scope
.
class_name
))
self
.
full_module_name
,
scope
.
class_name
))
if
type
.
typedef_flag
:
if
type
.
typedef_flag
:
objstruct
=
type
.
objstruct_cname
objstruct
=
type
.
objstruct_cname
...
@@ -1933,7 +1933,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -1933,7 +1933,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
env
.
getset_table_cname
)
env
.
getset_table_cname
)
for
entry
in
env
.
property_entries
:
for
entry
in
env
.
property_entries
:
if
entry
.
doc
:
if
entry
.
doc
:
doc_code
=
"
__Pyx_DOCSTR(%s)
"
%
code
.
get_string_const
(
entry
.
doc
)
doc_code
=
"
%s
"
%
code
.
get_string_const
(
entry
.
doc
)
else
:
else
:
doc_code
=
"0"
doc_code
=
"0"
code
.
putln
(
code
.
putln
(
...
@@ -2079,7 +2079,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -2079,7 +2079,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
EncodedString
(
"__main__"
),
identifier
=
True
)
EncodedString
(
"__main__"
),
identifier
=
True
)
code
.
putln
(
"if (%s%s) {"
%
(
Naming
.
module_is_main
,
self
.
full_module_name
.
replace
(
'.'
,
'__'
)))
code
.
putln
(
"if (%s%s) {"
%
(
Naming
.
module_is_main
,
self
.
full_module_name
.
replace
(
'.'
,
'__'
)))
code
.
putln
(
code
.
putln
(
'if (
__Pyx
_SetAttrString(%s, "__name__", %s) < 0) %s;'
%
(
'if (
PyObject
_SetAttrString(%s, "__name__", %s) < 0) %s;'
%
(
env
.
module_cname
,
env
.
module_cname
,
__main__name
.
cname
,
__main__name
.
cname
,
code
.
error_goto
(
self
.
pos
)))
code
.
error_goto
(
self
.
pos
)))
...
@@ -2170,7 +2170,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -2170,7 +2170,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
module_path
=
self
.
pos
[
0
].
filename
module_path
=
self
.
pos
[
0
].
filename
if
module_path
:
if
module_path
:
code
.
putln
(
'if (
__Pyx
_SetAttrString(%s, "__file__", %s) < 0) %s;'
%
(
code
.
putln
(
'if (
PyObject
_SetAttrString(%s, "__file__", %s) < 0) %s;'
%
(
env
.
module_cname
,
env
.
module_cname
,
code
.
globalstate
.
get_py_string_const
(
code
.
globalstate
.
get_py_string_const
(
EncodedString
(
decode_filename
(
module_path
))).
cname
,
EncodedString
(
decode_filename
(
module_path
))).
cname
,
...
@@ -2187,7 +2187,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -2187,7 +2187,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
code
.
error_goto_if_null
(
temp
,
self
.
pos
)))
code
.
error_goto_if_null
(
temp
,
self
.
pos
)))
code
.
put_gotref
(
temp
)
code
.
put_gotref
(
temp
)
code
.
putln
(
code
.
putln
(
'if (
__Pyx
_SetAttrString(%s, "__path__", %s) < 0) %s;'
%
(
'if (
PyObject
_SetAttrString(%s, "__path__", %s) < 0) %s;'
%
(
env
.
module_cname
,
temp
,
code
.
error_goto
(
self
.
pos
)))
env
.
module_cname
,
temp
,
code
.
error_goto
(
self
.
pos
)))
code
.
put_decref_clear
(
temp
,
py_object_type
)
code
.
put_decref_clear
(
temp
,
py_object_type
)
code
.
funcstate
.
release_temp
(
temp
)
code
.
funcstate
.
release_temp
(
temp
)
...
@@ -2308,7 +2308,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -2308,7 +2308,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
def
generate_pymoduledef_struct
(
self
,
env
,
code
):
def
generate_pymoduledef_struct
(
self
,
env
,
code
):
if
env
.
doc
:
if
env
.
doc
:
doc
=
"
__Pyx_DOCSTR(%s)
"
%
code
.
get_string_const
(
env
.
doc
)
doc
=
"
%s
"
%
code
.
get_string_const
(
env
.
doc
)
else
:
else
:
doc
=
"0"
doc
=
"0"
if
Options
.
generate_cleanup_code
:
if
Options
.
generate_cleanup_code
:
...
@@ -2325,7 +2325,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -2325,7 +2325,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
code
.
putln
(
"#else"
)
code
.
putln
(
"#else"
)
code
.
putln
(
" PyModuleDef_HEAD_INIT,"
)
code
.
putln
(
" PyModuleDef_HEAD_INIT,"
)
code
.
putln
(
"#endif"
)
code
.
putln
(
"#endif"
)
code
.
putln
(
'
__Pyx_NAMESTR("%s")
,'
%
env
.
module_name
)
code
.
putln
(
'
"%s"
,'
%
env
.
module_name
)
code
.
putln
(
" %s, /* m_doc */"
%
doc
)
code
.
putln
(
" %s, /* m_doc */"
%
doc
)
code
.
putln
(
" -1, /* m_size */"
)
code
.
putln
(
" -1, /* m_size */"
)
code
.
putln
(
" %s /* m_methods */,"
%
env
.
method_table_cname
)
code
.
putln
(
" %s /* m_methods */,"
%
env
.
method_table_cname
)
...
@@ -2340,12 +2340,12 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -2340,12 +2340,12 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
# Generate code to create the module object and
# Generate code to create the module object and
# install the builtins.
# install the builtins.
if
env
.
doc
:
if
env
.
doc
:
doc
=
"
__Pyx_DOCSTR(%s)
"
%
code
.
get_string_const
(
env
.
doc
)
doc
=
"
%s
"
%
code
.
get_string_const
(
env
.
doc
)
else
:
else
:
doc
=
"0"
doc
=
"0"
code
.
putln
(
"#if PY_MAJOR_VERSION < 3"
)
code
.
putln
(
"#if PY_MAJOR_VERSION < 3"
)
code
.
putln
(
code
.
putln
(
'%s = Py_InitModule4(
__Pyx_NAMESTR("%s")
, %s, %s, 0, PYTHON_API_VERSION); Py_XINCREF(%s);'
%
(
'%s = Py_InitModule4(
"%s"
, %s, %s, 0, PYTHON_API_VERSION); Py_XINCREF(%s);'
%
(
env
.
module_cname
,
env
.
module_cname
,
env
.
module_name
,
env
.
module_name
,
env
.
method_table_cname
,
env
.
method_table_cname
,
...
@@ -2365,20 +2365,20 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -2365,20 +2365,20 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
code
.
put_incref
(
env
.
module_dict_cname
,
py_object_type
,
nanny
=
False
)
code
.
put_incref
(
env
.
module_dict_cname
,
py_object_type
,
nanny
=
False
)
code
.
putln
(
code
.
putln
(
'%s = PyImport_AddModule(__Pyx_
NAMESTR(__Pyx_BUILTIN_MODULE_NAME)
); %s'
%
(
'%s = PyImport_AddModule(__Pyx_
BUILTIN_MODULE_NAME
); %s'
%
(
Naming
.
builtins_cname
,
Naming
.
builtins_cname
,
code
.
error_goto_if_null
(
Naming
.
builtins_cname
,
self
.
pos
)))
code
.
error_goto_if_null
(
Naming
.
builtins_cname
,
self
.
pos
)))
code
.
putln
(
'#if CYTHON_COMPILING_IN_PYPY'
)
code
.
putln
(
'#if CYTHON_COMPILING_IN_PYPY'
)
code
.
putln
(
'Py_INCREF(%s);'
%
Naming
.
builtins_cname
)
code
.
putln
(
'Py_INCREF(%s);'
%
Naming
.
builtins_cname
)
code
.
putln
(
'#endif'
)
code
.
putln
(
'#endif'
)
code
.
putln
(
code
.
putln
(
'if (
__Pyx
_SetAttrString(%s, "__builtins__", %s) < 0) %s;'
%
(
'if (
PyObject
_SetAttrString(%s, "__builtins__", %s) < 0) %s;'
%
(
env
.
module_cname
,
env
.
module_cname
,
Naming
.
builtins_cname
,
Naming
.
builtins_cname
,
code
.
error_goto
(
self
.
pos
)))
code
.
error_goto
(
self
.
pos
)))
if
Options
.
pre_import
is
not
None
:
if
Options
.
pre_import
is
not
None
:
code
.
putln
(
code
.
putln
(
'%s = PyImport_AddModule(
__Pyx_NAMESTR("%s")
); %s'
%
(
'%s = PyImport_AddModule(
"%s"
); %s'
%
(
Naming
.
preimport_cname
,
Naming
.
preimport_cname
,
Options
.
pre_import
,
Options
.
pre_import
,
code
.
error_goto_if_null
(
Naming
.
preimport_cname
,
self
.
pos
)))
code
.
error_goto_if_null
(
Naming
.
preimport_cname
,
self
.
pos
)))
...
@@ -2404,7 +2404,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -2404,7 +2404,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
entry
.
cname
))
entry
.
cname
))
code
.
putln
(
code
.
error_goto_if_null
(
"wrapped"
,
entry
.
pos
))
code
.
putln
(
code
.
error_goto_if_null
(
"wrapped"
,
entry
.
pos
))
code
.
putln
(
code
.
putln
(
'if (
__Pyx
_SetAttrString(%s, "%s", wrapped) < 0) %s;'
%
(
'if (
PyObject
_SetAttrString(%s, "%s", wrapped) < 0) %s;'
%
(
env
.
module_cname
,
env
.
module_cname
,
name
,
name
,
code
.
error_goto
(
entry
.
pos
)))
code
.
error_goto
(
entry
.
pos
)))
...
@@ -2642,7 +2642,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -2642,7 +2642,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
code
.
putln
(
'#if CYTHON_COMPILING_IN_CPYTHON'
)
code
.
putln
(
'#if CYTHON_COMPILING_IN_CPYTHON'
)
code
.
putln
(
"{"
)
code
.
putln
(
"{"
)
code
.
putln
(
code
.
putln
(
'PyObject *wrapper =
__Pyx
_GetAttrString((PyObject *)&%s, "%s"); %s'
%
(
'PyObject *wrapper =
PyObject
_GetAttrString((PyObject *)&%s, "%s"); %s'
%
(
typeobj_cname
,
typeobj_cname
,
func
.
name
,
func
.
name
,
code
.
error_goto_if_null
(
'wrapper'
,
entry
.
pos
)))
code
.
error_goto_if_null
(
'wrapper'
,
entry
.
pos
)))
...
@@ -2674,7 +2674,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
...
@@ -2674,7 +2674,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
# Cython (such as closures), the 'internal'
# Cython (such as closures), the 'internal'
# directive is set by users
# directive is set by users
code
.
putln
(
code
.
putln
(
'if (
__Pyx
_SetAttrString(%s, "%s", (PyObject *)&%s) < 0) %s'
%
(
'if (
PyObject
_SetAttrString(%s, "%s", (PyObject *)&%s) < 0) %s'
%
(
Naming
.
module_cname
,
Naming
.
module_cname
,
scope
.
class_name
,
scope
.
class_name
,
typeobj_cname
,
typeobj_cname
,
...
@@ -2790,7 +2790,7 @@ import_star_utility_code = """
...
@@ -2790,7 +2790,7 @@ import_star_utility_code = """
static int
static int
__Pyx_import_all_from(PyObject *locals, PyObject *v)
__Pyx_import_all_from(PyObject *locals, PyObject *v)
{
{
PyObject *all =
__Pyx
_GetAttrString(v, "__all__");
PyObject *all =
PyObject
_GetAttrString(v, "__all__");
PyObject *dict, *name, *value;
PyObject *dict, *name, *value;
int skip_leading_underscores = 0;
int skip_leading_underscores = 0;
int pos, err;
int pos, err;
...
@@ -2799,7 +2799,7 @@ __Pyx_import_all_from(PyObject *locals, PyObject *v)
...
@@ -2799,7 +2799,7 @@ __Pyx_import_all_from(PyObject *locals, PyObject *v)
if (!PyErr_ExceptionMatches(PyExc_AttributeError))
if (!PyErr_ExceptionMatches(PyExc_AttributeError))
return -1; /* Unexpected error */
return -1; /* Unexpected error */
PyErr_Clear();
PyErr_Clear();
dict =
__Pyx
_GetAttrString(v, "__dict__");
dict =
PyObject
_GetAttrString(v, "__dict__");
if (dict == NULL) {
if (dict == NULL) {
if (!PyErr_ExceptionMatches(PyExc_AttributeError))
if (!PyErr_ExceptionMatches(PyExc_AttributeError))
return -1;
return -1;
...
...
Cython/Compiler/TypeSlots.py
View file @
1fa4b6a0
...
@@ -417,7 +417,7 @@ class DocStringSlot(SlotDescriptor):
...
@@ -417,7 +417,7 @@ class DocStringSlot(SlotDescriptor):
doc
=
scope
.
doc
.
utf8encode
()
doc
=
scope
.
doc
.
utf8encode
()
else
:
else
:
doc
=
scope
.
doc
.
byteencode
()
doc
=
scope
.
doc
.
byteencode
()
return
'
__Pyx_DOCSTR("%s")
'
%
StringEncoding
.
escape_byte_string
(
doc
)
return
'
"%s"
'
%
StringEncoding
.
escape_byte_string
(
doc
)
else
:
else
:
return
"0"
return
"0"
...
@@ -738,8 +738,8 @@ PyBufferProcs = (
...
@@ -738,8 +738,8 @@ PyBufferProcs = (
MethodSlot
(
segcountproc
,
"bf_getsegcount"
,
"__getsegcount__"
,
py3
=
False
),
MethodSlot
(
segcountproc
,
"bf_getsegcount"
,
"__getsegcount__"
,
py3
=
False
),
MethodSlot
(
charbufferproc
,
"bf_getcharbuffer"
,
"__getcharbuffer__"
,
py3
=
False
),
MethodSlot
(
charbufferproc
,
"bf_getcharbuffer"
,
"__getcharbuffer__"
,
py3
=
False
),
MethodSlot
(
getbufferproc
,
"bf_getbuffer"
,
"__getbuffer__"
,
ifdef
=
"PY_VERSION_HEX >= 0x02060000"
),
MethodSlot
(
getbufferproc
,
"bf_getbuffer"
,
"__getbuffer__"
),
MethodSlot
(
releasebufferproc
,
"bf_releasebuffer"
,
"__releasebuffer__"
,
ifdef
=
"PY_VERSION_HEX >= 0x02060000"
)
MethodSlot
(
releasebufferproc
,
"bf_releasebuffer"
,
"__releasebuffer__"
)
)
)
#------------------------------------------------------------------------------------------
#------------------------------------------------------------------------------------------
...
@@ -809,7 +809,7 @@ slot_table = (
...
@@ -809,7 +809,7 @@ slot_table = (
EmptySlot
(
"tp_subclasses"
),
EmptySlot
(
"tp_subclasses"
),
EmptySlot
(
"tp_weaklist"
),
EmptySlot
(
"tp_weaklist"
),
EmptySlot
(
"tp_del"
),
EmptySlot
(
"tp_del"
),
EmptySlot
(
"tp_version_tag"
,
ifdef
=
"PY_VERSION_HEX >= 0x02060000"
),
EmptySlot
(
"tp_version_tag"
),
EmptySlot
(
"tp_finalize"
,
ifdef
=
"PY_VERSION_HEX >= 0x030400a1"
),
EmptySlot
(
"tp_finalize"
,
ifdef
=
"PY_VERSION_HEX >= 0x030400a1"
),
)
)
...
...
Cython/Includes/cpython/number.pxd
View file @
1fa4b6a0
...
@@ -246,6 +246,6 @@ cdef extern from "Python.h":
...
@@ -246,6 +246,6 @@ cdef extern from "Python.h":
# and the value is clipped to PY_SSIZE_T_MIN for a negative
# and the value is clipped to PY_SSIZE_T_MIN for a negative
# integer or PY_SSIZE_T_MAX for a positive integer.
# integer or PY_SSIZE_T_MAX for a positive integer.
bint
PyIndex_Check
"__Pyx_PyIndex_Check"
(
object
)
bint
PyIndex_Check
(
object
)
# Returns True if o is an index integer (has the nb_index slot of
# Returns True if o is an index integer (has the nb_index slot of
# the tp_as_number structure filled in).
# the tp_as_number structure filled in).
Cython/Includes/cpython/version.pxd
View file @
1fa4b6a0
...
@@ -4,8 +4,8 @@
...
@@ -4,8 +4,8 @@
#
#
# if PY_MAJOR_VERSION >= 3:
# if PY_MAJOR_VERSION >= 3:
# do_stuff_in_Py3_0_and_later()
# do_stuff_in_Py3_0_and_later()
# if PY_VERSION_HEX >= 0x020
5
0000:
# if PY_VERSION_HEX >= 0x020
7
0000:
# do_stuff_in_Py2_
5
_and_later()
# do_stuff_in_Py2_
7
_and_later()
#
#
# than using the IF/DEF statements, which are evaluated at Cython
# than using the IF/DEF statements, which are evaluated at Cython
# compile time. This will keep your C code portable.
# compile time. This will keep your C code portable.
...
...
Cython/Utility/Capsule.c
View file @
1fa4b6a0
...
@@ -10,7 +10,7 @@ __pyx_capsule_create(void *p, CYTHON_UNUSED const char *sig)
...
@@ -10,7 +10,7 @@ __pyx_capsule_create(void *p, CYTHON_UNUSED const char *sig)
{
{
PyObject
*
cobj
;
PyObject
*
cobj
;
#if PY_VERSION_HEX >= 0x02070000
&& !(PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION == 0)
#if PY_VERSION_HEX >= 0x02070000
cobj
=
PyCapsule_New
(
p
,
sig
,
NULL
);
cobj
=
PyCapsule_New
(
p
,
sig
,
NULL
);
#else
#else
cobj
=
PyCObject_FromVoidPtr
(
p
,
NULL
);
cobj
=
PyCObject_FromVoidPtr
(
p
,
NULL
);
...
...
Cython/Utility/CythonFunction.c
View file @
1fa4b6a0
...
@@ -423,7 +423,7 @@ __Pyx_CyFunction_reduce(__pyx_CyFunctionObject *m, CYTHON_UNUSED PyObject *args)
...
@@ -423,7 +423,7 @@ __Pyx_CyFunction_reduce(__pyx_CyFunctionObject *m, CYTHON_UNUSED PyObject *args)
}
}
static
PyMethodDef
__pyx_CyFunction_methods
[]
=
{
static
PyMethodDef
__pyx_CyFunction_methods
[]
=
{
{
__Pyx_NAMESTR
(
"__reduce__"
)
,
(
PyCFunction
)
__Pyx_CyFunction_reduce
,
METH_VARARGS
,
0
},
{
"__reduce__"
,
(
PyCFunction
)
__Pyx_CyFunction_reduce
,
METH_VARARGS
,
0
},
{
0
,
0
,
0
,
0
}
{
0
,
0
,
0
,
0
}
};
};
...
@@ -623,7 +623,7 @@ static PyObject * __Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject
...
@@ -623,7 +623,7 @@ static PyObject * __Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject
static
PyTypeObject
__pyx_CyFunctionType_type
=
{
static
PyTypeObject
__pyx_CyFunctionType_type
=
{
PyVarObject_HEAD_INIT
(
0
,
0
)
PyVarObject_HEAD_INIT
(
0
,
0
)
__Pyx_NAMESTR
(
"cython_function_or_method"
),
/*tp_name*/
"cython_function_or_method"
,
/*tp_name*/
sizeof
(
__pyx_CyFunctionObject
),
/*tp_basicsize*/
sizeof
(
__pyx_CyFunctionObject
),
/*tp_basicsize*/
0
,
/*tp_itemsize*/
0
,
/*tp_itemsize*/
(
destructor
)
__Pyx_CyFunction_dealloc
,
/*tp_dealloc*/
(
destructor
)
__Pyx_CyFunction_dealloc
,
/*tp_dealloc*/
...
@@ -1063,7 +1063,7 @@ static PyMemberDef __pyx_FusedFunction_members[] = {
...
@@ -1063,7 +1063,7 @@ static PyMemberDef __pyx_FusedFunction_members[] = {
T_OBJECT
,
T_OBJECT
,
offsetof
(
__pyx_FusedFunctionObject
,
__signatures__
),
offsetof
(
__pyx_FusedFunctionObject
,
__signatures__
),
READONLY
,
READONLY
,
__Pyx_DOCSTR
(
0
)
},
0
},
{
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
},
};
};
...
@@ -1075,7 +1075,7 @@ static PyMappingMethods __pyx_FusedFunction_mapping_methods = {
...
@@ -1075,7 +1075,7 @@ static PyMappingMethods __pyx_FusedFunction_mapping_methods = {
static
PyTypeObject
__pyx_FusedFunctionType_type
=
{
static
PyTypeObject
__pyx_FusedFunctionType_type
=
{
PyVarObject_HEAD_INIT
(
0
,
0
)
PyVarObject_HEAD_INIT
(
0
,
0
)
__Pyx_NAMESTR
(
"fused_cython_function"
),
/*tp_name*/
"fused_cython_function"
,
/*tp_name*/
sizeof
(
__pyx_FusedFunctionObject
),
/*tp_basicsize*/
sizeof
(
__pyx_FusedFunctionObject
),
/*tp_basicsize*/
0
,
/*tp_itemsize*/
0
,
/*tp_itemsize*/
(
destructor
)
__pyx_FusedFunction_dealloc
,
/*tp_dealloc*/
(
destructor
)
__pyx_FusedFunction_dealloc
,
/*tp_dealloc*/
...
@@ -1157,7 +1157,7 @@ static PyObject* __Pyx_Method_ClassMethod(PyObject *method) {
...
@@ -1157,7 +1157,7 @@ static PyObject* __Pyx_Method_ClassMethod(PyObject *method) {
// It appears that PyMethodDescr_Type is not anywhere exposed in the Python/C API
// It appears that PyMethodDescr_Type is not anywhere exposed in the Python/C API
static
PyTypeObject
*
methoddescr_type
=
NULL
;
static
PyTypeObject
*
methoddescr_type
=
NULL
;
if
(
methoddescr_type
==
NULL
)
{
if
(
methoddescr_type
==
NULL
)
{
PyObject
*
meth
=
__Pyx
_GetAttrString
((
PyObject
*
)
&
PyList_Type
,
"append"
);
PyObject
*
meth
=
PyObject
_GetAttrString
((
PyObject
*
)
&
PyList_Type
,
"append"
);
if
(
!
meth
)
return
NULL
;
if
(
!
meth
)
return
NULL
;
methoddescr_type
=
Py_TYPE
(
meth
);
methoddescr_type
=
Py_TYPE
(
meth
);
Py_DECREF
(
meth
);
Py_DECREF
(
meth
);
...
...
Cython/Utility/Generator.c
View file @
1fa4b6a0
...
@@ -613,15 +613,15 @@ static PyMemberDef __pyx_Generator_memberlist[] = {
...
@@ -613,15 +613,15 @@ static PyMemberDef __pyx_Generator_memberlist[] = {
};
};
static
PyMethodDef
__pyx_Generator_methods
[]
=
{
static
PyMethodDef
__pyx_Generator_methods
[]
=
{
{
__Pyx_NAMESTR
(
"send"
)
,
(
PyCFunction
)
__Pyx_Generator_Send
,
METH_O
,
0
},
{
"send"
,
(
PyCFunction
)
__Pyx_Generator_Send
,
METH_O
,
0
},
{
__Pyx_NAMESTR
(
"throw"
)
,
(
PyCFunction
)
__Pyx_Generator_Throw
,
METH_VARARGS
,
0
},
{
"throw"
,
(
PyCFunction
)
__Pyx_Generator_Throw
,
METH_VARARGS
,
0
},
{
__Pyx_NAMESTR
(
"close"
)
,
(
PyCFunction
)
__Pyx_Generator_Close
,
METH_NOARGS
,
0
},
{
"close"
,
(
PyCFunction
)
__Pyx_Generator_Close
,
METH_NOARGS
,
0
},
{
0
,
0
,
0
,
0
}
{
0
,
0
,
0
,
0
}
};
};
static
PyTypeObject
__pyx_GeneratorType_type
=
{
static
PyTypeObject
__pyx_GeneratorType_type
=
{
PyVarObject_HEAD_INIT
(
0
,
0
)
PyVarObject_HEAD_INIT
(
0
,
0
)
__Pyx_NAMESTR
(
"generator"
),
/*tp_name*/
"generator"
,
/*tp_name*/
sizeof
(
__pyx_GeneratorObject
),
/*tp_basicsize*/
sizeof
(
__pyx_GeneratorObject
),
/*tp_basicsize*/
0
,
/*tp_itemsize*/
0
,
/*tp_itemsize*/
(
destructor
)
__Pyx_Generator_dealloc
,
/*tp_dealloc*/
(
destructor
)
__Pyx_Generator_dealloc
,
/*tp_dealloc*/
...
...
Cython/Utility/ImportExport.c
View file @
1fa4b6a0
...
@@ -181,7 +181,7 @@ static int __Pyx_SetPackagePathFromImportLib(const char* parent_package_name, Py
...
@@ -181,7 +181,7 @@ static int __Pyx_SetPackagePathFromImportLib(const char* parent_package_name, Py
if
(
unlikely
(
!
file_path
))
if
(
unlikely
(
!
file_path
))
goto
bad
;
goto
bad
;
if
(
unlikely
(
__Pyx
_SetAttrString
(
$
module_cname
,
"__file__"
,
file_path
)
<
0
))
if
(
unlikely
(
PyObject
_SetAttrString
(
$
module_cname
,
"__file__"
,
file_path
)
<
0
))
goto
bad
;
goto
bad
;
osmod
=
PyImport_ImportModule
(
"os"
);
osmod
=
PyImport_ImportModule
(
"os"
);
...
@@ -214,7 +214,7 @@ bad:
...
@@ -214,7 +214,7 @@ bad:
return
-
1
;
return
-
1
;
set_path:
set_path:
result
=
__Pyx
_SetAttrString
(
$
module_cname
,
"__path__"
,
package_path
);
result
=
PyObject
_SetAttrString
(
$
module_cname
,
"__path__"
,
package_path
);
Py_DECREF
(
package_path
);
Py_DECREF
(
package_path
);
return
result
;
return
result
;
}
}
...
@@ -321,7 +321,7 @@ static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**
...
@@ -321,7 +321,7 @@ static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**
PyModule_GetName
(
module
),
funcname
);
PyModule_GetName
(
module
),
funcname
);
goto
bad
;
goto
bad
;
}
}
#if PY_VERSION_HEX >= 0x02070000
&& !(PY_MAJOR_VERSION==3 && PY_MINOR_VERSION==0)
#if PY_VERSION_HEX >= 0x02070000
if
(
!
PyCapsule_IsValid
(
cobj
,
sig
))
{
if
(
!
PyCapsule_IsValid
(
cobj
,
sig
))
{
PyErr_Format
(
PyExc_TypeError
,
PyErr_Format
(
PyExc_TypeError
,
"C function %.200s.%.200s has wrong signature (expected %.500s, got %.500s)"
,
"C function %.200s.%.200s has wrong signature (expected %.500s, got %.500s)"
,
...
@@ -381,7 +381,7 @@ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *s
...
@@ -381,7 +381,7 @@ static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *s
goto
bad
;
goto
bad
;
}
}
tmp
.
fp
=
f
;
tmp
.
fp
=
f
;
#if PY_VERSION_HEX >= 0x02070000
&& !(PY_MAJOR_VERSION==3&&PY_MINOR_VERSION==0)
#if PY_VERSION_HEX >= 0x02070000
cobj
=
PyCapsule_New
(
tmp
.
p
,
sig
,
0
);
cobj
=
PyCapsule_New
(
tmp
.
p
,
sig
,
0
);
#else
#else
cobj
=
PyCObject_FromVoidPtrAndDesc
(
tmp
.
p
,
(
void
*
)
sig
,
0
);
cobj
=
PyCObject_FromVoidPtrAndDesc
(
tmp
.
p
,
(
void
*
)
sig
,
0
);
...
@@ -422,7 +422,7 @@ static int __Pyx_ImportVoidPtr(PyObject *module, const char *name, void **p, con
...
@@ -422,7 +422,7 @@ static int __Pyx_ImportVoidPtr(PyObject *module, const char *name, void **p, con
PyModule_GetName
(
module
),
name
);
PyModule_GetName
(
module
),
name
);
goto
bad
;
goto
bad
;
}
}
#if PY_VERSION_HEX >= 0x02070000
&& !(PY_MAJOR_VERSION==3 && PY_MINOR_VERSION==0)
#if PY_VERSION_HEX >= 0x02070000
if
(
!
PyCapsule_IsValid
(
cobj
,
sig
))
{
if
(
!
PyCapsule_IsValid
(
cobj
,
sig
))
{
PyErr_Format
(
PyExc_TypeError
,
PyErr_Format
(
PyExc_TypeError
,
"C variable %.200s.%.200s has wrong signature (expected %.500s, got %.500s)"
,
"C variable %.200s.%.200s has wrong signature (expected %.500s, got %.500s)"
,
...
@@ -476,7 +476,7 @@ static int __Pyx_ExportVoidPtr(PyObject *name, void *p, const char *sig) {
...
@@ -476,7 +476,7 @@ static int __Pyx_ExportVoidPtr(PyObject *name, void *p, const char *sig) {
if
(
__Pyx_PyObject_SetAttrStr
(
$
module_cname
,
PYIDENT
(
"$api_name"
),
d
)
<
0
)
if
(
__Pyx_PyObject_SetAttrStr
(
$
module_cname
,
PYIDENT
(
"$api_name"
),
d
)
<
0
)
goto
bad
;
goto
bad
;
}
}
#if PY_VERSION_HEX >= 0x02070000
&& !(PY_MAJOR_VERSION==3 && PY_MINOR_VERSION==0)
#if PY_VERSION_HEX >= 0x02070000
cobj
=
PyCapsule_New
(
p
,
sig
,
0
);
cobj
=
PyCapsule_New
(
p
,
sig
,
0
);
#else
#else
cobj
=
PyCObject_FromVoidPtrAndDesc
(
p
,
(
void
*
)
sig
,
0
);
cobj
=
PyCObject_FromVoidPtrAndDesc
(
p
,
(
void
*
)
sig
,
0
);
...
@@ -502,7 +502,7 @@ static int __Pyx_SetVtable(PyObject *dict, void *vtable); /*proto*/
...
@@ -502,7 +502,7 @@ static int __Pyx_SetVtable(PyObject *dict, void *vtable); /*proto*/
/////////////// SetVTable ///////////////
/////////////// SetVTable ///////////////
static
int
__Pyx_SetVtable
(
PyObject
*
dict
,
void
*
vtable
)
{
static
int
__Pyx_SetVtable
(
PyObject
*
dict
,
void
*
vtable
)
{
#if PY_VERSION_HEX >= 0x02070000
&& !(PY_MAJOR_VERSION==3&&PY_MINOR_VERSION==0)
#if PY_VERSION_HEX >= 0x02070000
PyObject
*
ob
=
PyCapsule_New
(
vtable
,
0
,
0
);
PyObject
*
ob
=
PyCapsule_New
(
vtable
,
0
,
0
);
#else
#else
PyObject
*
ob
=
PyCObject_FromVoidPtr
(
vtable
,
0
);
PyObject
*
ob
=
PyCObject_FromVoidPtr
(
vtable
,
0
);
...
@@ -530,7 +530,7 @@ static void* __Pyx_GetVtable(PyObject *dict) {
...
@@ -530,7 +530,7 @@ static void* __Pyx_GetVtable(PyObject *dict) {
PyObject
*
ob
=
PyObject_GetItem
(
dict
,
PYIDENT
(
"__pyx_vtable__"
));
PyObject
*
ob
=
PyObject_GetItem
(
dict
,
PYIDENT
(
"__pyx_vtable__"
));
if
(
!
ob
)
if
(
!
ob
)
goto
bad
;
goto
bad
;
#if PY_VERSION_HEX >= 0x02070000
&& !(PY_MAJOR_VERSION==3&&PY_MINOR_VERSION==0)
#if PY_VERSION_HEX >= 0x02070000
ptr
=
PyCapsule_GetPointer
(
ob
,
0
);
ptr
=
PyCapsule_GetPointer
(
ob
,
0
);
#else
#else
ptr
=
PyCObject_AsVoidPtr
(
ob
);
ptr
=
PyCObject_AsVoidPtr
(
ob
);
...
...
Cython/Utility/MemoryView.pyx
View file @
1fa4b6a0
...
@@ -6,7 +6,7 @@ import cython
...
@@ -6,7 +6,7 @@ import cython
# from cpython cimport ...
# from cpython cimport ...
cdef
extern
from
"Python.h"
:
cdef
extern
from
"Python.h"
:
int
PyIndex_Check
"__Pyx_PyIndex_Check"
(
object
)
int
PyIndex_Check
(
object
)
object
PyLong_FromVoidPtr
(
void
*
)
object
PyLong_FromVoidPtr
(
void
*
)
cdef
extern
from
"pythread.h"
:
cdef
extern
from
"pythread.h"
:
...
...
Cython/Utility/ModuleSetupCode.c
View file @
1fa4b6a0
...
@@ -46,7 +46,6 @@
...
@@ -46,7 +46,6 @@
#define __PYX_BUILD_PY_SSIZE_T "n"
#define __PYX_BUILD_PY_SSIZE_T "n"
#define CYTHON_FORMAT_SSIZE_T "z"
#define CYTHON_FORMAT_SSIZE_T "z"
#define __Pyx_PyIndex_Check PyIndex_Check
#if PY_MAJOR_VERSION < 3
#if PY_MAJOR_VERSION < 3
#define __Pyx_BUILTIN_MODULE_NAME "__builtin__"
#define __Pyx_BUILTIN_MODULE_NAME "__builtin__"
...
@@ -170,18 +169,6 @@
...
@@ -170,18 +169,6 @@
#define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func))
#define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func))
#endif
#endif
#define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n))
#define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a))
#define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n))
#if PY_VERSION_HEX < 0x02050000
#define __Pyx_NAMESTR(n) ((char *)(n))
#define __Pyx_DOCSTR(n) ((char *)(n))
#else
#define __Pyx_NAMESTR(n) (n)
#define __Pyx_DOCSTR(n) (n)
#endif
/* inline attribute */
/* inline attribute */
#ifndef CYTHON_INLINE
#ifndef CYTHON_INLINE
#if defined(__GNUC__)
#if defined(__GNUC__)
...
@@ -510,7 +497,7 @@ static int __Pyx_RegisterCleanup(void) {
...
@@ -510,7 +497,7 @@ static int __Pyx_RegisterCleanup(void) {
// and cached objects that we are about to clean up.
// and cached objects that we are about to clean up.
static
PyMethodDef
cleanup_def
=
{
static
PyMethodDef
cleanup_def
=
{
__Pyx_NAMESTR
(
"__cleanup"
)
,
(
PyCFunction
)
$
{
cleanup_cname
}
_atexit
,
METH_NOARGS
,
0
};
"__cleanup"
,
(
PyCFunction
)
$
{
cleanup_cname
}
_atexit
,
METH_NOARGS
,
0
};
PyObject
*
cleanup_func
=
0
;
PyObject
*
cleanup_func
=
0
;
PyObject
*
atexit
=
0
;
PyObject
*
atexit
=
0
;
...
@@ -526,7 +513,7 @@ static int __Pyx_RegisterCleanup(void) {
...
@@ -526,7 +513,7 @@ static int __Pyx_RegisterCleanup(void) {
atexit
=
__Pyx_ImportModule
(
"atexit"
);
atexit
=
__Pyx_ImportModule
(
"atexit"
);
if
(
!
atexit
)
if
(
!
atexit
)
goto
bad
;
goto
bad
;
reg
=
__Pyx
_GetAttrString
(
atexit
,
"_exithandlers"
);
reg
=
PyObject
_GetAttrString
(
atexit
,
"_exithandlers"
);
if
(
reg
&&
PyList_Check
(
reg
))
{
if
(
reg
&&
PyList_Check
(
reg
))
{
PyObject
*
a
,
*
kw
;
PyObject
*
a
,
*
kw
;
a
=
PyTuple_New
(
0
);
a
=
PyTuple_New
(
0
);
...
@@ -546,7 +533,7 @@ static int __Pyx_RegisterCleanup(void) {
...
@@ -546,7 +533,7 @@ static int __Pyx_RegisterCleanup(void) {
if
(
!
reg
)
if
(
!
reg
)
PyErr_Clear
();
PyErr_Clear
();
Py_XDECREF
(
reg
);
Py_XDECREF
(
reg
);
reg
=
__Pyx
_GetAttrString
(
atexit
,
"register"
);
reg
=
PyObject
_GetAttrString
(
atexit
,
"register"
);
if
(
!
reg
)
if
(
!
reg
)
goto
bad
;
goto
bad
;
args
=
PyTuple_Pack
(
1
,
cleanup_func
);
args
=
PyTuple_Pack
(
1
,
cleanup_func
);
...
...
tests/run/ext_attribute_cache.pyx
View file @
1fa4b6a0
...
@@ -11,9 +11,6 @@ cdef extern from *:
...
@@ -11,9 +11,6 @@ cdef extern from *:
unsigned
long
tp_flags
unsigned
long
tp_flags
SHOULD_HAVE_FLAG
=
PY_VERSION_HEX
>=
0x02060000
def
test_flag
(
t
):
def
test_flag
(
t
):
return
((
<
PyTypeObject
*>
t
).
tp_flags
&
Py_TPFLAGS_HAVE_VERSION_TAG
)
!=
0
return
((
<
PyTypeObject
*>
t
).
tp_flags
&
Py_TPFLAGS_HAVE_VERSION_TAG
)
!=
0
...
@@ -21,8 +18,7 @@ def test_flag(t):
...
@@ -21,8 +18,7 @@ def test_flag(t):
cdef
class
ImplicitAttrCache
(
object
):
cdef
class
ImplicitAttrCache
(
object
):
"""
"""
>>> flag = test_flag(ImplicitAttrCache)
>>> flag = test_flag(ImplicitAttrCache)
>>> if SHOULD_HAVE_FLAG: print(flag)
>>> print(flag)
... else: print(True)
True
True
"""
"""
cdef
public
int
x
cdef
public
int
x
...
@@ -33,8 +29,7 @@ cdef class ImplicitAttrCache(object):
...
@@ -33,8 +29,7 @@ cdef class ImplicitAttrCache(object):
cdef
class
ExplicitAttrCache
(
object
):
cdef
class
ExplicitAttrCache
(
object
):
"""
"""
>>> flag = test_flag(ImplicitAttrCache)
>>> flag = test_flag(ImplicitAttrCache)
>>> if SHOULD_HAVE_FLAG: print(flag)
>>> print(flag)
... else: print(True)
True
True
"""
"""
cdef
public
int
x
cdef
public
int
x
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment