diff --git a/Lib/test/test_select.py b/Lib/test/test_select.py index 1ef56243549874..957a633f3230e7 100644 --- a/Lib/test/test_select.py +++ b/Lib/test/test_select.py @@ -91,6 +91,10 @@ def test_disallow_instantiation(self): tp = type(select.poll()) self.assertRaises(TypeError, tp) + if hasattr(select, 'devpoll'): + tp = type(select.devpoll()) + self.assertRaises(TypeError, tp) + def tearDownModule(): support.reap_children() diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c index 5038c325faa4eb..3ecd0c32b30389 100644 --- a/Modules/selectmodule.c +++ b/Modules/selectmodule.c @@ -1110,13 +1110,6 @@ newDevPollObject(PyObject *module) return self; } -static PyObject * -devpoll_new(PyTypeObject *type, PyObject *args, PyObject *kwargs) -{ - PyErr_Format(PyExc_TypeError, "Cannot create '%.200s' instances", _PyType_Name(type)); - return NULL; -} - static void devpoll_dealloc(devpollObject *self) { @@ -1131,7 +1124,6 @@ static PyType_Slot devpoll_Type_slots[] = { {Py_tp_dealloc, devpoll_dealloc}, {Py_tp_getset, devpoll_getsetlist}, {Py_tp_methods, devpoll_methods}, - {Py_tp_new, devpoll_new}, {0, 0}, }; @@ -1139,7 +1131,7 @@ static PyType_Spec devpoll_Type_spec = { "select.devpoll", sizeof(devpollObject), 0, - Py_TPFLAGS_DEFAULT, + Py_TPFLAGS_DEFAULT | Py_TPFLAGS_DISALLOW_INSTANTIATION, devpoll_Type_slots };