summaryrefslogtreecommitdiffstats
path: root/Python
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2020-02-07 01:24:48 (GMT)
committerGitHub <noreply@github.com>2020-02-07 01:24:48 (GMT)
commita102ed7d2f0e7e05438f14d5fb72ca0358602249 (patch)
treea5a3aca7a251c82d7b35c130cc913d6009baa18a /Python
parent38aaaaac805fa30870e2d093e52a900dddde3b34 (diff)
downloadcpython-a102ed7d2f0e7e05438f14d5fb72ca0358602249.zip
cpython-a102ed7d2f0e7e05438f14d5fb72ca0358602249.tar.gz
cpython-a102ed7d2f0e7e05438f14d5fb72ca0358602249.tar.bz2
bpo-39573: Use Py_TYPE() macro in Python and Include directories (GH-18391)
Replace direct access to PyObject.ob_type with Py_TYPE().
Diffstat (limited to 'Python')
-rw-r--r--Python/_warnings.c4
-rw-r--r--Python/bltinmodule.c16
-rw-r--r--Python/ceval.c14
-rw-r--r--Python/codecs.c2
-rw-r--r--Python/compile.c2
-rw-r--r--Python/formatter_unicode.c8
-rw-r--r--Python/getargs.c8
-rw-r--r--Python/marshal.c2
-rw-r--r--Python/sysmodule.c2
9 files changed, 29 insertions, 29 deletions
diff --git a/Python/_warnings.c b/Python/_warnings.c
index 602211c..9e8b52d 100644
--- a/Python/_warnings.c
+++ b/Python/_warnings.c
@@ -650,7 +650,7 @@ warn_explicit(PyObject *category, PyObject *message,
text = PyObject_Str(message);
if (text == NULL)
goto cleanup;
- category = (PyObject*)message->ob_type;
+ category = (PyObject*)Py_TYPE(message);
}
else {
text = message;
@@ -906,7 +906,7 @@ get_category(PyObject *message, PyObject *category)
return NULL;
if (rc == 1)
- category = (PyObject*)message->ob_type;
+ category = (PyObject*)Py_TYPE(message);
else if (category == NULL || category == Py_None)
category = PyExc_UserWarning;
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index cdb1eaa..980b810 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -170,7 +170,7 @@ builtin___build_class__(PyObject *self, PyObject *const *args, Py_ssize_t nargs,
/* else get the type of the first base */
else {
PyObject *base0 = PyTuple_GET_ITEM(bases, 0);
- meta = (PyObject *) (base0->ob_type);
+ meta = (PyObject *)Py_TYPE(base0);
}
Py_INCREF(meta);
isclass = 1; /* meta is really a class */
@@ -1002,13 +1002,13 @@ builtin_exec_impl(PyObject *module, PyObject *source, PyObject *globals,
if (!PyDict_Check(globals)) {
PyErr_Format(PyExc_TypeError, "exec() globals must be a dict, not %.100s",
- globals->ob_type->tp_name);
+ Py_TYPE(globals)->tp_name);
return NULL;
}
if (!PyMapping_Check(locals)) {
PyErr_Format(PyExc_TypeError,
"locals must be a mapping or None, not %.100s",
- locals->ob_type->tp_name);
+ Py_TYPE(locals)->tp_name);
return NULL;
}
if (_PyDict_GetItemIdWithError(globals, &PyId___builtins__) == NULL) {
@@ -1383,11 +1383,11 @@ builtin_next(PyObject *self, PyObject *const *args, Py_ssize_t nargs)
if (!PyIter_Check(it)) {
PyErr_Format(PyExc_TypeError,
"'%.200s' object is not an iterator",
- it->ob_type->tp_name);
+ Py_TYPE(it)->tp_name);
return NULL;
}
- res = (*it->ob_type->tp_iternext)(it);
+ res = (*Py_TYPE(it)->tp_iternext)(it);
if (res != NULL) {
return res;
} else if (nargs > 1) {
@@ -1788,7 +1788,7 @@ builtin_ord(PyObject *module, PyObject *c)
else {
PyErr_Format(PyExc_TypeError,
"ord() expected string of length 1, but " \
- "%.200s found", c->ob_type->tp_name);
+ "%.200s found", Py_TYPE(c)->tp_name);
return NULL;
}
@@ -1856,7 +1856,7 @@ builtin_print(PyObject *self, PyObject *const *args, Py_ssize_t nargs, PyObject
else if (sep && !PyUnicode_Check(sep)) {
PyErr_Format(PyExc_TypeError,
"sep must be None or a string, not %.200s",
- sep->ob_type->tp_name);
+ Py_TYPE(sep)->tp_name);
return NULL;
}
if (end == Py_None) {
@@ -1865,7 +1865,7 @@ builtin_print(PyObject *self, PyObject *const *args, Py_ssize_t nargs, PyObject
else if (end && !PyUnicode_Check(end)) {
PyErr_Format(PyExc_TypeError,
"end must be None or a string, not %.200s",
- end->ob_type->tp_name);
+ Py_TYPE(end)->tp_name);
return NULL;
}
diff --git a/Python/ceval.c b/Python/ceval.c
index 892d668..c36a38e 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -2633,7 +2633,7 @@ main_loop:
PyObject *none_val = _PyList_Extend((PyListObject *)list, iterable);
if (none_val == NULL) {
if (_PyErr_ExceptionMatches(tstate, PyExc_TypeError) &&
- (iterable->ob_type->tp_iter == NULL && !PySequence_Check(iterable)))
+ (Py_TYPE(iterable)->tp_iter == NULL && !PySequence_Check(iterable)))
{
_PyErr_Clear(tstate);
_PyErr_Format(tstate, PyExc_TypeError,
@@ -2803,7 +2803,7 @@ main_loop:
if (_PyErr_ExceptionMatches(tstate, PyExc_AttributeError)) {
_PyErr_Format(tstate, PyExc_TypeError,
"'%.200s' object is not a mapping",
- update->ob_type->tp_name);
+ Py_TYPE(update)->tp_name);
}
Py_DECREF(update);
goto error;
@@ -3158,7 +3158,7 @@ main_loop:
PREDICTED(FOR_ITER);
/* before: [iter]; after: [iter, iter()] *or* [] */
PyObject *iter = TOP();
- PyObject *next = (*iter->ob_type->tp_iternext)(iter);
+ PyObject *next = (*Py_TYPE(iter)->tp_iternext)(iter);
if (next != NULL) {
PUSH(next);
PREDICT(STORE_FAST);
@@ -4369,11 +4369,11 @@ unpack_iterable(PyThreadState *tstate, PyObject *v,
it = PyObject_GetIter(v);
if (it == NULL) {
if (_PyErr_ExceptionMatches(tstate, PyExc_TypeError) &&
- v->ob_type->tp_iter == NULL && !PySequence_Check(v))
+ Py_TYPE(v)->tp_iter == NULL && !PySequence_Check(v))
{
_PyErr_Format(tstate, PyExc_TypeError,
"cannot unpack non-iterable %.200s object",
- v->ob_type->tp_name);
+ Py_TYPE(v)->tp_name);
}
return 0;
}
@@ -4790,7 +4790,7 @@ PyEval_GetFuncName(PyObject *func)
else if (PyCFunction_Check(func))
return ((PyCFunctionObject*)func)->m_ml->ml_name;
else
- return func->ob_type->tp_name;
+ return Py_TYPE(func)->tp_name;
}
const char *
@@ -5197,7 +5197,7 @@ import_all_from(PyThreadState *tstate, PyObject *locals, PyObject *v)
static int
check_args_iterable(PyThreadState *tstate, PyObject *func, PyObject *args)
{
- if (args->ob_type->tp_iter == NULL && !PySequence_Check(args)) {
+ if (Py_TYPE(args)->tp_iter == NULL && !PySequence_Check(args)) {
/* check_args_iterable() may be called with a live exception:
* clear it to prevent calling _PyObject_FunctionStr() with an
* exception set. */
diff --git a/Python/codecs.c b/Python/codecs.c
index 10d7696..ee2758c 100644
--- a/Python/codecs.c
+++ b/Python/codecs.c
@@ -658,7 +658,7 @@ static void wrong_exception_type(PyObject *exc)
{
PyErr_Format(PyExc_TypeError,
"don't know how to handle %.200s in error callback",
- exc->ob_type->tp_name);
+ Py_TYPE(exc)->tp_name);
}
PyObject *PyCodec_StrictErrors(PyObject *exc)
diff --git a/Python/compile.c b/Python/compile.c
index 6776df5..04b8fe4 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -3988,7 +3988,7 @@ infer_type(expr_ty e)
case FormattedValue_kind:
return &PyUnicode_Type;
case Constant_kind:
- return e->v.Constant.value->ob_type;
+ return Py_TYPE(e->v.Constant.value);
default:
return NULL;
}
diff --git a/Python/formatter_unicode.c b/Python/formatter_unicode.c
index 7c4ecf0..41a2478 100644
--- a/Python/formatter_unicode.c
+++ b/Python/formatter_unicode.c
@@ -1447,7 +1447,7 @@ _PyUnicode_FormatAdvancedWriter(_PyUnicodeWriter *writer,
return format_string_internal(obj, &format, writer);
default:
/* unknown */
- unknown_presentation_type(format.type, obj->ob_type->tp_name);
+ unknown_presentation_type(format.type, Py_TYPE(obj)->tp_name);
return -1;
}
}
@@ -1505,7 +1505,7 @@ _PyLong_FormatAdvancedWriter(_PyUnicodeWriter *writer,
default:
/* unknown */
- unknown_presentation_type(format.type, obj->ob_type->tp_name);
+ unknown_presentation_type(format.type, Py_TYPE(obj)->tp_name);
goto done;
}
@@ -1549,7 +1549,7 @@ _PyFloat_FormatAdvancedWriter(_PyUnicodeWriter *writer,
default:
/* unknown */
- unknown_presentation_type(format.type, obj->ob_type->tp_name);
+ unknown_presentation_type(format.type, Py_TYPE(obj)->tp_name);
return -1;
}
}
@@ -1587,7 +1587,7 @@ _PyComplex_FormatAdvancedWriter(_PyUnicodeWriter *writer,
default:
/* unknown */
- unknown_presentation_type(format.type, obj->ob_type->tp_name);
+ unknown_presentation_type(format.type, Py_TYPE(obj)->tp_name);
return -1;
}
}
diff --git a/Python/getargs.c b/Python/getargs.c
index d5caf47..d644aea 100644
--- a/Python/getargs.c
+++ b/Python/getargs.c
@@ -531,7 +531,7 @@ converttuple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
toplevel ? "expected %d arguments, not %.50s" :
"must be %d-item sequence, not %.50s",
n,
- arg == Py_None ? "None" : arg->ob_type->tp_name);
+ arg == Py_None ? "None" : Py_TYPE(arg)->tp_name);
return msgbuf;
}
@@ -621,7 +621,7 @@ _PyArg_BadArgument(const char *fname, const char *displayname,
PyErr_Format(PyExc_TypeError,
"%.200s() %.200s must be %.50s, not %.50s",
fname, displayname, expected,
- arg == Py_None ? "None" : arg->ob_type->tp_name);
+ arg == Py_None ? "None" : Py_TYPE(arg)->tp_name);
}
static const char *
@@ -636,7 +636,7 @@ converterr(const char *expected, PyObject *arg, char *msgbuf, size_t bufsize)
else {
PyOS_snprintf(msgbuf, bufsize,
"must be %.50s, not %.50s", expected,
- arg == Py_None ? "None" : arg->ob_type->tp_name);
+ arg == Py_None ? "None" : Py_TYPE(arg)->tp_name);
}
return msgbuf;
}
@@ -1331,7 +1331,7 @@ convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
type = va_arg(*p_va, PyTypeObject*);
p = va_arg(*p_va, PyObject **);
format++;
- if (PyType_IsSubtype(arg->ob_type, type))
+ if (PyType_IsSubtype(Py_TYPE(arg), type))
*p = arg;
else
return converterr(type->tp_name, arg, msgbuf, bufsize);
diff --git a/Python/marshal.c b/Python/marshal.c
index ec6b3da..8d441a4 100644
--- a/Python/marshal.c
+++ b/Python/marshal.c
@@ -1696,7 +1696,7 @@ marshal_load(PyObject *module, PyObject *file)
if (!PyBytes_Check(data)) {
PyErr_Format(PyExc_TypeError,
"file.read() returned not bytes but %.100s",
- data->ob_type->tp_name);
+ Py_TYPE(data)->tp_name);
result = NULL;
}
else {
diff --git a/Python/sysmodule.c b/Python/sysmodule.c
index d8d1874..707a08e 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -840,7 +840,7 @@ sys_intern_impl(PyObject *module, PyObject *s)
}
else {
_PyErr_Format(tstate, PyExc_TypeError,
- "can't intern %.400s", s->ob_type->tp_name);
+ "can't intern %.400s", Py_TYPE(s)->tp_name);
return NULL;
}
}