summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2009-04-20 02:09:13 (GMT)
committerBenjamin Peterson <benjamin@python.org>2009-04-20 02:09:13 (GMT)
commitfd838e6c8462d5feecf949a271419d13bbc0d32c (patch)
tree30c70d88ec7f51f9488d34814ea6a53f6f549b72
parentea835e7a875b7964d1c9b6875f836948ede48969 (diff)
downloadcpython-fd838e6c8462d5feecf949a271419d13bbc0d32c.zip
cpython-fd838e6c8462d5feecf949a271419d13bbc0d32c.tar.gz
cpython-fd838e6c8462d5feecf949a271419d13bbc0d32c.tar.bz2
Merged revisions 71734,71738-71739 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r71734 | benjamin.peterson | 2009-04-18 17:15:26 -0500 (Sat, 18 Apr 2009) | 1 line many more types to initialize (I had to expose some of them) ........ r71738 | benjamin.peterson | 2009-04-18 21:32:42 -0500 (Sat, 18 Apr 2009) | 1 line initialize weakref some weakref types ........ r71739 | benjamin.peterson | 2009-04-18 21:40:43 -0500 (Sat, 18 Apr 2009) | 1 line make errors consistent ........
-rw-r--r--Include/descrobject.h2
-rw-r--r--Include/sliceobject.h1
-rw-r--r--Objects/object.c50
-rw-r--r--Objects/sliceobject.c2
4 files changed, 48 insertions, 7 deletions
diff --git a/Include/descrobject.h b/Include/descrobject.h
index f06b421..15041ff 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 dfc30c7..8ab62dd 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 1975f14..bf347b9 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 ed3f520..9acd7f7 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 */