[pypy-commit] pypy py3.6: remove python2-only slot functions, fix test
mattip
pypy.commits at gmail.com
Mon Jun 24 00:04:34 EDT 2019
Author: Matti Picus <matti.picus at gmail.com>
Branch: py3.6
Changeset: r96845:2ee8740e5142
Date: 2019-06-24 07:03 +0300
http://bitbucket.org/pypy/pypy/changeset/2ee8740e5142/
Log: remove python2-only slot functions, fix test
diff --git a/pypy/module/cpyext/slotdefs.py b/pypy/module/cpyext/slotdefs.py
--- a/pypy/module/cpyext/slotdefs.py
+++ b/pypy/module/cpyext/slotdefs.py
@@ -30,7 +30,7 @@
from rpython.flowspace.specialcase import register_flow_sc
from pypy.module.sys.version import CPYTHON_VERSION
-PY3 = CPYTHON_VERSION[0] == 3
+PY2 = CPYTHON_VERSION[0] == 2
# XXX: Also defined in object.h
Py_LT = 0
@@ -849,7 +849,7 @@
missing_builtin_slots = [
'tp_print', 'tp_compare', 'tp_getattr', 'tp_setattr', 'tp_setattro',
'tp_finalize',
- 'tp_richcompare', 'tp_del', 'tp_as_buffer.c_bf_getwritebuffer',
+ 'tp_richcompare', 'tp_del',
'tp_as_number.c_nb_bool', 'tp_as_number.c_nb_coerce',
'tp_as_number.c_nb_inplace_add', 'tp_as_number.c_nb_inplace_subtract',
'tp_as_number.c_nb_inplace_multiply', 'tp_as_number.c_nb_inplace_divide',
@@ -863,7 +863,11 @@
'tp_as_number.c_nb_inplace_matrix_multiply',
'tp_as_sequence.c_sq_slice', 'tp_as_sequence.c_sq_ass_slice',
'tp_as_sequence.c_sq_contains',
- 'tp_as_buffer.c_bf_getreadbuffer',
+ ]
+if PY2:
+ missing_builtin_slots += [
+ 'tp_as_buffer.c_bf_getreadbuffer',
+ 'tp_as_buffer.c_bf_getwritebuffer',
]
for name in missing_builtin_slots:
slot_factory(name)(make_missing_slot)
@@ -1151,7 +1155,7 @@
TPSLOT("__buffer__", "tp_as_buffer.c_bf_getbuffer", None, "wrap_getbuffer", ""),
)
-if not PY3:
+if PY2:
slotdefs += (
TPSLOT("__rbuffer__", "tp_as_buffer.c_bf_getreadbuffer", None, "wrap_getreadbuffer", ""),
TPSLOT("__wbuffer__", "tp_as_buffer.c_bf_getwritebuffer", None, "wrap_getwritebuffer", ""),
diff --git a/pypy/module/cpyext/test/test_memoryobject.py b/pypy/module/cpyext/test/test_memoryobject.py
--- a/pypy/module/cpyext/test/test_memoryobject.py
+++ b/pypy/module/cpyext/test/test_memoryobject.py
@@ -49,8 +49,7 @@
py_obj = make_ref(space, w_obj)
assert py_obj.c_ob_type.c_tp_as_buffer
assert py_obj.c_ob_type.c_tp_as_buffer.c_bf_getbuffer
- assert py_obj.c_ob_type.c_tp_as_buffer.c_bf_getreadbuffer
- assert py_obj.c_ob_type.c_tp_as_buffer.c_bf_getwritebuffer
+ assert not py_obj.c_ob_type.c_tp_as_buffer.c_bf_releasebuffer
class AppTestPyBuffer_FillInfo(AppTestCpythonExtensionBase):
More information about the pypy-commit
mailing list