diff options
| -rw-r--r-- | Include/descrobject.h | 2 | ||||
| -rw-r--r-- | Include/sliceobject.h | 1 | ||||
| -rw-r--r-- | Objects/object.c | 50 | ||||
| -rw-r--r-- | Objects/sliceobject.c | 2 | 
4 files changed, 48 insertions, 7 deletions
| diff --git a/Include/descrobject.h b/Include/descrobject.h index f06b42190d..15041ffe18 100644 --- a/Include/descrobject.h +++ b/Include/descrobject.h @@ -73,6 +73,8 @@ PyAPI_DATA(PyTypeObject) PyMemberDescr_Type;  PyAPI_DATA(PyTypeObject) PyMethodDescr_Type;  PyAPI_DATA(PyTypeObject) PyWrapperDescr_Type;  PyAPI_DATA(PyTypeObject) PyDictProxy_Type; +PyAPI_DATA(PyTypeObject) PyGetSetDescr_Type; +PyAPI_DATA(PyTypeObject) PyMemberDescr_Type;  PyAPI_FUNC(PyObject *) PyDescr_NewMethod(PyTypeObject *, PyMethodDef *);  PyAPI_FUNC(PyObject *) PyDescr_NewClassMethod(PyTypeObject *, PyMethodDef *); diff --git a/Include/sliceobject.h b/Include/sliceobject.h index dfc30c705f..8ab62dd4f8 100644 --- a/Include/sliceobject.h +++ b/Include/sliceobject.h @@ -25,6 +25,7 @@ typedef struct {  } PySliceObject;  PyAPI_DATA(PyTypeObject) PySlice_Type; +PyAPI_DATA(PyTypeObject) PyEllipsis_Type;  #define PySlice_Check(op) (Py_TYPE(op) == &PySlice_Type) diff --git a/Objects/object.c b/Objects/object.c index 1975f141ee..bf347b9a63 100644 --- a/Objects/object.c +++ b/Objects/object.c @@ -3,6 +3,7 @@  #include "Python.h"  #include "sliceobject.h" /* For PyEllipsis_Type */ +#include "frameobject.h"  #ifdef __cplusplus  extern "C" { @@ -1484,17 +1485,23 @@ _Py_ReadyTypes(void)  	if (PyType_Ready(&_PyWeakref_RefType) < 0)  		Py_FatalError("Can't initialize weakref type"); +	if (PyType_Ready(&_PyWeakref_CallableProxyType) < 0) +		Py_FatalError("Can't initialize callable weakref proxy type"); + +	if (PyType_Ready(&_PyWeakref_ProxyType) < 0) +		Py_FatalError("Can't initialize weakref proxy type"); +  	if (PyType_Ready(&PyBool_Type) < 0)  		Py_FatalError("Can't initialize bool type");  	if (PyType_Ready(&PyByteArray_Type) < 0) -		Py_FatalError("Can't initialize bytearray"); +		Py_FatalError("Can't initialize bytearray type");  	if (PyType_Ready(&PyBytes_Type) < 0)  		Py_FatalError("Can't initialize 'str'");  	if (PyType_Ready(&PyList_Type) < 0) -		Py_FatalError("Can't initialize list"); +		Py_FatalError("Can't initialize list type");  	if (PyType_Ready(&PyNone_Type) < 0)  		Py_FatalError("Can't initialize None type"); @@ -1532,9 +1539,10 @@ _Py_ReadyTypes(void)  	if (PyType_Ready(&PyStaticMethod_Type) < 0)  		Py_FatalError("Can't initialize static method type"); +#ifndef WITHOUT_COMPLEX  	if (PyType_Ready(&PyComplex_Type) < 0)  		Py_FatalError("Can't initialize complex type"); - +#endif  	if (PyType_Ready(&PyFloat_Type) < 0)  		Py_FatalError("Can't initialize float type"); @@ -1559,11 +1567,41 @@ _Py_ReadyTypes(void)  	if (PyType_Ready(&PyReversed_Type) < 0)  		Py_FatalError("Can't initialize reversed type"); -	if (PyType_Ready(&PyCode_Type) < 0) -		Py_FatalError("Can't initialize 'code'"); -  	if (PyType_Ready(&PyStdPrinter_Type) < 0)  		Py_FatalError("Can't initialize StdPrinter"); + +	if (PyType_Ready(&PyCode_Type) < 0) +		Py_FatalError("Can't initialize code type"); + +	if (PyType_Ready(&PyFrame_Type) < 0) +		Py_FatalError("Can't initialize frame type"); + +	if (PyType_Ready(&PyCFunction_Type) < 0) +		Py_FatalError("Can't initialize builtin function type"); + +	if (PyType_Ready(&PyMethod_Type) < 0) +		Py_FatalError("Can't initialize method type"); + +	if (PyType_Ready(&PyFunction_Type) < 0) +		Py_FatalError("Can't initialize function type"); + +	if (PyType_Ready(&PyDictProxy_Type) < 0) +		Py_FatalError("Can't initialize dict proxy type"); + +	if (PyType_Ready(&PyGen_Type) < 0) +		Py_FatalError("Can't initialize generator type"); + +	if (PyType_Ready(&PyGetSetDescr_Type) < 0) +		Py_FatalError("Can't initialize get-set descriptor type"); + +	if (PyType_Ready(&PyWrapperDescr_Type) < 0) +		Py_FatalError("Can't initialize wrapper type"); + +	if (PyType_Ready(&PyEllipsis_Type) < 0) +		Py_FatalError("Can't initialize ellipsis type"); + +	if (PyType_Ready(&PyMemberDescr_Type) < 0) +		Py_FatalError("Can't initialize member descriptor type");  } diff --git a/Objects/sliceobject.c b/Objects/sliceobject.c index ed3f520aa9..9acd7f7763 100644 --- a/Objects/sliceobject.c +++ b/Objects/sliceobject.c @@ -22,7 +22,7 @@ ellipsis_repr(PyObject *op)  	return PyUnicode_FromString("Ellipsis");  } -static PyTypeObject PyEllipsis_Type = { +PyTypeObject PyEllipsis_Type = {  	PyVarObject_HEAD_INIT(&PyType_Type, 0)  	"ellipsis",			/* tp_name */  	0,				/* tp_basicsize */ | 
